![]() |
CAN总线异常处理中断程序
CAN控制器根据CAN2.0规范来对CAN总线上发生的错误进行处理。
在总线发生严重故障的情况下,CAN节点有可能脱离总线,此时以下寄存器被置位:CANSR的BS位、CANIR的BEI和EI位以及CANMOD的RM位。软件下一步必须置零RM位。发送错误计数器将递减计数(11个连续的隐性位)的第128个事件,总线释放条件软件可通过读取Tx错误计数器对计数器递减计数的情况进行监测。其它一些不是很严重的错误一般不会引起总线错误,即使不处理也不会产生什么致命错误,如果为了提高中断处理速度,可根据实际情况裁剪中断服务程序。
结束语
本设计采用ARM7TDMI内核的嵌入式微控制器作为节点的主控CPU,其丰富的片内资源,特别是内嵌CAN控制器简化了节点的硬件电路。对比与SJA1000的异同点本文详细分析了CAN控制器的软件设计方法。该设计作为CAN总线节点的一个模块,能够和仪器仪表等设备相结合,使其具有网络通信的能力,有着广阔的应用前景。
1.部分资源来自网络,经ET电子归类整理,旨在服务电子爱好者并无商业目的,不保证正确性与完整性.
2.如果您觉得本站资源对您有用,请告知您的好友,用搜索引擎搜"ET电子"即可.


