1.CAN2.0A标准中一个报文有多少字节?其中包含哪些内容?2.11位标识符可起到什么作用?3.对CAN总线通信控制器SJA1000初始化时要初始化哪些寄存器?4.如果某个CAN节点希望接收所有节点... 1.CAN2.0A标准中一个报文有多少字节?其中包含哪些内容?
2.11位标识符可起到什么作用?
3.对CAN总线通信控制器SJA1000初始化时要初始化哪些寄存器?
4.如果某个CAN节点希望接收所有节点的报文,它的屏蔽寄存器如何设置?
5.如果某个CAN节点只接收所有高8位标识符为9的报文,它的接收码寄存器和屏蔽寄存器如何设置?
6.若CAN通信控制器是用16M晶振,CAN总线的波特率为125kbps,对BTR0和BTR1进行设置。
ZD回答后三个问题,万分感谢~
1.标准格式数据帧包括:
1位帧起始位,11位ID位+1IRQ位,8个控制位,8字节的数据位,2字节的CRC校验位,7个终止位(记得不一定全面)
同时有码流控制功能,即位填充功能。当出现4个相同电平的位时,会在中间插入1个不同的位。
码流填充区域包括从起始位一直到数据位结束。
具体细节可以参见《现场总线CAN原理与应用》一书,北京航空航天大学出版社。
2.11位标识符与屏蔽寄存器和代码寄存器组成了CAN总线的滤波模式。
3.初始化总线定时寄存器,控制寄存器,输出寄存器,中断寄存器。
4.屏蔽寄存器全部为0xFF,使滤波位“无关”
5. 高8位为9,即为0000_1001,CODE0= 0000_1001 MASK0 = 1111_0110 (二进制表示)
6. 这个我以前算过,《现场总线CAN原理与应用》一书中有详细介绍,现在书没有在手边,印象里是
BTR0 = 0x43;
BTR1 = 0x1c;