你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

基于STM32采集正弦幅值经验分享

[复制链接]
攻城狮Melo 发布时间:2023-5-1 16:14
采集信号:采集的是400HZ正弦信号,由于单片机采集范围是0-3.3V,将输入信号进行偏执,偏置1.5V,

采集方法:使用定时器10u出发一次,正弦信号一个周期2.5ms,一个周期采集250次

信号处理:采集信号计算每个周期最大值与最小值差值,采集100个周期,再取平均值,处理后上传结果与输入信号基本符合。

设计中遇见问题

1.采集的最大值与最小值相同,计算结果为0,最终发现当通道采样时间为最小值ADC_SAMPLETIME_3CYCLES时才可以采集到各个采样点数值。

61a8c415f5a849b9859d513859257f34.png

定时器配置

系统周期为72M,定时器中断10us触发一次

d463e4a73aeb48ba9bdbb3d3b853c8e6.png

回调函数中使能定时器标志位

8b2d9aa6489a462aa12da5b570ed4c4f.png

标志位使能后,打开ADC采集,并取最大值和最小值,同时记录采集次数,共采集270次,完成一次采集需要2.7ms,输入信号周期为2.5ms,因此2.7ms的采集不会出现漏采问题确保2.7ms的采集时间内有一个完整的周期。

5650b5a631664ac6a5761b25336ffa31.png

将采集100个周期的差值取均值,然后通过串口上传到上位机

d11e32e7e43a417ea311aa11f52f9ea5.png

解析数据后,输入信号与反馈信号基本吻合。

88b2b224e65a4de097ffc1e3f4e92ff2.png

ADC1的时钟频率为32M,2分频后为16M,完成一次采集需要3个时钟周期,完成ADC一次采集所需时间小于1us。
————————————————
版权声明:qq_35355263
如有侵权请联系删除


收藏 评论0 发布时间:2023-5-1 16:14

举报

0个回答

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版