我的程序如下:
DMA1Channel6負責(zé)接收UART2收到的數(shù)據(jù)。這是DMA1Channel6的中斷,INTFR 是這個中斷的標(biāo)志位:
進入中斷后,讀這個標(biāo)志位,偶爾會發(fā)現(xiàn)這個標(biāo)志位 = 0,進而導(dǎo)致接收失敗。
圖中的串口數(shù)據(jù)是正常的,但是在特定的位置發(fā)生了debug3.on()信號,對應(yīng)程序中212行
取消中斷,發(fā)現(xiàn)這個問題不是每次都發(fā)生:
發(fā)送相同的數(shù)據(jù),有大約25%的概率會發(fā)生這一問題。