我在主板用DMA循环模式配置DMA中断接收USART的数据.databuffersize 配置为15个字节.采集模块接收到主板发送的命令后以固定的数据桢15个字节上传数据,在DEBUG中调试发现有时出现数据最后一个字节或2个字节乱码,造成数据错误,如果不用DMA方式而用USART串口中断接收数据则正确,这样说明下位机上传数据程序正确,但用DMA模式则会出现最后字节乱码问题,不知道什么原因.现在我用了一个被动解决方法就是DMA配置17个字节,下位机上传数据也用17个字节,然后在主程序中舍弃最后2个字节.只是利用了有效的15个字节.奇怪为什么会出现最后1或2字节数据错误的问题呢? |