想实现一个功能,从外部设备采集数据,每一次的采集时间比较长,大概300ms,然后通过蓝牙发送出去,不断循环。在蓝牙串口的例子上进行修改,新建了一个数据采集并发送事件,使用TMOS进行处理。
①在初始化处启动task,在task事件处理末尾再次启动task,达到循环的目的。
②在程序主循环里不断启动task。
两种方法都导致蓝牙连接超时。
请问如何解决频繁启动耗时较长task导致蓝牙连接超时问题?还有就是在主函数while循环里能写函数吗,还是说只能写一些耗时较短的函数,会影响其他TMOS任务吗?源代码中蓝牙串口app_uart_process能够成功运行的原因是不是因为他是检测到串口中断才启动task,虽然写在while循环里,但是不是每次循环都运行,不会影响其他蓝牙任务?