[牛人杂谈]

M031的PDMA功能

[复制链接]
5361|9
手机看帖
扫描二维码
随时随地手机跟帖
xixi2017|  楼主 | 2021-9-23 22:13 | 显示全部楼层 |阅读模式
在M0系列里支持PDMA的还真不多,这个就支持,非常给力
直接存储器访问(PDMA)控制器用于高速数据传输。PDMA控制器可以从一个地址到另一个地址传输数据,无需CPU介入。这样做的好处是减少CPU的工作量,把节省下的CPU资源做其他应用。PDMA控制器包含5个通道,每个通道支持内存和外设之间的数据传输和内存与内存之间的数据传输。

性能
 支持5个可独立配置的通道
 支持两种优先级选择(固定优先级和轮循优先级)
 支持8位,16位,32位数据传输
 支持源和目标地址自动增加或者固定,数据宽度支持字节,半字,字
 支持软件,I2C , SPI/I2S, UART, USCI, ADC, PWM和TIMER请求。
 支持Scatter-Gather模式,通过描述表链表执行灵活的数据传输。
 支持单笔和批量传输方式
 支持Time-out功能对于通道0和通道1


使用特权

评论回复
xixi2017|  楼主 | 2021-9-23 22:13 | 显示全部楼层
45914614c8b7ec694d.png
基本配置
 时钟源配置
– 通过PDMACKEN(CLK_AHBCLK[1])使能PDMA的外设时钟
 复位配置
– 通过PDMARST (SYS_IPRST0[2])复位PDMA控制器

使用特权

评论回复
xixi2017|  楼主 | 2021-9-23 22:15 | 显示全部楼层
功能描述
PDMA可以从一个地址到另一个地址传输数据,无需CPU介入。PDMA有5个独立通道,某一时刻只有一个通道工作,因此,PDMA 控制器支持两种通道优先级:固定优先级和调度优先级(round-robinpriority),PDMA控制器通道执行的优先级是从高到低的。PDMA控制器支持两种运行模式:基本模式和Scatter-gather模式。基本模式用于按照一个传输描述表格传输数据。Scatter-gather模式对于每个PDMA都有多个传输描述表格,所以PDMA控制器通过这些表格,实现灵活的数据传输,传输描述表数据结构包含了传送信息,例如:传输源地址,传输目的地址,传输计数,批量传输数据大小,传输类型和操作模式。
69816614c8bebd936e.png

PDMA 控制器也支持单一和成组数据的传输类型,请求源可以是软件请求,接口请求,内存之间的数据传输是使用软件请求。单一传输的意思是软件或接口准备好传输一个数据(每个数据需要一次请求),批量传输的意思是软件或接口将传输多个数据(多个数据仅需一次请求)
通道优先级
PDMA控制器支持两级通道优先等级,包括固定优先级和轮循调度优先级(round-robin priority)。固定优先级比轮循调度优先级(round-robin priority)的优先级别更高。如果多路通道设定为固定优先级或调度优先级(round-robin priority),高通道的优先级别也高。

使用特权

评论回复
onlycook| | 2021-9-24 10:30 | 显示全部楼层
不错的,感谢分享

使用特权

评论回复
xiaoqizi| | 2021-10-15 12:13 | 显示全部楼层
PDMA和DMA有什么区别呢

使用特权

评论回复
renzheshengui| | 2021-10-15 12:13 | 显示全部楼层
所有系列都有这个功能吗

使用特权

评论回复
wakayi| | 2021-10-15 12:14 | 显示全部楼层
可以同步进行数据传输吗

使用特权

评论回复
wowu| | 2021-10-15 12:14 | 显示全部楼层
这种方式真的非常给力

使用特权

评论回复
木木guainv| | 2021-10-15 12:16 | 显示全部楼层
最快传输速率能达到多少呢

使用特权

评论回复
feihongTC| | 2021-11-10 13:46 | 显示全部楼层
调试成功过吗,这个给出的BSP范例

使用特权

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

本版积分规则

115

主题

1698

帖子

1

粉丝