ChristopheJacquet/PiFmRds

3/5 🧩 软硬件结合 已发布
ChristopheJacquet 1575 Stars 未知 BOM 完整度: 0/5 教程完整度: 0/5
ChristopheJacquet/PiFmRds

项目简介

FM-RDS transmitter using the Raspberry Pi's PWM


PiFmRds 是一个基于树莓派硬件实现的调频广播发射器项目,它不仅能生成标准的FM调制信号,还能实时产生RDS(无线电数据系统)数据。这个项目由Christophe Jacquet在Oliver Mattos和Oskar Weigl的原始FM发射器基础上改进而来,通过利用树莓派的PWM发生器产生VHF信号,并集成了RDS数据生成和调制功能。

项目特点

**纯软件实现FM发射**:无需额外射频硬件,仅利用树莓派的PWM发生器产生VHF信号。
**集成RDS数据**:支持实时生成电台名称、节目类型、广播文本等RDS信息,让普通FM发射器具备专业电台功能。
**跨平台支持**:可在Raspberry Pi OS、Arch Linux ARM等多种系统上运行,支持Pi Zero、Pi 3、Pi 4等主流型号。
**低延迟音频播放**:支持从WAV文件直接播放,也支持通过管道从标准输入读取音频数据,便于集成到其他项目中。
**命令行操作简单**:一条命令即可启动发射,支持设置频率、RDS内容、音频文件路径等参数。
**开源社区活跃**:GitHub星数超过1500,有丰富的文档和示例,便于二次开发和问题排查。

技术规格

发射频率范围
频率步进
调制方式
RDS标准
RDS数据内容
音频输入格式
音频文件格式
发射功率
有效覆盖范围
支持的树莓派型号
依赖库

项目资源

物料清单 (BOM)

物料名称 数量 参考价格 备注
树莓派(Pi 3/4/Zero等) 1 任何支持PWM的型号均可
杜邦线(公母) 1 约20cm长,插在GPIO 4引脚上
树莓派电源适配器 1 5V/2.5A以上
MicroSD卡 1 用于安装操作系统
电脑或手机 1 用于传输音频文件或实时音频流
散热片/风扇 1 长时间发射时建议加装

能力画像

**记忆与知识检索**:3/5 — 需要理解FM调制原理、RDS协议和树莓派GPIO引脚功能,但核心知识可通过文档快速检索。
**动手与操作**:4/5 — 需要连接杜邦线作为天线、安装系统、编译软件,操作步骤明确但涉及硬件接线。
**编程与算法**:2/5 — 基本使用只需命令行操作,无需编程;二次开发需要C语言和信号处理知识。
**设计与建模**:1/5 — 项目本身不涉及电路设计或3D建模,但可自行设计外壳或天线。
**实验与调试**:4/5 — 需要调整天线长度、发射频率、RDS内容等参数,并通过收音机实时验证效果。
**协作与分享**:3/5 — 可通过GitHub提交Issue或Pull Request,也适合在创客社区分享发射成果。
**学习与研究**:4/5 — 是学习FM通信、RDS协议、树莓派PWM外设的绝佳实践项目。
**系统集成**:3/5 — 可与其他项目(如MPD音乐播放器、语音合成系统)集成,实现自动化广播。

所需技能

树莓派基础操作(系统安装、SSH连接、命令行使用) 编译C语言程序(使用gcc和make) 理解FM广播基本原理(频率、调制、带宽) 了解RDS数据格式(PS、RT、PTY等字段含义) 音频文件格式转换(WAV、采样率、位深) 基本电子知识(GPIO引脚、天线阻抗匹配概念)

适用场景

校园或社区小型广播站(播放通知、音乐)
无线电通信技术教学演示
智能家居语音播报系统(如天气、新闻)
车载FM音频转发(将手机音频通过树莓派发射到车载收音机)
创客作品展示(如互动艺术装置、声音装置)
应急通信测试(低功率、短距离信号覆盖)
无线电爱好者实验(研究FM调制、RDS协议)