[STM32F4] STM32F4究竟能不能2.4M采集ADC

[复制链接]
 楼主| changle11sdo5 发表于 2017-9-17 13:46 来自手机 | 显示全部楼层 |阅读模式
先不考虑精度问题,以及多ADC模块交替采集提高采样率的方法,

单ADC模块最高速也只有2.4M,就算开了DMA,
那么,应该也要等DMA搬走ADC值寄存器里的数据后,ADC模块才能填装ADC值寄存器,这样就拖慢了,

还有,用软件或DMA断断续续地搬1字节,究竟谁快?(不用考虑拖慢其它功能代码的问题)

打赏榜单

yjmwxwx 打赏了 6.00 元 2021-08-24

aozima 发表于 2017-9-17 14:30 | 显示全部楼层
速度由外设决定,但DMA可以做到接近0延时。
且使用DMA时,CPU可以去做别的,比如示波器的UI显示和数据处理。
hanzhen654 发表于 2017-9-17 14:39 | 显示全部楼层
f4应该做不到这么快吧。
mmuuss586 发表于 2017-9-17 16:27 | 显示全部楼层
多通道交叉采样也不错;
 楼主| changle11sdo5 发表于 2017-9-17 16:46 来自手机 | 显示全部楼层
aozima 发表于 2017-9-17 14:30
速度由外设决定,但DMA可以做到接近0延时。
且使用DMA时,CPU可以去做别的,比如示波器的UI显示和数据处理 ...

只要高速采集ADC值,不用考虑占用CPU的问题,
DMA速度应该也是由系统时钟决定,
所以问软件搬数据还是DMA搬数据快?
 楼主| changle11sdo5 发表于 2017-9-17 16:52 来自手机 | 显示全部楼层
hanzhen654 发表于 2017-9-17 14:39
f4应该做不到这么快吧。

也有可能行,DMA利用ADC采样时的3个时钟搬出ADC值寄存器的数据,

只不过这么小的时间不好测试是否靠谱
 楼主| changle11sdo5 发表于 2017-9-17 16:53 来自手机 | 显示全部楼层
mmuuss586 发表于 2017-9-17 16:27
多通道交叉采样也不错;

不考虑多ADC模块交替采集提高采样率的方法
sonicll 发表于 2017-9-18 09:16 | 显示全部楼层
F4可以到2.4MSps的,我用F407 AD采样带DMA,然后FFT,按照2.4M采样速率计算信号频率,与实际输入信号频率是一致的
feelhyq 发表于 2017-9-18 09:44 | 显示全部楼层
aozima 发表于 2017-9-17 14:30
速度由外设决定,但DMA可以做到接近0延时。
且使用DMA时,CPU可以去做别的,比如示波器的UI显示和数据处理 ...

feelhyq 发表于 2017-9-18 09:50 | 显示全部楼层
ADC一次转换时间最小为3+12 = 15个时钟周期,最大为480+12 = 492个时钟周期。ADC的一个时钟周期计算如下:APB2频率 / ADC分频,举个例子,如果APB2时钟为 84MHz,ADC分频为2分频,那么ADC的频率为42MHz,一个时钟周期为0.023us, 因此最小转换时间为 15时钟周期*1us = 0.345us(2.9MHz), 最大492us(88.5KHz)。
mmuuss586 发表于 2017-9-18 09:59 | 显示全部楼层
changle11sdo5 发表于 2017-9-17 16:53
不考虑多ADC模块交替采集提高采样率的方法

那最快只能这么快,实际还要打一些折扣;
xiaox314 发表于 2017-9-18 20:38 | 显示全部楼层
差不多可以的,3个周期的采样周期,满频跑,采集端加个跟随,数值没问题
whtwhtw 发表于 2017-9-19 16:02 | 显示全部楼层
对的,需要加跟随
Ryze 发表于 2017-9-19 17:13 | 显示全部楼层
采集端加跟随是什么目的呢??
hanzhen654 发表于 2017-9-19 21:53 | 显示全部楼层
changle11sdo5 发表于 2017-9-17 16:52
也有可能行,DMA利用ADC采样时的3个时钟搬出ADC值寄存器的数据,

只不过这么小的时间不好测试是否靠谱 ...

那你试一下,多尝试几次,不行用F7试试。
huangqi412 发表于 2017-9-20 11:21 | 显示全部楼层
F3速度5M的飘过, 显然是DMA一次采集指定长度,比如10K,不能无限采集是因为没法实时处理或者传出去(F4有高速USB,可以实时传出去,也就可以无限采集).       DMA会占总线带宽,你2.4M假设毛估占3M,你单片机运行假设50M(难道你买个F4只运行10M?),  才占了 3/50=6%. CPU占用约等于0。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

29

主题

697

帖子

5

粉丝
快速回复 在线客服 返回列表 返回顶部