新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于CAN总线的单片机与数字信号处理器通信系统设计

基于CAN总线的单片机与数字信号处理器通信系统设计

作者:时间:2009-08-24来源:网络收藏

3 软件
组成的进行数据时,应约定通信协议,如帧格式、波特率、标识符等。各节点软件均包括数据发送和接收子程序以及控制器初始化子程序。这里着重研究控制器的初始化。
3.1 通信软件
单片机CAN通信系统软件设计主要是指SJA1000总线控制器的初始化程序设计。
CAN总线控制器初始化程序主要是通过对SJA1000寄存器写入相应的控制字,从而确定SJA1000的工作方式。SJA1000需要初始化的寄存器有:模式寄存器MODE、时钟分频寄存器CDR、接收代码寄存器ACR、接收屏蔽寄存器AMR、中断使能寄存器IER、总线定时寄存器BTR、输出控制寄存器OCR等。其中,总线定时寄存器BTR的值决定CAN通信波特率,而波特率正确与否,是与单片机实现CAN通信的关键。因为这些寄存器仅能在SJA1000复位期间进行写访问,因此在对这些寄存器初始化之前,必须确保系统进入复位状态,在初始化后,须清除复位请求位,使SJA1000返回正常运行状态,其初始化子程序如下:


3.2 数字信号处理器通信系统软件设计
在使用数字信号处理器CAN控制器前必须对它的一些内部寄存器进行设置,如对位定时器的设置及对邮箱进行初始化。位定时器主要由CANBCR1和CANBCR2两个寄存器组成,配置对位定时器也就是设置这两个寄存器,其值决定了CcAN控制器的通信波特率、同步跳转宽度、采样次数和重同步方式等。对邮箱初始化主要是对邮箱进行配置,设置邮箱的标识符以及接收滤波器的设置等。 CAN控制器初始化子程序如下:

4 结 语
单片机与数字信号处理器CAN总线通信系统实验过程中,发送端采用查询方式,接收端采用中断方式,利用键盘改变发送数据,接收端利用液晶显示器实时显示接收数据。反复试验表明,该系统工作稳定性较高;该系统硬件电路或软件程序稍加改动可用于单片机与数字信号处理器或数字信号处理器与数字信号处理器等双 CPU或多CPU测控系统中,且应用前景广阔。


上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭