在编写CAN总线通讯程序时,主要编写函数由初始化函数,发送函数和接收函数组成。
其中发送函数一般写为主动发送函数,接收函数一般采用中断接收。下面就简单介绍一下三个函数的编写。
1 SJA1000寄存器初始化配置顺序<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
(1)进入复位模式,进行配置
(2)配置时钟分频寄存器,决定Peil模式还是Basic模式。
(3)配置总线定时寄存器,确定波特率。
(4)配置中断使能寄存器,决定使用那几个中断
(5)配置输出控制寄存器
(6)配置验收码和屏蔽码,决定接收哪一类节点的数据
(7)退出复位模式,进入正常工作模式。
2 发送数据顺序
(1)查询状态寄存器,判断是否正在接收,是否正在发送,是否数据缓冲区被锁。
(2)配置发送缓冲区。
(3)配置命令寄存器,启动发送。
3 接收数据顺序
(1)采用中断接收,关CPU中断。
(2)判断是不是接收中断。
(3)判断是远程帧还是数据帧
(4)读取数据
(5)开中断
用户377235 2013-9-26 16:45