用STM32 HAL库,串口使用中断模式,发现程序有时候会进去死锁状态,原因应该是串口在发送过程中,这时候数据又被发送过去了,然后就很容易会死锁了。
上网找了相关的资料,见链接:
https://blog.csdn.net/mickey35/article/details/74255041
作者分析了原因,是__HAL_LOCK的原因,这里点个赞。
作者又写了另外一种情况下串口死锁的解决方法,具体可见:
https://blog.csdn.net/mickey35/article/details/78529637
串口溢出中断(ORE)。继续点个赞。