使用TM4C123GH6PM芯片做有关CAN总线的应用开发,普通的收发功能都可以实现没问题,但考虑到系统可靠性的问题,想试试模拟出CAN总线上可能出现的故障模式。首先试的是CAN总线突然断开的问题,也就是TM4C单片机作为一个节点与总线突然断开了,我用了USB转CAN转换器,首先让单片机一直周期性地发送数据,我电脑通过转换器能一直接收到,然后我突然拔掉USB线。这时候通过CCS观察寄存器的值,CANSTS寄存器 是0x00000060 ,而CANERR寄存器是0x00000080.也就是说CAN模块处于被动错误状态 ,且是发送错误计数器到了128就不变了。但是我觉得CAN模块应该一直出错,并且到busoff的状态啊,但计数器到了128就不再增加了 ,BOFF位也是0.而且LEC位并没有给出上一个错误的模式,所以感到很费解。
|