全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > 控制/MCU >

STM32单片机片上数字滤波器操作文档 快速入门数

时间:2025-06-23 16:53

人气:

作者:admin

标签: 数字滤波  STM32 

导读:这个文档,是为了帮助大家快速入门数字滤波器在单片机上的实现。...

本文来自看海的四代目徒弟:XJIE

大家好,这个文档,是为了帮助大家快速入门数字滤波器单片机上的实现。当然,大家在阅读完之后可能还会有一些疑问,大家可以自行去查阅资料。

上节课我们在STM32F103C8T6上实现了频率计的功能,我们在上次的基础上进行下一步的操作。

首先,关于数字滤波器分为FIR和IIR两种(如果不明白,需要去查阅资料),在这里我们关心我们怎么得到我们想要滤波器的参数。

我们打开matlab

wKgZO2hUn9KAZu0wAAE_OmoVLqU124.png

在命令行窗口中输入filterDesigner。

wKgZO2hUn9KAcLYvAAHugqMnqek546.png

我现在想设计一个IIR的低通滤波器,他的截止频率是10Hz,巴特沃斯型,这里的采样频率需要根据我们之前上课的时候设计的ADC的采样频率一致(250Hz)

wKgZO2hUn9KAV1AVAAIcvG_QNiI421.png

这个滤波器设计器有很多的功能,这个留给大家探索。

wKgZO2hUn9KAfX4sAAIqLhn0v8I596.png

依次点击目标->生成c头文件

wKgZO2hUn9KAMXtYAABRsAND1Oc798.png

直接点击生成,(记住自己保存在哪里了),然后我们找到我们保存STM32CubeMX生成的.ioc文件,接下来把刚刚生成的文件保存在如图所示的文件中。

wKgZO2hUn9KADtdqAAFdsAYl4DM948.png

wKgZO2hUn9OAa678AABhh57uwog734.png

wKgZO2hUn9OAClsIAAFEyOutAZI187.png

我们用记事本打开fdacoefs.h文件,他会告诉我们还需要添加一个.h文件

wKgZO2hUn9OAbHoPAAH7DWeiP0E739.png

我们找到这个文件,也复制到这个文件夹下。

wKgZO2hUn9OAW3NDAAFnAnpo5zY716.png

到这里基本的参数有关的生成以及,文件的移动已经完成了。接下来我们开始代码的操作。

(本文来自看海的四代目徒弟:XJIE

https://blog.csdn.net/NANY_ying?type=blog

https://github.com/xiaojie25)

wKgZO2hUn9OAJpOOAAEDLdt8hnE163.png

在main.c中包含刚刚我们添加的这两个文件。然后编译这个工程。

wKgZO2hUn9OAbIQLAACpFnH4KJg985.png

右键这个fdacoefs.h文件。打开它

wKgZO2hUn9OAUXmCAAI4azVMszk036.png

我们把里面的4个数组都剪切到mian.c中。

wKgZO2hUn9SAMB_9AAGOBhoFXDQ738.png

我们先定义两个结构体,用来记录我们的滤波器的参数。

wKgZO2hUn9SAXD2sAAFL7yU11Vc353.png

其中,Biquad是各个节(这个数字滤波器的知识)中的参数,IIRFilter是整个滤波器的结构体,然后我们在代码合适的地方写下这两个函数。

wKgZO2hUn9SAawmKAAOIs-mdpDM026.png

IIRFilter_Init是对滤波器的初始化,就是把我们刚刚生成的参数填入我们定义的滤波器,

IIRFilter_Process是有数据来的时候,对数据进行滤波。

wKgZO2hUn9SAMIOAAAEz5CbOdPo516.png

先定义一个iir滤波器并对其进行初始化。

wKgZO2hUn9SAXPLuAAFr5J3YSxk861.png

我们把ADC采集到的电压通过滤波器滤波,我们来看看效果吧!

我左边给的是5Hz的信号,右边给的是15Hz的信号,都是100mVpp,由于低通滤波的截至频率是10Hz,因此5Hz的信号通过了滤波器,而15Hz的信号被滤波器衰减。

wKgZO2hUn9SASXs7AAB5zp8hiWc921.png

By the way,整个代码对初学者来说可能不是这么好理解,这是对你们的一个挑战也是机遇

本文来自看海的四代目徒弟:XJIE

https://blog.csdn.net/NANY_ying?type=blog

https://github.com/xiaojie25

更多Multisim运算放大器的学习内容!

尽在《运放秘籍》

wKgZO2hUn9SAX53hAAOJVgjQEWs035.png

【淘宝】https://e.tb.cn/h.hchV7elOIgvyGd8?tk=QEVgVt9nBw6 CZ321 「运放秘籍第一部_运算放大器Multisim仿真课程_工程师看海运放教程

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信