·上一文章:基于PXA270平台的实名管理系统设计与实现
·下一文章:基于TMS320F2812便携式动态信号分析仪
5 系统软件设计
5.1 通信协议
两个设备实现通信,首先规定传输数据的协议。根据需求,主机应向从机发送计算数据以及配置信息,从机向主机发送报警状态以及应答,以告知发送方消息是否正确接收,如图3所示。
DSP与AVR单片机之间的通信协议采用内部制定的SPI通信协议。表1列出了TMS320F2812与ATmegal28之间通信的3种数据格式,接收方以起始码辨别帧的类别。参数类型代表不同参数,如“0x01”表示设置时间。如:3D 01 0008 0A 0A 00 11 14 00 A2 FC,因为0x3D是“=”的ASCII码,则该帧表示一个数据帧,参数类型为0x01,可知这是一个设置时间的数据帧,最后2位是CRC校验码,中间剩余的序列"00 08 0A 0A 00 11 14 00"为参数,即时间,设置时间为08年10月10日17点20分O秒,使参数为4xN字节是为了保持与上一代产品相兼容,当从机接收后并校验正确后,将设置好时间并返回表示正确的应答帧。
5.2 SPI初始化
TMS320F2812的初始化包括:配置I/O端口为具有SPI特殊功能的接口,选定主从机,数据传送模式、波特率和发送接收数据长度,所有设置都是通过设计相应的SPI控制寄存器实现。
ATmegal28的初始化与TMS320F12812相似,不同的是,由于ATmegal28是从机,因此不用选择波特率,同时应该注意的是,数据传送模式应保持与主机一致。数据传送模式有4种,是由设置控制寄存器里的CPOL和CPHA来设定的,如表2所示。