多个STM32相连的冲突问题:为什么上次没处理的数据会影响下次

2019-07-14 18:23发布

我刚接触STM32不久,对DMA和中断的用法不是很熟,不知道为什么上次没处理的数据会影响下次,或者是我没有完全关闭DMA的接收或是没清缓存?请大牛指点我的问题所在,谢谢!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
14条回答
旧巷幽草香
2019-07-15 13:51
ctwewer 发表于 2018-8-24 09:42
让ReceiveBuff[xx]=0x00其实这个USART接收不用DMA好像更容易数据处理

谢谢回复,

我里面也有这样一段:

/*        清空接收缓存匿        */
                for(int i = 0; i < Rx_len ; i++)
                                ReceiveBuff=0;

用来清这个缓存。
但如我说的,第二次的数据来的时候,进ReceiveBuff后就不对了,进之前我可以肯定里面是全0的。

确实也许不用DMA会简单很多,但我目前这个不太方便改了,而且感觉是一些新手错误,毕竟我刚接触这个。可能我描述的不够清楚,您有任何质疑我都很乐意详述,谢谢。

一周热门 更多>