微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Mavlink 命令 [180] 是什么意思?

如何解决Mavlink 命令 [180] 是什么意思?

例如,我正在尝试发送一个 mavlink 命令

GPS_RTCM_DATA ( #233 )

flags   uint8_t     

len     uint8_t

data    uint8_t[180]        RTCM message (may be fragmented)

https://mavlink.io/en/messages/common.html#GPS_RTCM_DATA

我知道 uint8_ 将在单字节无符号整数中。 [180] 是什么意思?

解决方法

MAVLink GPS_RTCM_DATA 消息中的 uint8_t[180] 表示 data 字段最多可以包含 180 个字节。

请注意 RTCM 消息可能大于 180 字节,并且可能会被分段 不止一条 GPS_RTCM_DATA 消息。

您可以按照 mavlink 文档中的说明检查 flags 字段:

LSB:1 表示消息被分片,接下来的 2 位是分片 ID, 剩余的 5 位用于序列 ID。消息只是 当整个消息都被刷新到 GPS 在自动驾驶仪上重建。片段 ID 指定哪个顺序 片段应组装到缓冲区中,而序列 ID 用于检测不同缓冲区之间的不匹配。缓冲区是 当所有 4 个片段中的任何一个都被认为是完全重建的 存在,或第一个片段之前的所有片段 接收到完整的有效载荷。这种管理用于确保 正常的 GPS 操作不会破坏 RTCM 数据,并从 不可靠的运输交货单。

,

我每个都试过了,但没有用。除了把它作为一个 180 字节的数组。例如,数据可能只有 30 个字节。但是以这种方式输入另外150个0x00字节,python程序接受了我的命令。奇怪的是。我无法解释为什么,但在这种情况下它有效。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?