单片机SPI通信中数据流的同步问题研究
3 实例
现在以数字信号处理器TMS320LF2407A和单片机MSP430F135为例,说明如何确保SPI通信中数据流的同步。这里采用三线SPI模式,TMS320LF2407A设置为主机,MSP430F135设置为从机;双方的时钟极性和相位都设置为无延时的上升沿。TMS320LF2407A的主频为40 MHz,采用定时发送/接收数据的方式工作,每间隔800μs发送一个字节,波特率为200 kHz。这样设置的原因是,MSP430F135的主频为8 MHz,片内的RAM只有512字节,没有足够的RAM用于保存中间数据,每接收一个字节就得进行一次处理,所以必须留有足够的时间给MSP430F135进行数据的处理。每一轮发送132字节,由4个引导字符0xFF加上128字节的数据组成。MSP430F135采用中断的方式接收/发送数据。
以下是用汇编语言编写的TMS320LF2407A的SPI通信初始化子程序:
下面是用C语言编写的MSP430F135的SPI通信初始化子程序:
在MSP430F135的接收数据处理程序中还包含了防止数据流发生偏移的措施,实现方法与前文所述相同。图2是接收数据处理程序的流程图。
上述程序是电镀用开关电源控制程序的一部分。DSP控制器TMS320LF2407A负责主电路的控制;单片机MSP430F135作为辅助控制器,负责键盘和液晶显示器的控制。两个微控制器之间通过SPI通信交换信息。实际应用表明,采用这种方法进行SPI通信是可靠的。
4 结论
SPI通信具有硬件连接简单、使用方便等优点。采取硬件和软件相结合的措施,可以确保SPI通信中数据流的同步,实现可靠通信。通过电镀用开关电源中数字信号处理器TMS320LF2407A和MSP430F135单片机之间SPI通信的实例,验证了文中提出的三线模式SPI通信中,防止和纠正比特位发生偏移的方法的有效性。
- 信号完整性中的反射问题原理(12-02)
- F频段干扰问题的几种解决方案(09-23)
- 电磁兼容技术及应用实例详解:工控机的抗扰问题(08-14)
- 智慧城市建设需直面“三个问题”(12-16)
- 选择软件定义网络SDN须注意的12个问题(07-03)
- 关于WLAN解决方案的10个问题(02-04)