深圳免费模板建站,微信小程序客户管理系统,wordpress加载网页,搜索引擎排名优化亚当本文框架 1. 概述2. 一帧CAN报文发送时间计算3. 一帧CanFD报文的传输时间计算3.1 标准CAN与CANFD两者间的区别3.2 CANFD报文传输时间计算 1. 概述
本篇我们一起看下一帧Can报文发送需要多长时间#xff0c;下述文章里我们会首先计算下Can分别对应的字节数#xff0c;再根据传… 本文框架 1. 概述2. 一帧CAN报文发送时间计算3. 一帧CanFD报文的传输时间计算3.1 标准CAN与CANFD两者间的区别3.2 CANFD报文传输时间计算 1. 概述
本篇我们一起看下一帧Can报文发送需要多长时间下述文章里我们会首先计算下Can分别对应的字节数再根据传播速率计算出一帧报文传输的时间内容简单但还有点意思。本文大纲如下
2. 一帧CAN报文发送时间计算
CAN及CANFD对应的标准帧及扩展帧的格式如下其中CAN与CANFD的主要区别在于数据场的长度不同标准帧与扩展帧的区别在于仲裁场长度不同。
对于一帧8字节数据的标准CAN报文总共的Bit位数量 帧起始1位 仲裁段13位 控制段5位 数据段64位 CRC段16位 ACK段2位 帧结束7位 108位
对于数据8字节的扩展帧 帧起始1位 仲裁段33位 控制段5位 数据段64位 CRC段16位 ACK段2位 帧结束7位 128位
当对应CAN报文传输速率为500kBaud/s时即传输一个Bit需要的时间为1/500k 2us/bit对应上述的标准帧及扩展帧的传输时间 标准帧108 x 2 216us 扩展帧128 x 2 256us
3. 一帧CanFD报文的传输时间计算
那对于一帧CanFD报文需要多长时间呢同样需要先了解其数据格式对于标准CANFD报文其帧组成如下
3.1 标准CAN与CANFD两者间的区别
与CAN 帧相同CANFD报文同样有帧起始 仲裁段 控制段 数据段 CRC段 ACK段 帧结束七个部分组成两者区别在于 传输速率不同CAN FD的速率可变从控制场中的BRS位到ACK场之前含CRC分界符为可变速率最高速率可达到8Mbps其他部分与CAN相同。 数据长度不同CAN FD支持的最大数据长度为64byteCAN支持的最大数据长度为8byte。 帧格式不同CAN FD新增了FDF、BRS、ESI位其中 FDF 位Flexible Data Rate Format原 CAN 数据帧中的保留位 r表示 CAN 报文还是 CAN-FD 报文FDF 位常为隐性1表示 CAN FD 报文 BRS 位 Bit Rate Switch表示位速率转换当 BRS 为显性位0时数据段的位速率与仲裁段的位速率一致恒定速率当 BRS 为隐性位1时速率可变即 BSR 到 CRC 使用转换速率传输 ESI 位Error State Indicator发送节点错误状态指示主动错误时发送显性位0被动错误时发送隐性位1。 ID长度不同CAN FD标准帧ID长度可扩展至12bitCAN的标准帧ID为11bit。
3.2 CANFD报文传输时间计算
在计算一帧CANFD报文传输时间时需要注意CANFD报文
由于CANFD采用了双波特率形式标准波特率也称仲裁域波特率和数据域波特率所以帧结构中不同段采用的波特率也不同。
仲裁域波特率所占位数帧起始1位 仲裁段13位 控制段的EDL、r0、BRS(3位) ACK段2位 帧结束7位共26位。
数据域波特率所占位数控制段的ESI、DLC(5位) 数据段0~512位 CRC段28/33位最多共550位。
假设仲裁域波特率为500Kbps位时间2us数据域波特率为2Mbps位时间0.5us 则发送一帧标准CANFD报文需要的时间为26 x 2us550 x 0.5us 52 275 327us
注此处计算的前提条件如下 1CANFD报文为标准CANFD报文非扩展帧 2上述报文位数中不含填充位个数在CAN/CAN FD协议中规定每5个相同的位就必须填充一个相反位该位即为填充位。例如发送的帧ID为0x55或0xAA其二进制分别为0101 0101或1010 1010即每个位与前后位均相反若此时ID和数据均为0x55或0xAA则可以使填充位个数最少。