Chinaunix首页 | 论坛 | 博客
  • 博客访问: 4369
  • 博文数量: 5
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 55
  • 用 户 组: 普通用户
  • 注册时间: 2018-03-12 16:49
个人简介

不善言谈的我们,只能通过书本汲取营养,用笔表达思想。从单片机到PLC,以及嵌入式,愿我们相互交流,共同进步。不忘初心,方得始终。

文章分类
文章存档

2020年(1)

2018年(4)

我的朋友

分类: 信息化

2018-05-24 13:40:44

    读CAN总线的书时,都会涉及到总线电平的问题,CAN总线的电平分为显性电平与隐性电平,这是CAN总线物理层的核心部分,也是总线仲裁的基础。那何为显性,何为隐性呢?

    根据孔丙火(微信公众号:孔丙火)的理解,最直接的解释就是波形,用示波器测量CANH和CANL上的差分波形,可以清晰的看到有高低电平,在短距离通信中,高电平在2-4V之间(实测),低电平为0V。那么,从波形上看,最显眼的肯定是高电平,不显眼的是低电平,那么高电平就是显性电平,低电平就是隐性电平。如图1所示。

图1

    那么,另外一个问题来了,我们在看CAN总线资料的时候,总会看到一个线与的概念,显性电平的逻辑为0,隐性电平的逻辑为1,所以在仲裁的时候ID越小的帧优先级越高。显性电平为什么逻辑为0呢,其实,这都是CAN收发器芯片完成的工作,在收到显性电平的时候,芯片会在Rx脚输出低电平,即0,这样就实现了CAN差分电平与TTL电平的转换。孔丙火(微信公众号:孔丙火)认为,我们在使用中,只要知道显性电平的差分电平为高,逻辑电平(TTL电平)为低,就可以了,否则在测试CAN波形时可能会有疑惑。


文章在微信公众号同步推出,微信公众号:孔丙火,关注欣赏更多文章。

阅读(694) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~