OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5510|回复: 4

STM32F4的DMA能否实现这样的功能?

[复制链接]

4

主题

7

帖子

0

精华

初级会员

Rank: 2

积分
55
金钱
55
注册时间
2015-11-2
在线时间
17 小时
发表于 2016-2-14 11:02:35 | 显示全部楼层 |阅读模式
1金钱
STM32F4的DMA能否实现这样的功能?

(1)外设到内存的传输,外设地址固定不变,内存起始地址addr,每次传输1B
(2)用TIM触发DMA,例如每1us传输一次,每次传输后,内存地址+1,外设地址不变
(3)当完成n次传输后(例如n = 1024,即传输了1kB,内存指针位于addr+n处),产生中断,内存指针复位到addr(起始值)
(4)重复上述过程


最佳答案

查看完整内容[请看2#楼]

可以 9.3.7 指针递增 根据DMA_SxCR 寄存器中PINC 和MINC 位的状态,外设和存储器指针在每次传输后可以 自动向后递增或保持常量。 通过单个寄存器访问外设源或目标数据时,禁止递增模式十分有用。 如果使能了递增模式,则根据在DMA_SxCR 寄存器PSIZE 或MSIZE 位中编程的数据宽 度,下一次传输的地址将是前一次传输的地址递增1(对于字节)、2(对于半字)或4(对 于字)。 为了优化封装操作,可以不管AHB 外设端口上传 ...
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

3

主题

548

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1383
金钱
1383
注册时间
2015-2-3
在线时间
197 小时
发表于 2016-2-14 11:02:36 | 显示全部楼层
可以
9.3.7  指针递增
根据DMA_SxCR 寄存器中PINC 和MINC 位的状态,外设和存储器指针在每次传输后可以
自动向后递增或保持常量。
通过单个寄存器访问外设源或目标数据时,禁止递增模式十分有用。
如果使能了递增模式,则根据在DMA_SxCR 寄存器PSIZE 或MSIZE 位中编程的数据宽
度,下一次传输的地址将是前一次传输的地址递增1(对于字节)、2(对于半字)或4(对
于字)。
为了优化封装操作,可以不管AHB 外设端口上传输的数据的大小,将外设地址的增量偏移大
小固定下来。DMA_SxCR 寄存器中的PINCOS 位用于将增量偏移大小与外设AHB 端口或
32 位地址(此时地址递增4)上的数据大小对齐。PINCOS 位仅对AHB 外设端口有影响。
如果将PINCOS 位置1,则不论PSIZE 值是多少,下一次传输的地址总是前一次传输的地址
递增4(自动与32 位地址对齐)。但是,AHB 存储器端口不受此操作影响。
如果AHB 外设端口或AHB 存储器端口分别请求突发事务,为了满足AMBA 协议(在固定地
址模式下不允许突发事务),则需要将PINC 或MINC 位置1。
回复

使用道具 举报

58

主题

6293

帖子

1

精华

资深版主

Rank: 8Rank: 8

积分
11474
金钱
11474
注册时间
2014-4-1
在线时间
1297 小时
发表于 2016-2-14 11:51:36 | 显示全部楼层

1、可以;
2、可以;
3、可以;
4、用程序再次启动。


回复

使用道具 举报

22

主题

751

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1605
金钱
1605
注册时间
2015-6-10
在线时间
222 小时
发表于 2016-2-14 16:13:23 | 显示全部楼层
搜一下用DAC  dma  产生正弦波的程序
和你说的这个一样
回复

使用道具 举报

1

主题

78

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
211
金钱
211
注册时间
2015-12-10
在线时间
49 小时
发表于 2016-2-18 02:28:04 | 显示全部楼层
对于3,用DMA_Mode_Circular,不用每次人为复位地址行不行?
逆水行舟不进则退
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-26 03:50

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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