硬汉嵌入式论坛

 找回密码
 立即注册
查看: 451|回复: 6
收起左侧

[DMA] STM32H743——DMAMUX同步触发和外部触发的一些疑问

[复制链接]

13

主题

89

回帖

128

积分

初级会员

积分
128
发表于 2023-8-29 19:38:29 | 显示全部楼层 |阅读模式
1、DMAMUX的同步触发和外部触发都有类似的结构体成员 RequestNumber ,它代表产生一次触发信号,可以连续执行DMA的次数,


对于DMA的模式在Normal和Circular来讲,会不会影响工作过程?,比如此时DMA工作在Circular模式下,假如RequestNumber=5次,

那DMA只要开启后就不会停下来了,会自动进行下一次搬运过程,那么这个时候的RequestNumber的个数是不是就没有意义了???

2、我只是在CubeMx找到了同步触发的DMA配置选项(如下图),外部信号触发的配置选项没有找到,是不是CubeMx没做?


3、由于DMAMUX的同步触发和外部触发的触发源是一样的,实际使用中,该如何确定是用同步触发还是外部触发功能?
微信截图_20230829193518.png
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106660
QQ
发表于 2023-8-30 10:50:17 | 显示全部楼层
1、RequestNumber是以最快速度连续访问的次数,比如我们定时器1KHz触发DMA,你这里配置为5的话,可以定时器触发1次,连续5次DMA传输。

2和3,看这个帖子:

区分STM32H7的DMAMUX中同步触发源和外部触发源以及配套的几个实战案例
https://www.armbbs.cn/forum.php?mod=viewthread&tid=98811

回复

使用道具 举报

13

主题

89

回帖

128

积分

初级会员

积分
128
 楼主| 发表于 2023-8-30 11:33:44 | 显示全部楼层
本帖最后由 qq1646544 于 2023-8-30 14:23 编辑
eric2013 发表于 2023-8-30 10:50
1、RequestNumber是以最快速度连续访问的次数,比如我们定时器1KHz触发DMA,你这里配置为5的话,可以定时器 ...

我可不可以理解为,假如1KHZ触发DMA,RequestNumber=5,若此时的DMA_SxNDTR=3的话,每1ms触发5次DMA请求,,每次DMA将传输3个数据到目的地址,也就是每1ms传输3*5=15个数据到目的地地址?
回复

使用道具 举报

13

主题

89

回帖

128

积分

初级会员

积分
128
 楼主| 发表于 2023-9-2 09:55:44 | 显示全部楼层
eric2013 发表于 2023-8-30 10:50
1、RequestNumber是以最快速度连续访问的次数,比如我们定时器1KHz触发DMA,你这里配置为5的话,可以定时器 ...

硬汉哥,感觉RequestNumber和Circular是不是有点冲突,因为circular只要有一个DMA请求来不就一直循环下去吗,开启DMA搬运完后又自动开启下一轮传输,那这样怎么还能做到周期性触发?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106660
QQ
发表于 2023-9-4 00:10:59 | 显示全部楼层
qq1646544 发表于 2023-8-30 11:33
我可不可以理解为,假如1KHZ触发DMA,RequestNumber=5,若此时的DMA_SxNDTR=3的话,每1ms触发5次DMA请求 ...

理解有点偏差,RequestNumber=5的话,是每ms触发1次,每次DMA以最快速度,连续进行5次DMA传输。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106660
QQ
发表于 2023-9-4 00:11:48 | 显示全部楼层
qq1646544 发表于 2023-9-2 09:55
硬汉哥,感觉RequestNumber和Circular是不是有点冲突,因为circular只要有一个DMA请求来不就一直循环下去 ...

不冲突。Circular只是用于控制循环传输。
回复

使用道具 举报

13

主题

89

回帖

128

积分

初级会员

积分
128
 楼主| 发表于 2023-9-4 09:03:04 | 显示全部楼层
eric2013 发表于 2023-9-4 00:11
不冲突。Circular只是用于控制循环传输。

我悟了!!!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-4-28 08:31 , Processed in 0.310402 second(s), 29 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表