个位达人,我使用USART2的TX做DMA进行数据的输出,波特率为115200,直接发送给PC机,每次发送结束后,进入DMA7的中断,关闭DMA通道。 在PC机发来数据后,又进入USART2的RX中断,在中断里重新再设置DMA的收发地址和字节数,再次发送。
通讯上了,可奇怪的是每次都还没有把设定的字节数读完,就进入了DMA7的中断(我设置的是发完再中断),总会少两个字节。
在DMA7的中断里加上while(!USART2.SR.B.TC);后就OK了,这是否可以说明,在尚未全部发完的情况下,就已经进入了DMA7的中断?
有遇见过相同的问题吗?
此帖出自
小平头技术问答
最好把整个程序发上来.我也想看看:-)
一周热门 更多>