littlebot
Published on 2025-03-31 / 1 Visits
0

【源码】基于Arduino的FM收音机系统

项目简介

本项目借助Arduino,利用Si4703这款SiliconLab制造的FM对应DSP收音机IC,以ATmega328p作为控制器,通过I2C接口控制Si4703,实现了FM收音机的核心功能。系统采用必要最小限的构成,能实现接收局切换和音量调节,还可将接收局名、频率和音量值显示在OLED上,并且接收局和音量值会存储在EEPROM中。

项目的主要特性和功能

  1. 简单的硬件构成:由ATmega328p控制器、SD1306 128x64 OLED显示装置(可选)、三个战术开关以及Xtal振荡器、电容和电阻等组成。
  2. 便捷的操作方式:通过一个战术开关切换预设的接收局,另外两个战术开关调节音量。
  3. 信息显示功能:可在OLED上显示接收局名、频率和音量值。
  4. 数据存储功能:接收局和音量值会存储在EEPROM中,开关关闭后数据不丢失。

安装使用步骤

安装

  1. 将代码以ZIP形式下载。
  2. 在ArduinoIDE中注册库。
  3. 从ArduinoIDE打开si4703_breakout_oled_master.ino文件。
  4. 若“验证·编译”成功,先进行“另存为”操作;若出现库缺失的错误,需进行添加(例如,对于SD1306 OLED显示装置,可在IDE的库管理器中搜索U8glib)。
  5. 在函数updatestation()中,设置想要接收的本地FM电台的台名和频率。
  6. 在函数station_setting()中,更改想要接收的本地FM电台的最大台数。

使用

系统运行时,操作状态会在串口监视器(9600波特)中显示。可通过战术开关切换预设的电台或接收频率,以及调节音量。

下载地址

点击下载 【提取码: 4003】