基于Arduino nano 的RDA5807M的收音机(一)

时间:2024-03-26 13:23:04

一:准备工作

软件:1、arduino-1.8.8-windows.exe(可去官网直接下载 https://www.arduino.cc/en/Main/Software

           2、串口调试助手

           3、串口驱动CH340(arduion 中文社区有的下载)

         

基于Arduino nano 的RDA5807M的收音机(一)

硬件:下图是硬件物料

 

                                基于Arduino nano 的RDA5807M的收音机(一)

 二、测试单片机的好坏

直接将单片机接到PC的USB接口,可以用串口通信程序测试,程序如下

                      基于Arduino nano 的RDA5807M的收音机(一)

                         基于Arduino nano 的RDA5807M的收音机(一)

 

 

三、认识RDA5807m模块

                       基于Arduino nano 的RDA5807M的收音机(一) 

四、Arduino nano 引脚原理图

基于Arduino nano 的RDA5807M的收音机(一)

五、硬件焊接与连接

  收音模块焊接了1、2、3、5、6、7、10引脚,其中天线需接长一点。其中电平转换模块的两个低电平引脚连接了收音模块的6、7引脚,高电平则接到arduino板子的A4、A5引脚(IIC)

基于Arduino nano 的RDA5807M的收音机(一)                        基于Arduino nano 的RDA5807M的收音机(一)

五、程序(参考:https://www.basemu.com/the-arduino-fm-radio-build.html

将代码上传到Arduino之前,一定记得修改频率,否则什么也收不到,频率可以是你当地的某一FM频率。

在编译时会报错,是因为还需在arduino中添加radio库,库文件下载地址: https://github.com/mathertel/Radio/archive/master.zip.(该库已上传)

 

/*
   - Arduino FM Radio with RDA5807M
   - Sketch for Initial Tryout
   - Based on a Library created by Matthias Hertel
*/
#include <Arduino>;
#include <Wire>;
#include <radio>;
#include <RDA5807M>;

#define FIX_BAND RADIO_BAND_FM  //无线电波段 - FM
#define FIX_STATION 9950      //频率设置 - 99.50 MHz
#define FIX_VOLUME   40         //音量 - 40

RDA5807M radio; 

void setup() {
  // 打开串口
  Serial.begin(57600);
  Serial.println(“My FM Radio”);
  delay(200);
  radio.init();
  radio.debugEnable();
  radio.setBandFrequency(FIX_BAND, FIX_STATION);
  radio.setVolume(FIX_VOLUME);
  radio.setMono(false);
  radio.setMute(false);
}

void loop() {
  char s[12];
  radio.formatFrequency(s, sizeof(s));
  Serial.print(“Station:”);
  Serial.println(s);
  Serial.print(“Radio:”);
  radio.debugRadioInfo();
  Serial.print(“Audio:”);
  radio.debugAudioInfo();
  delay(3000);
}

将收音模块的左声道右声道接到耳机上,5807的GND接到耳机最内圈,(根据自己的耳机接线)即可听到广播

                           基于Arduino nano 的RDA5807M的收音机(一)