This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] IWRL6432AOPEVM:用 0 填充

Guru**** 2862450 points

Other Parts Discussed in Thread: IWRL6432AOPEVM

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/sensors-group/sensors/f/sensors-forum/1637008/iwrl6432aopevm-padded-with-0s

器件型号: IWRL6432AOPEVM

您能更好地解释一下我从 IWRL6432AOPEVM 读取的二进制文件何时会填充 0 吗? 一个文档说数据包在 32 字节边界上、但我不确定这与下一帧之前完整帧的结束有何关系。  从我所看到的,填充的 0 是“唯一的“任何时候读取的最后一个类型标识符为框架和之前的魔法字的下一个帧。 这是正确的吗? 对于我用 EVM 和我自己的解析程序解析的二进制文件,一次类型 306 标识符是一个帧中的最后一个类型标识符,它在数据之后和下一个魔术字之前有 8 个填充 0。 另一次,306 仍然是最后一个类型的标识符,它有 16 个 paddes 0s 之前的下一个魔术字的开始。 所以,它看起来像规则,在帧的最后一个类型标识符的数据之后,在下一个魔术字的开始之前,可以有一个可变数量的填充 0 ,所以我的解析器只需要知道它是该帧的最后一个类型标识符,并读取下一个字节 (0 ),直到它读取 Magic Word 的 2 ,然后我知道我是下一个魔术字的第一个字节。 这是正确的吗? 我说 2 因为我正在读取字节所以 2 在二进制文件中的 1,2,3,4,5,6,7,8 个魔术字序列中的 1 个之前,它实际上显示为 2,1,4,3,6,5,8,7。   

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、James:

    请参阅本文档、了解器件的 UART 数据输出:
    https://dev.ti.com/tirex/explore/node?isTheia=false&node=A__AaagUFIod1NcG0sE-noAfw__radar_toolbox__1AslXXD__LATEST

    本文档开头的“了解 UART 数据输出格式“和“帧标头“部分应能解决与 UART 数据输出相关的疑问。

    谢谢。此致、
    Saransh Gautam

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我实际上每天都在使用和引用该文档、没有它就无法生存。 这是第 1 页提到的:填充,32 字节,数据包,和帧是什么导致这个问题,因为我写我自己的解析器和查看二进制文件。 我仍然不确定“数据包“和“一个完整的数据帧“是否是同义词。 如果你能回答这 3 个问题,这应该是我完成编写解析器所需的全部。   

    (问题 1)根据该文档的第 1 页、“数据包“一词的含义是否与“一个完整帧“数据相同。 即:

    ((帧报头+ TLV +填充 0)=数据包?

    (问题 2)只能在帧的最后一个 TLV 之后、以及在下一帧的魔法字之前添加 0 吗? 这是我真正需要理解的是,我只是不清楚从 doc  

    (问题 3)如果一个帧有 4 个 TLV、那么在示教 TLV 之后和下一个 TLV 之前是否可以填充 0?    

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、James:

    您可以参阅:radar_toolbox\source\ti\examples\Industrial_and_Armen\Motion_and_Rady\Source\ Personal_Electronics Presence_Detection src motion_detect.c

    在这里、您可以在源代码中准确地看到 UART TLV 数据包的写入和发送方式。

    要回答您的问题:

    [报价 userid=“664026" url="“ url="~“~/support/sensors-group/sensors/f/sensors-forum/1637008/iwrl6432aopevm-padded-with-0s/6311417

    (问题 1)根据该文档的第 1 页、“数据包“一词的含义是否与“一个完整帧“数据相同。 即:

    ((帧报头+ TLV +填充 0)=数据包?

    [/报价]

    是的、这些术语是同义词。

    (问题(问题 2)只能在帧的最后一个 TLV 之后、下一帧的魔法字之前添加 0。 这是我真正需要理解的是,我只是不清楚从文档。 [/报价]

    是的、正确。 填充发生在写入所有 TLV 后(如果 packetLen 不是 32 的倍数)

    (问题 3)如果一个帧有 4 个 TLV、那么在示教 TLV 之后和下一个 TLV 之前是否可以填充 0?  [/报价]

    不可以、正如我在为给定的路径的源文件中所看到的、TLV 被连续写回、而不会在每个之后填充。

    希望这可以解决您的查询。

    谢谢。此致、
    Saransh Gautam

    [/quote]