硬汉嵌入式论坛

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

[技术讨论] STM32F407 DMA->FSMC->AD7616 模式难点

[复制链接]

1

主题

2

回帖

5

积分

新手上路

积分
5
发表于 2023-4-12 11:10:47 | 显示全部楼层 |阅读模式
AD7616转换完成,会下拉BUSY位,说明转换完成。要连续FSMC连续读16次 宽度为16的数据。

1、现在是用PWN驱动AD7616转换,BUSY位配置下拉中断。以前是在BUSY 中断读采样数据,现在采样点数过多,过于频繁进入中断。 现在想用DMA方法,转换完成可以触发DMA自动传16次 16位的数据到指定的缓存。   

2、参考了类似的AD7606 DMA模式,它是突发一次只可以读取8次 16位的数据。  而AD7616是16次 16位的数据,这要什么好方法。

回复

使用道具 举报

0

主题

213

回帖

213

积分

高级会员

积分
213
发表于 2023-4-12 15:13:09 | 显示全部楼层
DMA 的M2M模式,使用DMA2。触发busy中断后,启动DMA进行传输即可。
回复

使用道具 举报

1

主题

2

回帖

5

积分

新手上路

积分
5
 楼主| 发表于 2023-4-12 16:38:36 | 显示全部楼层
regbbs 发表于 2023-4-12 15:13
DMA 的M2M模式,使用DMA2。触发busy中断后,启动DMA进行传输即可。

这还要进入中断处理,启动DMA传输??
回复

使用道具 举报

0

主题

213

回帖

213

积分

高级会员

积分
213
发表于 2023-4-12 17:09:07 | 显示全部楼层
simonhao 发表于 2023-4-12 16:38
这还要进入中断处理,启动DMA传输??

用PWM触发DMA传输
回复

使用道具 举报

1

主题

2

回帖

5

积分

新手上路

积分
5
 楼主| 发表于 2023-4-12 19:39:43 | 显示全部楼层
regbbs 发表于 2023-4-12 17:09
用PWM触发DMA传输

这要怎么触发。BUSY中断触发PWN??
回复

使用道具 举报

98

主题

340

回帖

634

积分

金牌会员

积分
634
发表于 2023-5-16 09:50:10 | 显示全部楼层

回帖奖励 +10 个金币

相比于7606,7616不支持在采样中读取上次结果,再者突发读取一次8个16位数据已经到STM32的上限了,所以也无法一次把16个结果获取过来。
我希望AD累计采集半个周波之后再触发一次中断,期间不需要任何CPU的参与。AD7606可以实现,AD7616目前也没找到太好的方式。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-20 08:00 , Processed in 0.208222 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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