打印

stm32 ADC+DMA采样速度疑问。

[复制链接]
870|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
石头张|  楼主 | 2018-6-7 12:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我这个程序的目的:用STM32的ADC以最快速度采集(连续采集模式)3000个数据。同时通过DMA将数据传到存储器(内存地址递增模式,并开辟相应大小数据空间。)完成上述工作之后,通过串口将猜到的3000个数据传输到上位机。

出现的问题:主要是前两步,速度太慢。采集3000个点传到存储器一共需要20秒的样子(粗略估计)。

我的计算:我用内部时钟,9倍频,系统时钟72MHz。ADC时钟由系统时钟8分频得来,9MHz。采样时间1.5个时钟周期。这样来算采集一个数据时间1.56us。3000个点不到5个毫秒。算上DMA传输时间(DMA时钟为系统时钟)最多也不会超过1S钟啊。为什么我采样需要那么长的时间??

如果有用过这种方式采集数据的,最快速度能到多少??程序整体发不上来,我写的不够精简,有点大。我把ADC程序和主函数程序放上来,请大家指教。另:我的程序是根据野火ADC(DMA)程序更改而来。主函数只做采样和数据传输,不干别的活。



[/td][/tr][/table]

<div class="pattl">










部分程序.zip

使用特权

评论回复

相关帖子

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

本版积分规则

446

主题

446

帖子

0

粉丝