[ZLG-ARM] 请问如何预防LPC2378的CAN模块出现Data Overrun情况

[复制链接]
2971|4
 楼主| andrewpei 发表于 2008-12-18 16:32 | 显示全部楼层 |阅读模式
NXP的勘误数据手册上说:<br /><br />1.&nbsp;Recovering&nbsp;from&nbsp;this&nbsp;situation&nbsp;is&nbsp;only&nbsp;possible&nbsp;with&nbsp;a&nbsp;soft&nbsp;reset&nbsp;to&nbsp;the&nbsp;CAN&nbsp;controller.&nbsp;<br />2.&nbsp;If&nbsp;software&nbsp;cannot&nbsp;read&nbsp;all&nbsp;messages&nbsp;in&nbsp;time&nbsp;before&nbsp;a&nbsp;third&nbsp;message&nbsp;comes&nbsp;in,&nbsp;it&nbsp;is&nbsp;recommend&nbsp;to&nbsp;change&nbsp;the&nbsp;acceptance&nbsp;filtering&nbsp;by&nbsp;adding&nbsp;further&nbsp;acceptance&nbsp;filter&nbsp;group(s)&nbsp;for&nbsp;messages,&nbsp;which&nbsp;are&nbsp;normally&nbsp;rejected.&nbsp;With&nbsp;this&nbsp;approach,&nbsp;the&nbsp;third&nbsp;incoming&nbsp;message&nbsp;is&nbsp;accepted&nbsp;and&nbsp;the&nbsp;Data&nbsp;Overrun&nbsp;condition&nbsp;is&nbsp;avoided.&nbsp;These&nbsp;additional&nbsp;messages&nbsp;are&nbsp;received&nbsp;with&nbsp;the&nbsp;corresponding&nbsp;group&nbsp;index&nbsp;number&nbsp;can&nbsp;be&nbsp;easily&nbsp;identified&nbsp;and&nbsp;rejected&nbsp;by&nbsp;software.<br /><br /><br /><br />第一条讲的是恢复。即如何从数据溢出这个BUG中恢复。比较明白,没有什么问题。<br /><br /><br />第二条讲的预防。即是如何预防出现数据溢出的情况,这个就匪夷所思了。当两个RX&nbsp;BUFFER被填满而CPU无法及时响应读出的情况下,为什么在验收过滤表中添加配对的过滤表ID就会avoid&nbsp;data&nbsp;overrun?<br /><br />看了十来遍,无法理解第二条。请周立功的工程师给讲讲!<br />
freedomzlp 发表于 2011-6-12 10:43 | 显示全部楼层
石沉大海!!
huzixian 发表于 2011-6-12 22:03 | 显示全部楼层
哇,两年半前得帖子
coco11 发表于 2011-6-19 18:29 | 显示全部楼层
加班加点 发表于 2011-6-22 22:41 | 显示全部楼层
出错了,寄存器设置了,会重发的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

9

主题

51

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部