大神,你好!我有几个关于CAN总线的问题问你,比如说的总线电平值怎么确定的?仲裁失败的报文怎么处理?

全部回答2
默认 最新
  • 不明白啊 = =!
    0 点赞
  • 你好,偶然间发现有人找我,很荣幸。大神愧不敢当,只是接触过一些CAN总线方面的东西,可以互相探讨一下。 CAN总线是一种双绞线,他的电平值是一种差分电压,也就是说总线电平值是双绞线两根线电平的差值,一般制定CAN协议的时候会定义好,如果差分电压高于某个值(自己定义)就表示当前总线是显性状态,用逻辑0表示。 只要总线空闲,任何单元都可以开始发送报文。如果2 个或2 个以上的单元同时开始传送报文,那么就会有总线访问冲突。通过使用识别符的位形式仲裁可以解决这个冲突。仲裁的机制确保信息和时间均不会损失。当具有相同识别符的数据帧和远程帧同时初始化时,数据帧优先于远程帧。仲裁期间,每一个发送器都对发送位的电平与被监控的总线电平进行比较。如果电平相同,则这个单元可以继续发送。如果发送的是一隐性电平而监控视到一显性电平,那么该单元就失去了仲裁必须退出发送状态。仲裁竞争失败的节点,必须等总线空闲时,参与下一次仲裁竞争,直至竞争成功才能把报文发送出去。
    0 点赞

没有更多内容了

返回顶部
产品求购 求购