TMS320LF2407 DSP控制器的串行通信设计_DSP论文
ti公司的tms320lf2407型dsp微控制器内嵌的异步串行口(sci)支持cpu与其它使用标准格式的异步外设之间的数字通讯,通过rs-232接口可以方便地进行dsp之间或与pc机之间的异步通信。而串行外设接口(spi)是一个高速同步串行输入/输出(i/o)端口,常用于dsp控制器和外部器件或其它控制器间的通讯。本设计正是通过tms320lf2407所带有的sci模块进行两台dsp的数据传输通信。同时还利用了dsp2407的spi模块和i/o口作了显示以及键盘扩展电路,以便能实时监控数据的收发。此实例电路结构简单易懂,非常适合刚接触dsp的初学者使用,具有很好的参考价值。
二 硬件原理设计
此设计主要包含两大模块:一是dsp之间的串行通讯模块:二是dsp与显示器及键盘的串行显示接口模块。以下分别详细介绍每一模块的硬件原理及软件设计。
2.1 spi外设显示接口模块:spi是一个高速同步串行输入/输出端口,它允许一个具有可编程串行外设接口长度(1到16位)的串行位流,以可编程的位传送速率从设备移入或移出。本设计利用spi口外接4片74ls164作为4位led显示器的静态显示接口,把lf2407的spisimo引脚作为数据输出线,spiclk引脚作为移位时钟脉冲。74ls164为ttl单向8位移位寄存器,可实现串行输入,并行输出。其中a,b(第1、2脚)为串行数据输入端,两个引脚按逻辑与运算规律输入信号,用同一个输入信号时可并接。clk(第8脚)为时钟输入端,可连接到串行口的spiclk端。
2.2 串行通讯接口(sci)模块:
sci模块的接收器和发送器是双缓冲的,每一个都有它单独的使能和中断标志位。两者可以单独工作,或者在全双工方式下同时工作。sci使用奇偶校验,超时,帧出错监测确保数据的准确传输。sci 的两个外部引脚scitxd(数据发送端)和 scirxd(数据接收端)在不用来通讯时可作普通的i/o。sci有一个16位的波特率选择寄存器,在40m的晶振下,可以设定从76bps~1875kbps不同的波特率。图2是tms320lf2407的串行通讯接口电路。该电路采用了符合rs-232标准的驱动芯片max232进行串行通讯。max232芯片功耗低,集成度高,+5v供电,具有两个接收和发送通道。由于tms320lf2407采用 +3.3v供电,所以在max232 与tms320lf2407之间必须加电平转换电路。本设计系统采用了一个二极管(1n4007)和三个电阻进行电平转换。整个接口电路简单,可靠性高。
图2 tms320lf2407的串行通讯接口电路
三 系统软件及通讯协议设计
软件及通讯协议设计主要包括了dsp系统初始化,spi初始化,sci初始化,sci发送接收数据,spi显示数据五大部分。
3.1 dsp系统初始化
此部分程序设计主要是为了使dsp进入正常的工作状态。其主要的设计步骤如下图示。
3.2 spi与sci初始化
tms320lf2407的spi和sci初始化包括以下几大部分:把相对应的i/o口配置成具有spi,sci的特殊功能;时钟模式的选定;波特率选择;发送接收数据长度选择;内部相对应的时钟使能。所有设置都是通过相对应的spi,sci控制寄存器实现的。具体步骤如下图示。
3.3 sci发送接收数据及spi显示: 通讯协议采用异步串行通讯方式,波特率为9600bps,数据包括8位数据位、无、奇偶校验位、1个低电平起始位和1个高电平停止位。采用地址位多处理器模式。通讯软件设计采用查询方式,即查询到相应标志位满足条件时,就发送一个数据并送往spi模块显示。具体设计步骤如图5所示。
四 结束语
本应用实例已通过调试,若要实现dsp与pc机之间的通信,只需要在pc机上使用mscomm控件,使端口传输和接收数据,方便地为应用程序提供串行通信功能。通过实际运行表明,利用tms320lf2407的spi,sci模块实现dsp之间或与pc机的通信,与传统的c51单片机相比,其电路简单,设置灵活,运行速度更快,性能可靠稳定。