TEA5767 FM Radio Module

TEA5767 Arduino 收音机模块资料

适用于 Arduino UNO / Nano 的 FM 收音机模块资料页。先给客户看接线、供电、天线和常见问题,再进入资料包或淘宝店铺。

模块类型 FM 收音机模块
主控芯片 TEA5767 / TEA5767HN
I2C控制接口
76-108MHz 频段
5V常见模块供电

页面使用公开资料和本地资料包目录信息整理。没有使用客户截图、订单或聊天隐私。

TEA5767 Arduino 收音机模块

淘宝 SKU:O27

SKU O27
进入淘宝购买

Overview

模块介绍

TEA5767 是常见的 FM 收音机模块,Arduino 通过 I2C 控制频率、搜索、静音等功能。模块通常带音频输出口和天线接口,适合 Arduino 入门、I2C 演示和收音机小制作。

控制方式

常见 Arduino 模块使用 I2C,UNO/Nano 一般连接 SDA=A4、SCL=A5。

音频输出

音频从模块耳机座或 L/R 输出端接耳机、功放模块或有源音箱。

天线很重要

没有天线或天线接触不好,会表现为杂音大、搜不到台或信号弱。

Wiring

Arduino UNO / Nano 接线图

这张图是自绘无水印示意图,适合放进网站和客服说明。

TEA5767 收音机模块接 Arduino UNO 接线图
Arduino 测试代码
/// Arduino FM receiver with TEA5767
/// 资料包原始 Arduino 例程,已把旧版 Wire.send / Wire.receive
/// 改成新版 Arduino IDE 可用的 Wire.write / Wire.read。

#include <Wire.h>
#include <LiquidCrystal.h>

#define Button_next 6
#define Button_prev 7

unsigned char search_mode = 0;
unsigned char frequencyH = 0;
unsigned char frequencyL = 0;
unsigned int frequencyB;
double frequency = 87.5;
double freq_available = 0;
int b = 0;
int c = 0;

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

void setup() {
  Wire.begin();
  lcd.begin(16, 2);

  pinMode(Button_next, INPUT);
  digitalWrite(Button_next, HIGH);
  pinMode(Button_prev, INPUT);
  digitalWrite(Button_prev, HIGH);

  frequencyB = 4 * (frequency * 1000000 + 225000) / 32768;
  frequencyH = frequencyB >> 8;
  frequencyL = frequencyB & 0XFF;

  Wire.beginTransmission(0x60);
  Wire.write(frequencyH);
  Wire.write(frequencyL);
  Wire.write(0xB0);
  Wire.write(0x10);
  Wire.write(0x00);
  Wire.endTransmission();
}

void loop() {
  unsigned char buffer[5];

  lcd.setCursor(0, 0);
  Wire.requestFrom(0x60, 5);

  if (Wire.available()) {
    for (int i = 0; i < 5; i++) {
      buffer[i] = Wire.read();
    }

    freq_available = (((buffer[0] & 0x3F) << 8) + buffer[1]) * 32768 / 4 - 225000;
    lcd.print("FM ");
    lcd.print((freq_available / 1000000));

    lcd.setCursor(0, 1);
    lcd.print("Level: ");
    lcd.print((buffer[3] >> 4));
    lcd.print("/16 ");
    if (buffer[2] & 0x80) lcd.print("STEREO");
    else lcd.print("MONO");
  }
}
下载完整 Arduino 例程
Arduino UNO Wire.begin() 5V GND A4 A5
TEA5767 等待运行 VCC GND SDA SCL
  1. 等待供电
  2. 等待 I2C 通信
  3. 等待设置频率
  4. 等待音频输出
TEA5767 模块Arduino UNO / Nano说明
VCC5V常见模块接 5V 更稳定;具体仍以手里模块标识为准。
GNDGND必须共地。
SDAA4I2C 数据线。
SCLA5I2C 时钟线。
Audio / Earphone耳机 / 功放 / 有源音箱音频输出,不接 Arduino IO。
ANT天线建议接好拉杆天线或导线天线。

Arduino Code

资料包 Arduino 例程说明

这里使用本地资料包里的 Arduino TEA5767 收音机源码,不再使用临时演示程序。原例程年代较早,新版 Arduino IDE 需要把 Wire.send() / Wire.receive() 改为 Wire.write() / Wire.read()

1TEA5767:VCC 接 5V,GND 接 GND,SDA 接 A4,SCL 接 A5。
21602 LCD:RS=12,E=11,D4=5,D5=4,D6=3,D7=2。
3按键:下一台接 D6,上一台接 D7,程序里使用内部上拉。
4接耳机或功放,再接天线,上传完整例程测试 FM 频率和信号强度。

FAQ

常见问题与售后排查

接上以后没有声音怎么办?

先确认耳机/功放接在模块音频输出口,不是接 Arduino;再确认频率设置为当地有台的 FM 频率,并接好天线。

为什么杂音很大?

优先检查天线、供电和音频线。天线太短、供电不稳、音频线接触不好都会导致杂音明显。

UNO 和 Nano 接线一样吗?

常见 UNO/Nano 的 I2C 都是 SDA=A4、SCL=A5。Mega、Leonardo、ESP32 等板子需要按对应开发板的 I2C 引脚连接。

能不能直接接喇叭?

模块输出通常是小信号音频,建议接耳机、有源音箱或功放模块,不建议直接推动大功率喇叭。

Local Package

资料包状态

本地已看到 RAR 资料包,里面包含 Arduino 源码、连接方式图片、PDF 资料和 C51 示例。当前页面只放整理后的 Arduino 例程下载,完整 RAR 先不提交到 GitHub,等确认资料包可以公开分发后再加入下载入口。

References

公开资料链接

只放公开可访问链接,避免直接搬运别人网站上的图片。

Datasheet

NXP / SparkFun TEA5767HN 数据手册

包含芯片功能、频段、供电范围、I2C/3-wire 总线等资料。

打开 PDF

Library

Arduino Library List: TEA5767

Arduino 库索引,说明可用于调频、搜索、静音、立体声/单声道等功能。

查看库

GitHub

TEA5767 Arduino 库示例

公开 GitHub 库,包含库安装方式,并说明 VCC、GND、SDA、SCL 的基础接线。

查看 GitHub