首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

[讨论]9S12的MSCAN如何应付“总线错误”及“离线”

[讨论]9S12的MSCAN如何应付“总线错误”及“离线”

通过最近一系列对MSCAN的测试,又发现一个存在的问题:
在某种状态下,MSCAN因接收错误计数值或者发送错误计数值溢出而导致“离线”。
因之前的设计并未考虑这个问题,导致用户在使用一个月左右的时间内,偶尔会出现一二次此类故障。
昨天匆匆增加了错误处理,思路是,当总线出现“错误”或者“离线”时,中断控制CAN模块重新初始化。
目前还不能很好的确认的是,重新执行MSCAN初始化,是否会使MSCAN模块重新于总线进入同步,并可正常收发数据?
因为故障率较低,目前对于该问题的处理处于研讨和测试阶段。

/********** 飞思卡尔交流QQ群:82738157 ************/
,兄弟,该问题解决了吗?我也借鉴下这个。多谢了。
我也一直在思考这个问题,如果保证CAN节点故障后,重新复位。

我觉得有必要使能故障中断,重新初始化CAN模块!
在重新初始化的时间内,可能有些数据发不出去,怎么办?
1# fish1330

CAN总线bus-off后的中断中重新初始化,初始化后肯定是能正常收发报文啊,在此期间如果总线上有报文肯定是要丢帧的。如果你有很强大的诊断系统,那么诊断系统会置此类错误的标志位,并写入EEPROM,如果此类错误很多,将该类错误升级,我觉得这是个诊断思路的问题。。。你本身是无法避免丢帧的。
返回列表