- 在 Firmware/msg 文件夹下添加对应的 demo_topic.msg 文件,仿照其他文件定义数据类型;
- 在 Firmware/msg/CMakeLists.txt 下的
set(msg_files ...)
函数中添加 demo_topic.msg; - 编译固件,会自动生成 demo_topic.h 文件,里面有一个结构体
demo_topic_s
,并且会生成专属的 ORB_ID; - 在需要调用该话题的地方包括头文件,并且实例化结构体为
demo_topic_status
,设置其值; - 定义uORB发布
uORB::Publication<demo_topic_s> demo_topic_pub{ORB_ID(demo_topic)};
; - 发布话题,
demo_topic_pub.publish(demo_topic_status)
; - 在 Firmware/src/modules/logger/logged_topics.cpp 中添加对应的话题名
add_topic("demo_topic")
。
------ 完 ------