TMS320F240与外围器件的SPI接口方案
扫描二维码
随时随地手机看文章
1 前言
数字信号处理器的诞生,揭开了PC通信与消费电子市场的新纪元。笔者这次重点介绍在研发过程中涉及到的TMS320F240与外围器件的SPI接口设计。
2 结构和特点
TMS320F240是TI公司在单一芯片上集成一个DSP内核和各种外设器件,从而制造出面向各种工程应用的DSP方案。
TMS320C240和TMS320F240作为第一个数字电机控制器的专用DSP,TMS320C240和TMS320F240确立了单片数字电机控制器的标准,可支持电机的转向、指令的产生、控制算法的处理、数据的交流和系统控制监控等功能。特性如下:
●采用TMS320C2XX CPU内核:
有32位中央逻辑运算单元;
内含32位累加器;
16位×16位并行乘法器;
8个16位辅助寄存器;
●具有50ns指令周期;
●含544字节16位在片数据/程序双向RAM;
●带有16k字节Flash EEPROM:
●双向10位串行数模转换器的采样速率可达166kHz;
●具有28个独立可编程、复用I/O脚;
●有串行外设接口和SCI接口;
●自带强大的事件管理器;
●带有实时中断的看门狗电路;
●支持硬件JTAG硬件仿真。
3 SPI接口
SPI主要用于与各种外围器件进行通讯,这些外围器件可以是简单的TTL移位寄存器或是复杂的LCD显示驱动器或A/D转换子系统。SPI接口很容易与许多厂家的各种外围器件直接相连。在多主机系统时,SPI也可用于同MCU之间的通讯。
当MCU片内I/O功能或存储器不能满足需要时,可用SPI与各种外围器件相连以扩展I/O功能。SPI子系统可以在软件控制下构成简单或复杂的系统,如下所示:
●一个主MCU和几个从MCU;
●几个MCU互连,构成多主机系统;
●一个主MCU和一个或多个从外围器件。
多数应用场合用一个MCU作为主机。这些外围器件用来接收或提供传输数据,只有主机发出命令后,它们才能从主机接收数据或向主机发送数据。但要注意两点:第一,SPI与串行外围器件相连时,SPI必须置为主机;第二,在使用SPI传送数据之前必须进行初始化。
4 接口设计
TMS320F240的SPI接口是一个高速的同步串行I/O口,它允许1~8位的串行比特流以特定的传输速率移进移出芯片。通常情况下,它主要用于DSP控制器和外围设备之间的通信或两个DSP之间的通信。其典型应用包括通过移位寄存器、ADC等进行外部I/O或外围设备扩展。
该SPI接口有主、从两种工作模式,125个可编程的波特率,接收或发送操作通过中断或查询方式来完成。整个工作状态通过设置10个控制寄存器来完成。
首先应设置相应的控制寄存器,并分别将这四个管脚设置为串行时钟、使能、接收和发送脚。而后将SPISTE脚置为高。最后,通过控制寄存器依次设置SPI的工作模式、传输速率、数据位数和中断标志位,并将其发送、接收管脚与相应外围设备的输入、输出脚相连。
在设计过程中应注意,TMS320F240的一个主要特点就是通过各种各样的控制寄存器来实现对各管脚、各单元工作模式和工作过程的控制,所以设计的每一步都要充分考虑对其相应控制寄存器的设置和对寄存器状态的影响。否则,整个系统很难进行正常的工作或按设计的要求来工作。
5 应用举例
应用SPI口实现对外部串行A/D的控制,其中的串行A/D采用MAX186,它是一个包含有8个通道模拟开关、宽带采样/保持器和串行接口的具有较高转换速度和极低功耗的12位数据采集芯片。其4线串行接口可直接连接SPI、QSPI、MicroWire等器件而无需外部逻辑,串行输出允许直接接TMS320系旬的数字信号处理器。在自动监测、医疗仪器和高精度控制过程中有较为广泛的应用。MAX186与TMS320F240的接口设计如图2 所示,流程为:
(1)设置F240的SPI口为工作状态,并将串行时钟信号SPICLK与MAX186的SCLK脚相连。
(2)由F240置MAX186的片选端为低。
(3)F240通过SPISOMI发送控制字初始化MAX186,并设置转换模式,开始数据转换。
(4)数据转换完成,MAX186通过SSTRB通知F240准备接收数据。
(5)F240通过SPISIMO在SCLK的上跳沿依次接收12位转换结果。
(6)接收完毕,置MAX186片选端为高,等下一次转换。
6 结束语
同步串行外围接口SPI使得DSP可方便地与各种外围设备进行通信,从而使DSP在更多领域得到更广泛的应用,相信DSP在未来必将踏入更多领域。