请问HAL_UART_Receive_DMA函数的具体功能是什么?

2019-07-14 15:31发布



该函数是DMA方式接收数据,这不用说了,也别说使用其它方法解决我关心的是这个函数的具体功能,我理解是:将指定串口(第一个参数)发来的数据,按指定的数量(第三个参数)送到指定的缓冲区内(第二个参数);不知理解的对不对,请赐教。

一般来说,串口接收数据,只要初始化好各种参数,使能中断,然后在中断或回调函数中直接处理收到的数据就行了,为什么还要使用 HAL_UART_Receive_DMA 函数来接收数据呢?当然既然HAL_UART_Receive_DMA 函数存在,就肯定有它存在的道理,只是我不理解而已,望赐教。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
13条回答
kingnet_520890
1楼-- · 2019-07-15 13:39
谢谢各位的回答
抹掉0011
2楼-- · 2019-07-15 13:59
你好  请问你理解了吗  能给个实例吗
ryanyhh
3楼-- · 2019-07-15 18:23
听大神讲讲
wenxueshu
4楼-- · 2019-07-15 22:32
仔细对比2个函数的区别,DMA可以不用等,循环判断完成标志位就可以了,普通的需要等待接收完成
wenxueshu
5楼-- · 2019-07-15 23:09
 精彩回答 2  元偷偷看……
K_Alter
6楼-- · 2019-07-16 00:19
默默学习学习。。。

一周热门 更多>