首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >CAN_High和CAN_Low短路的CAN总线

CAN_High和CAN_Low短路的CAN总线
EN

Stack Overflow用户
提问于 2014-04-18 15:17:27
回答 1查看 6.9K关注 0票数 0

众所周知,在CAN总线上短路CAN_High和CAN_Low会导致总线关闭。

就物理层而言,这种状况是如何导致公交车停驶的呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-19 19:53:36

CAN是一种差分协议。这意味着0或1(是具体的、显性的和隐性的)是根据CANH和CANL线路上电压的差异来决定的。

当你缩短这两条线路,就不会有任何电压差异,这是在电压范围内的隐性位。换句话说,缩短两条线路将被认为是隐性比特的连续传输。

当您传输6个或多个连续的隐性位时,它被视为错误!

当错误计数超过255时,CAN控制器进入BUS_OFF状态。

由于行短,将有更多的隐性比特和错误计数将达到255在任何时间,这将导致BUS_OFF。

CAN协议确实有一个“总线恢复机制”,在其中它将等待连续11位隐性比特128次(当总线短路时会等待),但是同样的错误帧也会发生,并且它将返回到BUS_OFF中。

这个循环还会继续!

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23157033

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档