详解 CAN 总线:CAN 总线报文格式—遥控帧
CAN 总线上传输的信息称为报文,当总线空闲时任何连接的单元都可以开始发送新的报文。
CAN 通信是通过以下 5 种类型的帧进行的:
数据帧
遥控帧
错误帧
过载帧
帧间隔
另外,数据帧和遥控帧有标准格式和扩展格式两种格式。标准格式有 11 个位的标识符(Identifier: 以下简称 ID), 扩展格式有 29 个位的 ID。
各种帧的用途如下表所示:
近期打算写 5 篇文章,分别详细介绍这 5 种类型的 CAN 总线报文格式,本篇博文将详细讲解 CAN 遥控帧格式,创作不易,请各位朋友多多点赞、收藏、关注支持~
关注公众号:美男子玩编程,优先推送最新技术博文~
1、遥控帧格式
遥控帧是接收单元向发送单元请求发送数据所用的帧,遥控帧由 6 个段组成,遥控帧没有数据段。
遥控帧的构成如下所示:
帧起始(SOF):表示帧开始的段;
仲裁段:表示该帧优先级的段。可请求具有相同 ID 的数据帧;
控制段:表示数据的字节数及保留位的段;
CRC 段:检查帧的传输错误的段;
ACK 段:表示确认正常接收的段;
帧结束:表示遥控帧结束的段。
遥控帧格式如下图所示:
2、数据帧和遥控帧的区别
数据帧和遥控帧主要有两点区别:
遥控帧没有数据帧的数据段;
遥控帧 RTR 位是隐性,RTR 位的极性表示了所发送的帧是数据帧(RTR 位“显性”)还是远程帧(RTR 位“隐性”)。所以,没有数据段的数据帧和遥控帧可通过 RTR 位区别开来。
版权声明: 本文为 InfoQ 作者【不脱发的程序猿】的原创文章。
原文链接:【http://xie.infoq.cn/article/108cdbf769592c279a5f9d323】。文章转载请联系作者。
评论