一种DSP通信接口的设计和实现
随着科学技术的快速发展,过程控制领域在过去的两个世纪里发生了巨大的变革。微处理器的普遍应用和计算机可靠性的提高,使分布式控制系统得到了广泛的应用,由多台计算机和一些智能仪表以及智能部件实现的分布式控制是其最主要的特征,而数字传输信号也在逐步取代模拟传输信号。随着微处理器的快速发展和广泛的应用,数字通信网络延伸到工业过程现场成为可能,产生了以微处理器为核心,使用集成电路代替常规电子线路,实施信息采集、显示、处理、传输以及优化控制等功能的智能设备。设备之间彼此通信、控制,在精度、可操作性以及可靠性、可维护性等都有更高的要求。由此,导致了现场总线的产生。
现场总线是指以工厂内的测量和控制机器间的数字通讯为主的网络,也称现场网络。也就是将传感器、各种操作终端和控制器间的通讯及控制器之间的通讯进行特化的网络。原来这些机器间的主体配线是ON/OFF、接点信号和模拟信号,通过通讯的数字化,使时间分割、多重化、多点化成为可能,从而实现高性能化、高可靠化、保养简便化、节省配线(配线的共享)。
TI公司的TMS320LF2407型DSP微控制器以其处理能力强,外设功能模块集成度高及存储器容量大等特点广泛应用于数字化控制与通信领域。CAN总线控制器与TMS320LF2407微控制器连接,可以实现CAN总线的通信。TMS320LF2407微控制器内嵌的异步串行口(SCI)支持CPU与其它使用标准格式的异步外设之间的数字通讯,通过RS-485接口可以方便地进行DSP之间或DSP与PC机之间的异步串行通信。
RS-485是一种多发送器的接口标准,它扩展了RS-422A的性能,允许双绞线上一个发送器驱动32个负载设备,负载设备可以是被动发送器、接收器或收发器,RS-485最大传输距离为1200m,最大传送速率可达10Mb/s。因此,RS-485在远程通信和多机总线系统中具有很大的吸引力,在实际设计中得到了广泛应用。
本设计以PC机为主机,以TMS320LF2407为从机,实现了主从机之间的基于RS-485的串行通信,以及TMS320LF2407与CAN总线的通信。其中PC机与TMS320LF2407的RS-485通信,采用MAXIM公司生产的MAX48X/49X系列收发器芯片,完成RS-485标准接口通信。由于PC机上提供的是标准的RS-232C串行接口,因此,需要RS-232C/RS-485转换器进行接口转换。如图1所示。应用TMS320LF2407内嵌的CAN模块和总线接口芯片PCA82C250,实现了TMS320LF2407与CAN总线的串行通信。
CAN 是Controller Area Network 的缩写(以下称为CAN),是ISO国际标准化的串行通信协议。在当前的汽车产业中,出于对安全性、舒适性、方便性、低公害、低成本的要求,各种各样的电子控制系统被开发了出来。由于这些系统之间通信所用的数据类型及对可靠性的要求不尽相同,由多条总线构成的情况很多,线束的数量也随之增加。为适应"减少线束的数量"、"通过多个LAN,进行大量数据的高速通信"的需要,1986 年德国电气商博世公司开发出面向汽车的CAN 通信协议。此后,CAN 通过ISO11898 及ISO11519 进行了标准化,现在在欧洲已是汽车网络的标准协议。
2.TMS320LF2407的RS-485通信设计
TMS320F2407有较强的串行通信能力,设计到的控制类寄存器较多,这使系统设计比较灵活。设计时,首先对控制类寄存器进行初始化,包括数据格式、中断使能、中断优先级、波特率等参数的设置。初始化完成以后,就可以发送和接收数据了。如果要发送数据,只要把数据写入SCITXBUF即可,由串行通信SCI模块自动完成发送数据。如果要接收数据,只要把SCIRXBUF的内容读出即可(从引脚SCIRXD/IO移位来的信息由串行通信SCI模块本身自动去掉起始位、停止位、校验位,并将数据放到SCIRXBUF中)。代码如下:
初始化TMS320LF2407的SCI模块
3.上位机PC串行通信软件设计
串行通信是指 使用一条数据线,将数据一位一位地依次传输,每一位数据占据一个固定的时间长度。其只需要少数几条线就可以在系统间交换信息,特别使用于计算机与计算机、计算机与外设之间的远距离通信。串行通信是指计算机主机与外设之间以及主机系统与主机系统之间数据的串行传送。使用串口通信时,发送和接收到的每一个字符实际上都是一次一位的传送的,每一位为1或者为0.
上位机PC采用高级语言VB的通信控件,实现串行通信。在VB5.0及以上版本中,提供了一个名为MSComm的通信控件,它为应用程序提供基本的串行通信功能,可以通过串行接口发送和接收数据。
PC串行口发送器输出端和接收器输入端的数据格式为帧信息格式,与TMS320LF2407的SCI格式相同。通信时,双方预先约定通信数据传输格
- 在采用FPGA设计DSP系统中仿真的重要性 (06-21)
- 基于 DSP Builder的FIR滤波器的设计与实现(06-21)
- 达芬奇数字媒体片上系统的架构和Linux启动过程(06-02)
- FPGA的DSP性能揭秘(06-16)
- 用CPLD实现DSP与PLX9054之间的连接(07-23)
- DSP+FPGA结构在雷达模拟系统中的应用(01-02)