本篇文章我们来介绍CAN转RS-485模块的具体转换方式。
1.串行帧转CAN报文
串行帧的全部数据依序填充到CAN报文帧的数据域里。一检测到串行总线上有数据后就立即接收并转换。
转换成的CAN报文的帧类型和帧ID来自用户事先的配置,并且在转换过程中帧类型和帧ID一直保持不变。数据转换对应格式如下图所示。
如果收到的串行帧长度小于等于8字节,依序将字符1到n(n为串行帧长度)填充到CAN报文的数据域的1到n个字节位置(如图3.1中n为7)。
如果串行帧的字节数大于8,那么从串行帧首个字符开始,第一次取8个字符依次填充到CAN报文的数据域。将数据发至CAN总线后,再转换余下的串行帧数据填充到CAN报文的数据域,直到其数据被转换完。
2.CAN报文转串行帧
对于CAN总线的报文也是收到一帧就立即转发一帧。数据格式对应如下图所示。
转换时将CAN报文数据域中的数据依序全部转换到串行帧中。如果在配置的时候,“允许CAN帧信息转发到串行帧”项被选中,那么会将CAN报文的“帧信息”字节直接填充至串行帧。
如果“允许CAN帧ID转发到串行帧”项被选中,那么会将CAN报文的“帧ID”字节全部填充至串行帧。
欢迎大家找我讨论更多CAN总线相关问题。
页面更新:2024-05-26
本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828
© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号