想请教个问题。 今天做了个串口环形缓冲测试,PC用115200速度对STM32F103发数据,一次发20字节,板子接收以后在返回到PC,结果测试几分钟之后,出现了一次乱码,PC接收到的数据量显示比发送的少了一个字节。
怎么才能保证发送给STM32串口的数据100%被接收下来呢, 从软件 程序上考虑, 缓冲区怎么设计, 我用的是环形缓冲。没开DMA, 个人感觉,开了DMA的话,原理跟没开DMA是一样的,只不过是减少了中断次数而已,但是在长时间接收时,也不一定能保证全部接收吧,尤其是还有其他任务要处理,比如数据写到sd卡? |