can帧格式 dlc_是时候聊一下CAN总线了(下)——CAN总线帧格式

文/Edward

1

通讯速率和通讯距离

CAN总线是一种串行的差分总线,并且这种差分总线只传递数据信息,因此关于时钟信号收发两方是没有信号进行传递的。因此,CAN总线与绝大多数异步串行总线一样,需要收发双方约定好数据传输的波特率(bit/s)才可以确保数据的正常收发。常用的CAN总线波特率有125Kbits/s,250Kbits/s,500Kbits/s,1MKbits/s等,ISO11898中所定义的CAN总线的波特率最高为1Mbits/s。

尽管CAN总线的纠错能力很强,但是为了数据的准确收发,具体选择CAN总线的波特率应该以具体的工况来选择,选择波特率的主要依据为传输线的距离。具体传输距离和CAN波特率的关系可以参考表1。

表1 传输距离和CAN波特率的关系

2CAN总线的通讯模型

前面我们说了,CAN总线是一种可以允许多主机存在的半双工差分总线,所有节点可以自由地挂载在同一根CAN总线上,组成一个理想中的控制局域网络。在CAN总线传输过程中,所有节点都可以根据自身当前的状态来发送数据,先占据总线者则在当前时间向总线上的所有节点发送数据。而每个CAN节点都有一个叫做CAN ID的唯一标识符,当某个节点发现当前总线上的CAN数据是发给自己的,则将这一帧CAN数据接收后进行处理。当某个节点的CAN数据发送完成后,即释放CAN总线,同时允许别的节点占用总线。另外,现在绝大多数CAN总线控制器都自带硬件地址过滤器,因此,我们可以省去CAN总线的ID软件判断。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值