[STM32F1] 请教各位关于DMA和串口的一个问题

[复制链接]
973|3
 楼主| ujszmc 发表于 2015-7-5 16:29 | 显示全部楼层 |阅读模式
之前我用USART传输数据,都要等待上一个数据传输结束才能传输下一个数据,而今天我在使用DMA的时候就不需要while(USART_GetFlagStatus(USART2,USART_FLAG_TC)==RESET);   类似的语句来保证上一个数据已经发送完毕,这是为什么呢?
desertsailor 发表于 2015-7-5 19:30 来自手机 | 显示全部楼层
dma传输时,只有上一个数据传完了才会传下一个数据,这个过程不需人为干预
diweo 发表于 2015-7-5 20:55 | 显示全部楼层
设计DMA的目的就是减少CPU干预,让CPU可以专心做别的事情。如果还要while的话,CPU不就脱不了身?
fanxsd 发表于 2015-7-5 23:06 | 显示全部楼层
DMA 就是 为了 减轻CPU的工作负担的。用了DMA 再用WHILE 那DMA 就没有意思了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

5

主题

10

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部