OpenEdv-开源电子网

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

请教一下,关于ADC采样周期设置问题

[复制链接]

209

主题

771

帖子

0

精华

初级会员

Rank: 2

积分
134
金钱
134
注册时间
2018-3-26
在线时间
286 小时
发表于 2022-8-18 16:06:51 | 显示全部楼层 |阅读模式
20金钱
请教一下,我现在用STM32L4的片子进行ADC采集,软件触发,ADC时钟是32MHZ,如果想1S采样200次,采样周期应该怎么设置

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

0

主题

668

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1926
金钱
1926
注册时间
2021-8-13
在线时间
262 小时
发表于 2022-8-18 17:46:43 | 显示全部楼层
回复

使用道具 举报

16

主题

426

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2676
金钱
2676
注册时间
2018-11-8
在线时间
431 小时
发表于 2022-8-18 19:48:46 | 显示全部楼层
随意配 ADC时钟频率太高了 最慢的转换速度也就653个时钟周期 32M速度下理论上1s能采4.9万次
回复

使用道具 举报

209

主题

771

帖子

0

精华

初级会员

Rank: 2

积分
134
金钱
134
注册时间
2018-3-26
在线时间
286 小时
 楼主| 发表于 2022-8-19 08:56:07 | 显示全部楼层
babyrabbit 发表于 2022-8-18 19:48
随意配 ADC时钟频率太高了 最慢的转换速度也就653个时钟周期 32M速度下理论上1s能采4.9万次

我在主函数里采集,写的是每5ms采集发送一次,但是感觉不准
回复

使用道具 举报

11

主题

2103

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4588
金钱
4588
注册时间
2015-1-10
在线时间
574 小时
发表于 2022-8-19 11:25:54 | 显示全部楼层
采样周期随便写
回复

使用道具 举报

209

主题

771

帖子

0

精华

初级会员

Rank: 2

积分
134
金钱
134
注册时间
2018-3-26
在线时间
286 小时
 楼主| 发表于 2022-8-19 13:03:48 | 显示全部楼层

感觉while(1),每采集一个,延时5ms,不是太准确啊
回复

使用道具 举报

11

主题

2103

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4588
金钱
4588
注册时间
2015-1-10
在线时间
574 小时
发表于 2022-8-19 14:21:41 | 显示全部楼层
支持者2400 发表于 2022-8-19 13:03
感觉while(1),每采集一个,延时5ms,不是太准确啊

你这样用TIM不香吗?更新中断里面触发ADC
回复

使用道具 举报

16

主题

426

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2676
金钱
2676
注册时间
2018-11-8
在线时间
431 小时
发表于 2022-8-19 20:41:46 | 显示全部楼层
支持者2400 发表于 2022-8-19 08:56
我在主函数里采集,写的是每5ms采集发送一次,但是感觉不准

不准是多不准 而且不准那也是你的延时函数不准吧-.-
ADC采集一次的时间误差和5ms比应该完全可以无视吧
回复

使用道具 举报

22

主题

130

帖子

0

精华

高级会员

Rank: 4

积分
600
金钱
600
注册时间
2019-3-27
在线时间
142 小时
发表于 2022-8-19 23:27:10 | 显示全部楼层
本帖最后由 ZHANQIANKUN 于 2022-8-20 19:12 编辑

。。。。。。
回复

使用道具 举报

22

主题

130

帖子

0

精华

高级会员

Rank: 4

积分
600
金钱
600
注册时间
2019-3-27
在线时间
142 小时
发表于 2022-8-19 23:32:12 | 显示全部楼层
本帖最后由 ZHANQIANKUN 于 2022-8-20 19:13 编辑

1秒200个ADC,那就是一个ADC要5毫秒。 可以开启DMA采样。
设置分配为128.
32000000/128 = 250000HZ.
那么一个ADC周期就是.
1/250000 = 0.000004秒。
在设置采样周期640.5
那么采样一个ADC耗费时间就是
0.000004*(640.5*12.5) = 0.002612秒。
在开启过采样x2
那一个ADC耗费时间就是
0.002612*2 = 0.005224秒,就接近了
回复

使用道具 举报

209

主题

771

帖子

0

精华

初级会员

Rank: 2

积分
134
金钱
134
注册时间
2018-3-26
在线时间
286 小时
 楼主| 发表于 2022-8-23 16:12:25 | 显示全部楼层
阿侑kevin 发表于 2022-8-19 14:21
你这样用TIM不香吗?更新中断里面触发ADC

我用STM32L475RCT6的单片机,用TIM8去触发ADC,进不去TIM8_UP_IRQHandler中断
回复

使用道具 举报

11

主题

2103

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4588
金钱
4588
注册时间
2015-1-10
在线时间
574 小时
发表于 2022-9-13 11:40:31 | 显示全部楼层
支持者2400 发表于 2022-8-23 16:12
我用STM32L475RCT6的单片机,用TIM8去触发ADC,进不去TIM8_UP_IRQHandler中断

中断是不是开错了
回复

使用道具 举报

5

主题

41

帖子

0

精华

初级会员

Rank: 2

积分
133
金钱
133
注册时间
2021-11-28
在线时间
26 小时
发表于 2023-7-26 09:48:00 | 显示全部楼层
请教各位大佬,如果我使用定时器触发ADC采样,假如我设置定时器触发频率是10k,进行1024个点的采样,那么如何确定好采样周期的设置
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2024-11-24 04:46

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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