基于基于DSP的的CAN总线系统设计与实现总线系统设计与实现
摘要:介绍了基于DSP的CAN控制器的设计及应用方法,利用该方法可以在波特率高达lMb/s的条件下稳定、
可靠地传输数据,而且延迟时间很少。实验证明,利用TMS320F2812内嵌的CAN模块来构成的硬件电路和软件
设计十分简单实用。 0 引言 eCAN模块是一种片上增强型控制器,其性能较之已有的DSP内嵌CAN控
制器有较大的提高,而且数据传输更加灵活方便,数据量更大、可靠性更高、功能更加完备。随着
TMS320F2812的大量推广使用,基于DSP的CAN总线通信方式将得到广泛的应用。 1 eCAN模块的增强特
性 eCAN模块是TI公司的新一代32位CAN控制器,它完全兼容C
摘要:介绍了基于DSP的CAN控制器的设计及应用方法,利用该方法可以在波特率高达lMb/s的条件下稳定、可靠地传
输数据,而且延迟时间很少。实验证明,利用TMS320F2812内嵌的CAN模块来构成的硬件电路和软件设计十分简单实用。
0 引言
eCAN模块是一种片上增强型控制器,其性能较之已有的DSP内嵌CAN控制器有较大的提高,而且数据传输更加灵活方
便,数据量更大、可靠性更高、功能更加完备。随着TMS320F2812的大量推广使用,基于DSP的CAN总线通信方式将得到广
泛的应用。
1 eCAN模块的增强特性
eCAN模块是TI公司的新一代32位CAN控制器,它完全兼容CAN2.0B协议,可以在有干扰的环境里使用上述协议与其它
控制器串行通信。该模块除具有一般DSP内嵌CAN控制器的所有功能外,与TMS320F2812系列DSP的CAN模块相比,它还主
要具有如下一些增强特性:
(1)增加了邮箱数量,并且所有邮箱都具有独立的接收屏蔽寄存器。TMS320F2812有多达32个邮箱,其所占用的512字节
RAM都可以配置为发送或接收邮箱,且都有一个可编程的接收屏蔽寄存器。因而其数据传输更加方便灵活、信息量大大增
加;
(2)eCAN是一个32位的CAN控制器。其控制寄存器的状态寄存器必须以32位方式访问,而接收屏蔽、时间标识寄存器、
超时寄存器和邮箱所在的CAN范围则可以以8位、16位和32位方式访问;
(3)时间标识。eCAN模块应用一个全速运行的32位定时器(LNT)来获得接收或者发送一个信息(有效的CAN数据帧)的时
间。当一个接收信息被保存或被发送时,定时器的内容将写入到相应邮箱的时间标识寄存器(MOTS)里。这样就可获得接收或
发送一个信息的时间。当邮箱成功发送或接收一个信息时,LNT寄存器被清除。所以可以通过使用邮箱来实现网络的全局时间
同步;
(4)超时功能。为了确定所有的信息都能在预定的时间里送出或接收,每个邮箱都有它自己的超时寄存器(MOTS)。如果一
个信息没有在超时寄存器设定的时间内完成发送或接收,其超时状态寄存器里将设置一个标志位,并据此判断是否超时。
以上这些增强特性使得TMS320F2812在进行CAN通信时,其数据传输更加方便灵活、数据量更大、功能更完备。
2 应用设计
针对TI公司的TMS320F2812内嵌的eCAN模块的方便性和实用性,可用TMS320F2812微控制器组成一个CAN总线网络来
进行实时数据收发。其中CAN驱动器使用TI公司的N65HVD230D。此方案可扩展性强,功能强大。若要增加节点个数,只需
要在CAN总线上挂接带有CAN模块的控制器即可。
在TM320F2812的eCAN模块与USB-CAN模块之间进行通信时,上位机可选用派恩公司的USB-CAN模块,其调试界面为
PCANView。这里将eCAN的邮箱0配置成发送邮箱,邮箱5配置成发送邮箱,并采用扩展信息帧格式。发送采用查询方式,接
收用中断方式,同时可采用DsP将接收的数据转发回上位机,并对接收和发送的数据进行错误计数。图1所示为采用上位机设
置端口、波特率等参数,并通过USB-CAN模块与下位机通信的调试界面图,它可用来检验TM320F2812的CAN总线通信是否
正常。