簡體   English   中英

將 J1939 消息轉換為原始 CAN

[英]Convert J1939 message to raw CAN

我通過使用 IsoAgLib 作為框架的 class 接收 J1939 CAN 消息。 在接收端,我有這些 J1939 消息需要使用 Qt 的“QCanBusDevice”和“QCBusFrame”傳輸到 CAN 網絡。

我的問題是:如何將 J1939 協議中的消息轉換為原始罐消息,反之亦然?

J1939只是一個協議層,所以首先需要根據J1939報文的優先級、PGN和源地址創建CAN ID,CAN ID為29bit長度,以如下結構為例:

- 優先級 0x18

-PGN 0xFECA

- 源地址 0x00

上面的結構是 J1939 消息 ID 之一的示例,原始 ID 將是相同的 0x18FECA00。 J1939 僅規定如何解釋原始信息。

現在組裝有效載荷將取決於以位為單位的參數長度、起始位和偏移量。

- 識別數據長度 - 根據 J1939 信號信息組裝所有字節 你可以在 SAE J1939-71 和 SAE J1939-73 文檔中找到這個。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM