【分享帖】超级好用的话题订阅的消息框架-OneMessage
![摆烂电控](https://hz-rm-bbs-web-prod.oss-cn-hangzhou.aliyuncs.com/avatar/pre/v1/000054043_avatar_big.jpg)
OneMessage
支持同步/异步/回调/筛选/事件/队列。帮你解耦模块,写出更易读的代码有CI和单元测试覆盖,放心使用!
性能
STM32F103下开启订阅发布和log功能,使用-g优化,RAM占用增加1.25kb,FLASH占用增加2.5kb。
步兵机器人(使用C型开发板)全部模块解耦后使用话题来通信,平均每毫秒约有40次消息发布,cpu总占用率仍然小于一半。
支持
操作系统:裸机/Freertos/ThreadX/Linux
MCU:STM32/ESP32......
Github
Gitee
示例应用
1. 基本用法,bmi088发布加速度/角速度话题数据,由姿态解算、云台等任务订阅并获取数据。
2. 为每路can线创建对应的话题,使用过滤器订阅指定id的can包,实现can设备(如电机)的动态挂载
如我们步兵底盘的电机配置文件,只需要电机型号与ID即可完成反馈数据接收与控制
3. 多板/上位机通信搞不定?共享话题帮你秒杀板间通信
提供话题数据的打包与解析器,允许你将当前话题的数据打包,只要接收端创建了同名话题,就可以在任何一个平台正确解包并发布,支持拆包/组包/包间夹杂无效数据,只需无脑发送即可
4. 分等级的LOG打印,还可订阅log话题对错误进一步处理
以上示例都可在我们队的嵌入式开源[XRobot]中找到实现,还有更多功能等你来发现!
交流群
支持同步/异步/回调/筛选/事件/队列。帮你解耦模块,写出更易读的代码有CI和单元测试覆盖,放心使用!
性能
STM32F103下开启订阅发布和log功能,使用-g优化,RAM占用增加1.25kb,FLASH占用增加2.5kb。
步兵机器人(使用C型开发板)全部模块解耦后使用话题来通信,平均每毫秒约有40次消息发布,cpu总占用率仍然小于一半。
支持
操作系统:裸机/Freertos/ThreadX/Linux
MCU:STM32/ESP32......
Github
Gitee
示例应用
1. 基本用法,bmi088发布加速度/角速度话题数据,由姿态解算、云台等任务订阅并获取数据。
2. 为每路can线创建对应的话题,使用过滤器订阅指定id的can包,实现can设备(如电机)的动态挂载
如我们步兵底盘的电机配置文件,只需要电机型号与ID即可完成反馈数据接收与控制
3. 多板/上位机通信搞不定?共享话题帮你秒杀板间通信
提供话题数据的打包与解析器,允许你将当前话题的数据打包,只要接收端创建了同名话题,就可以在任何一个平台正确解包并发布,支持拆包/组包/包间夹杂无效数据,只需无脑发送即可
4. 分等级的LOG打印,还可订阅log话题对错误进一步处理
以上示例都可在我们队的嵌入式开源[XRobot]中找到实现,还有更多功能等你来发现!
交流群
请问这篇文章对你有用吗?
【分享帖】超级好用的话题订阅的消息框架-OneMessage