OpenEdv-开源电子网

标题: FreeRTOS一个奇怪问题,标题 要满12字 [打印本页]

作者: shenqihao    时间: 2021-3-18 10:04
标题: FreeRTOS一个奇怪问题,标题 要满12字
本帖最后由 shenqihao 于 2021-3-18 10:06 编辑

2块板子,信号板和主板,信号板通过串口发数据给主板(主板接收串口比如串口1),主板运行FreeRTOS系统,
主板接收到数据,处理下通过另一个串口(比如串口2)发送给电脑,主板串口3为调试串口。
正常情况主板每隔6秒发一次数据给电脑,但是测试下,主板发送给电脑执行了3、4次就不执行了。
以下情况会一直执行。
1、不修改程序,硬件仿真会一直执行。
2、主板接收串口1接收中断中调用调试串口,输出接收到的数据
3、在接收到完整指令处理任务中,调用调试串口输出完整指令
在主板发送给电脑后调用vTaskDelay(1);,有改善,但还会丢数据。
可能是什么原因?

作者: shenqihao    时间: 2021-3-18 10:04
串口接收中断组4,抢占改为4就好了。可能是任务调度丢失数据引起的。

作者: flyingPiggy    时间: 2021-5-28 09:04
串口加FIFO
作者: shenqihao    时间: 2021-6-3 13:03
flyingPiggy 发表于 2021-5-28 09:04
串口加FIFO

谢谢,有机会试试




欢迎光临 OpenEdv-开源电子网 (http://47.111.11.73/) Powered by Discuz! X3.4