littlebot
Published on 2025-04-13 / 0 Visits
0

【源码】基于Arduino的FIR与IIR滤波器控制系统

项目简介

本项目基于Arduino实现了带通FIR滤波器和IIR谐振器滤波器。FIR滤波器可检测钢琴音符频率是否在特定带宽内,并控制LED亮灭;IIR滤波器通过谐振器对语音不同频率成分滤波,依据语音内容(“是”或“否”)控制不同颜色LED亮灭。

项目的主要特性和功能

  1. FIR滤波器:利用Matlab的filterDesigner函数设计,能检测钢琴音符频率。当音符频率处于900 - 1100Hz带宽时点亮LED,在850Hz和1150Hz处保证至少 - 8dB的衰减。
  2. IIR滤波器:采用谐振器对语音频率成分滤波,根据语音内容控制LED。检测到“否”点亮红色LED,检测到“是”点亮绿色LED,其他情况两LED均熄灭。
  3. LED控制机制:通过比较滤波器输出能量与原始输入能量的比值(Ey/Ex)控制LED亮灭,当Ey/Ex > 0.9(90%)时点亮相应LED。
  4. 采样频率:系统采样频率为8000Hz。

安装使用步骤

  1. 确保已下载本项目的源码文件。
  2. 打开Arduino IDE软件。
  3. 用USB线将Arduino开发板连接到计算机。
  4. 在Arduino IDE中选择对应的开发板型号和端口。
  5. 打开下载的项目源码文件。
  6. 点击Arduino IDE中的上传按钮,将代码上传到开发板。
  7. 上传完成后,系统开始运行,按设计功能对钢琴音符和语音进行检测并控制LED。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】