在TMOS系统的main.c中添加事务处理代码

目录

链接: https://pan.baidu.com/s/1fxq91cemuNjeGRwRmM1vNg?pwd=wch6

EVT包中跑BLE的默认代码,一般只添加了必要的事件处理函数,且有一定的作用域范围。比如BLE从机例程中,Peripheral_TaskID是加了static修饰的,故以默认代码的逻辑,只能在peripheral.c中启用Peripheral_TaskID下的事件和对应的Peripheral_ProcessEvent事件处理函数。借着EVT包中已有的框架,也是可以直接在其他文件中启用事件的,只需要将Peripheral_TaskID定义前的static去掉,使其成为全局变量,再在需要调用Peripheral_TaskID的文件中声明Peripheral_TaskID。

如果按EVT默认代码的逻辑走下去,是可以限制BLE功能的代码里块只在peripheral.c中出现,方便后续排查问题的。下文以在BLE的从机代码中添加ADC采集为例,介绍如何在main.c中添加自定义的TMOS处理代码,这样一来有少量的测试代码也不用再创建.c、.h文件,不用在其他“模块化”的文件中添加测试事件,更好地控制变量。

令TMOS系统运行一个事件,需要有①任务ID、②事件处理函数、③作为事件编号的宏。main.c中添加事件的参考代码见开篇链接。当事件逻辑较多时,建议根据taskID提取出代码,整理到单独的源/头文件中(参考peripheral.c/.h)。TMOS系统使用细节见博客:CH579/CH57x 的TMOS系统使用 - iot-fan - 博客园

 

posted @   JayWell  阅读(855)  评论(1编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示