打印
[APM32F1]

求解答DMA控制器占用的疑问

[复制链接]
32|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
梦塑者|  楼主 | 2025-4-22 15:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在阅读极海APM32F103的用户手册时,在第9章 DMA章节里面官方对DMA控制器的说明:


DMA(Direct Memory Access:直接存储器存取)在无须 CPU 干预的情况下,可实现外设与存储器或存储器与存储器之间数据的高速传输,从而节省 CPU 资源来做其他操作。

产品有一个 DMA 控制器共 7 个通道。每个通道可管理多个 DMA 请求,但每个通道同一时刻只能响应 1 个 DMA 请求。每个通道可设置优先级,仲裁器可根据通道的优先级协调各个 DMA 通道对应的 DMA 请求的优先级。


每个DMA通道都有优先级设计,是不是意味着同一时刻仅支持一个DMA通道的运行?比如,如果我开启了Usart的接收功能后,此时,如果在等待接收的过程中,是不是就算是占用了DMA控制器?


有大佬给解释一下吗?或者有网友做过类似的实验吗?

使用特权

评论回复
沙发
真的问题不大| | 2025-4-22 16:48 | 只看该作者
不是吧,你看描述,他是可以设置优先级去协调DMA请求的

使用特权

评论回复
板凳
真的问题不大| | 2025-4-22 16:50 | 只看该作者
而且按照你的例子,等待接受是不算占用的,只有在实际数据传输时才会占用

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

17

帖子

0

粉丝