CAN报文中的PGN是什么意思

2025-01-03 17:06:07
推荐回答(5个)
回答1:

PGN – 参数组号码   (Parameter Group Number)的意思。

CAN技术的报文传输为多主方式工作,网络上任意节点均可在任意时刻主动地向网络上其它节点 发送信息,而不分主从。CAN节点只需通过对报文的标示符滤波即可实现点对点、一点对多点及全局广播等几种方式发送、接收数据。

CAN总线的数据传输(报文传输)采用帧格式。按帧格式的不同,分为含有11位标识符的标准帧和含有29位标识符的扩展帧。CAN总线的帧类型分为 数据帧、远程帧、错误帧和过载帧。

CAN与PGN的关系:

PGN是参数组编号,对于制定CAN协议来说十分重要,很多ECU在接受报文时识别的就是PGN而不是报文的ID,

扩展资料

CAN 总线的主要特点有:

( 1) CAN 为多主工作方式 ,网络上的任意节点在任意时刻都可以主动地向其他节点发送信息 ,不分主从 ,方式灵活。

( 2) CAN 网络节点可以安排优先级顺序 ,以满足和协调各自不同的实时性要求。

( 3) 采用非破坏性的总线仲裁技术 ,多点同时发送信息时 ,按优先级顺序通信 ,节省总线冲突仲裁时间 ,避免网络瘫痪。

( 4) 可以进行点对点、一点对多点和全域广播方式传递信息。

( 5) 通信速率最高可达 1M bps( 40m以内 ) ,最长传递距离达 10km(速率为 5kbps以下 )。

( 6) 网络节点目前可达 110个 ,报文标志符 2 032种 ( CAN2. 0A) ,扩展标准 ( CAN2. 0B)中报文标志符几乎不受限制。

参考资料来源:百度百科-can

回答2:

PGN – 参数组号码   (Parameter Group Number)

总线上的信息被以“组”的形式广播

PGN是一个24位的值,包括保留位、数据页位、PF(PDU格式场)和PS(群扩展场)等要素。
在各个位转化到PGN的过程中,如果PF的值小于240(十进制)时,PGN的低字节置零。

CAN协议的报文传输过程中有:数据帧、远程帧、错误帧、过载帧和帧间隔。

1、数据帧:用于发送节点向接收节点传送数据的帧。

2、远程帧:用于接收节点向具有相同ID的发送节点传送数据的帧。

3、错误帧:用于当检测出错误时向其他节点通知错误的帧。

4、过载帧:用于接收节点通知其尚未做好准备的帧。

5、帧间隔:用于将数据帧及远程帧与前面的帧分隔开来。

扩展资料:

CAN与PGN的关系:

PGN是参数组编号,对于制定CAN协议来说十分重要,很多ECU在接受报文时识别的就是PGN而不是报文的ID,

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

参考资料来源:百度百科-can

回答3:

PGN是参数组编号,对于制定CAN协议来说十分重要,很多ECU在接受报文时识别的就是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正常取值。

扩展资料

CAN的内部结构:

CAN总线控制器主要保证数据链路层和物理层的通信质量。SJA1000是一种独立的CAN总线控制器。SJA1000 的内部结构。

1、接口管理逻辑(IML)负责解释来自CPU的命令,控制 CAN 寄存器的寻址,向主控制器(CPU)提供中断信息和状态信息。

2、发送缓冲器(TXB)是CPU 和位流处理器(BSP)之间的接口,负责存储发送到CAN总线上的一条完整的报文。发送缓冲器的长度为13个字节,由CPU写入、位流处理器读出。

3、接收缓冲器(RXB、长度为13个字节)是验收滤波器和 CPU 之间的接口,用来存储从 CAN 总线上接收并被确认的信息。作为接收FIFO(RXFIFO,长度为64字节)的一个窗口,接收缓冲器可被CPU访问。CPU在接收FIFO的支持下,可以在处理一条报文的同时接收其他报文。

4、验收滤波器(ACF)将一条接收到的报文标识码与验收滤波器中的预设值相比较,以决定是否接收这条报文。在纯粹的接收测试中,所有的报文都保存在接收FIFO中,但只有验收滤波通过且无差错的报文,才能被保存在接收缓冲器中。

5、位流处理器(BSP)是一个控制发送缓冲器、接收FIFO和CAN总线之间数据流的程序装置。它还执行总线上的错误检测、仲载、总线填充和错误处理。位时序逻辑(BTL)监视串行的CAN总线和位时序。它在信息开头“弱势支配”的总线传输时,同步 CAN总线位流(硬同步),接收报文时再次同步下一次传送(软同步)。

参考资料来源:百度百科-can

回答4:

PGN – 参数组号码   (Parameter Group Number)

总线上的信息被以“组”的形式广播。

PGN是参数组编号,对于制定CAN协议来说十分重要,很多ECU在接受报文时识别的就是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

扩展资料

PGN是参数组编号,对于制定CAN协议来说十分重要,很多ECU在接受报文时识别的就是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正常取值。

回答5:

PGN – 参数组号码   (Parameter Group Number)

总线上的信息被以“组”的形式广播