文件名称:STM32的串口变量的原子操作问题
文件大小:616KB
文件格式:DOCX
更新时间:2022-04-12 16:12:15
原子操作问题 单片机 串口数据帧丢失问题
串口方式:用串口接收中断方式接收,不是DMA. 遇到的问题:串口数据有帧丢失。 原因描述:在串口接收中断中接收到字节时变量size++。在main循环中解析一帧数据时size--,导致的size值不对,从而导致解析错误,导致数据帧丢失的情况。实际的原因是对size的操作不是原子操作的,具体更改见文档。有相关程序和具体的分析。