can通信数据帧解析

 仲裁段:

        标准帧有11位的用来保存信号的ID,RTR为远程帧位(数据帧时为显性0,如果为隐性1时则表示此帧为远程帧),总共12位。

ID 标准格式的 ID 有 11 个位。从 ID28 到 ID18 被依次发送。禁止高 7 位都为隐性。 (禁止设定:ID=1111111XXXX)

数据帧和遥控帧的不同:遥控帧的 RTR 位为隐性位,没有数据段。

扩展帧的ID段分为两段,第一段为11位与标准帧一样,SRR及RTR位,作用与标准帧的RTR一样(默认是显性0,如果为隐性1则表示此帧为远程帧),IDE位用于区分标准帧及扩展帧,IDE为显性0则为标准帧,IDE为隐性1则为扩展帧。IDE后面是18位扩展ID

总线上的电平有显性电平和隐性电平两种。 总线上执行逻辑上的线“与”时,显性电平的逻辑值为“0”,隐性电平为“1”。显性”具有“优先”的意味,只要有一个单元输出显性电平,总线上即为显性电平。并且,“隐 性”具有“包容”的意味,只有所有的单元都输出隐性电平,总线上才为隐性电平。(显性电平比 隐性电平更强。)

  扩展格式的 ID 有 29 个位。基本 ID 从 ID28 到 ID18,扩展 ID 由 ID17 到 ID0 表示。基本 ID 和 标准格式的 ID 相同。禁止高 7 位都为隐性。(禁止设定:基本 ID=1111111XXXX)

 控制段:

        标准帧的控制段由IDE、r0保留位、DLC数据字节长度组成,IDE位为显性0,r0位也为显性0,DLC位为4个位的长度用来表示传输数据的字节长度,标准帧及扩展帧传输的数据字节均为0~8个字节。如果发送节点DLC=9~15,接收节点不视为错误。

        扩展帧的控制段由r0、r1保留位、DLC数据字节长度组成,r0、r1为显性,DLC的定义与标准帧的一致。

数据段:用于保存数据帧传输的数据,其位数由控制段DLC决定。最大8字节/64位

CRC段:此段是为了校验帧传输是否正确的作用,由15个CRC校验位与CRC界定符(默认隐性1),CRC校验计算范围包括帧起始、仲裁段、控制段、数据段。接收节点也以相同的方式计算CRC值进行比对,不一致时就会引入错误处理机制。

ACK段:也叫应答段,由ACK槽位(默认隐性)和ACK界定符(默认隐性)组成,接收到正确消息的单元在 ACK 槽位(ACK Slot)发送显性位,通知发送单元正常接收结束。这称作“发 送 ACK”或者“返回 ACK”。

EOF:帧结束,由7个连续的隐性位组成。

计算CAN通信的波特率:

波特率配置相关寄存器

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值