can协议之PGN

PGN是参数组编号,对于制定CAN协议来说十分重要,很多ECU( (Electronic Control Unit)电子控制单元,又称“行车电脑”、“车载电脑”等。从用途上讲则是汽车专用微机控制器。 )在接受报文时识别的就是PGN而不是报文的ID,

报文ID作为报文的名字,是每一条报文专有的名字,而一个PGN不仅仅对应一条报文。CAN的扩展帧使用29位标识符,报文ID共有四个字节32位,PGN共有3个字节24位,两者有重合但是PGN并不是ID的一部分。

PGN的24位分别是:( 6个bits的0,一个扩展数据页(EDP))、数据页(DP)、PF、GE。当PF<240的时候,GE=0,否则GE正常取值。下面是两个例子:

报文ID:18FECA17

第一个字节是18,转换为二进制是0001 1000 ,可以看到优先级是110(十进制的6),DP=0,R=0

第二个字节是PF=FE(十进制是254>240),

第三个字节是GE,

第四个字节是17

这里因为PF>240,所以GE=CA,所以PGN=FECA

报文ID:0CDAEE17

第一个字节是0C,转换为二进制为 0000 1100,优先级011(十进制的3),DP=0,R=0

第二个字节是PF=DA(十进制是218<240)

第三个字节是GE

第四个字节是17
这里因为PF<240.所以GE=0,所以PGN=DA00


转载原文:https://blog.csdn.net/meteorite91/article/details/70245134

  • 9
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值