调试了一天,原本是接收中断,程序跑起来 很流畅没什么问题,后来更改为空闲模式(为了不定长接收)接收,结果板子跑起来出现卡顿。 找了一天的问题,最后定位到 复位函数(BSP_Soft_Reset()); 问题就是: 程序是正常运行的,根本就没用串口通讯,根本不会进中断。实际仿真也没进中断。也没进BSP_Soft_Reset这个函数里(实际进入就会复位),但是这个BSP_Soft_Reset函数就是会影响程序的运行。关键还是只有空闲中断接收模式才有,正常接收中断模式没有这种情况。 有没有大佬解释一下,什么原因。 |
程序大致流程
检测是否串口中断
复位函数