项目简介
本项目是一款基于Arduino的音乐音符调谐器,借助OLED显示屏(SSD1306/SH1106)显示音高和频率信息。它能检测音频信号频率并映射到具体音符和八度,适用于音乐爱好者、乐器制造者以及音乐教室等场景。
项目的主要特性和功能
- OLED显示屏:利用U8g2库驱动,可显示音高、频率、调谐指示器等信息。
- 音高检测:通过中断服务例行程序检测音频信号频率,并用移动平均滤波器平滑频率读数。
- 音高映射:将音频信号频率映射到具体音高(如C、D、E等)和八度。
- 显示功能:显示当前音高、频率以及调谐指示器,音频信号被剪裁时显示警告。
- 自定义显示:支持用户自定义OLED屏幕显示内容。
- 频率平滑选项:可调整频率平滑度,提高音高检测准确性。
安装使用步骤
- 硬件准备:准备Arduino开发板、OLED显示屏(SSD1306/SH1106)、音频信号输入设备(如麦克风)及相关连接线。
- 软件准备:安装Platform.io开发环境,并配置Arduino开发板。
- 代码下载:下载项目源码文件,解压至Platform.io项目目录。
- 库安装:安装项目所需的U8g2库和其他依赖库。
- 配置代码:根据需求配置相关参数,如OLED显示屏型号、音频输入设备等。
- 编译与烧录:使用Platform.io编译代码,将编译结果烧录至Arduino开发板。
- 连接与测试:连接音频信号输入设备和OLED显示屏,测试音高检测与显示功能。
使用注意事项
- 确保音频输入信号质量,以获取更准确的音高检测结果。
- 根据实际需求调整频率平滑选项,获得最佳音高检测效果。
- 使用自定义显示功能时,遵循U8g2库的规范和要求。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】