news 2026/8/18 17:04:35

Esp-radio 硬件接线完全教程:ESP8266、VS1053 与 TFT 显示屏的详细接线图解析

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Esp-radio 硬件接线完全教程:ESP8266、VS1053 与 TFT 显示屏的详细接线图解析

Esp-radio 硬件接线完全教程:ESP8266、VS1053 与 TFT 显示屏的详细接线图解析

【免费下载链接】Esp-radioInternet radio based on Esp8266 and VS1053.项目地址: https://gitcode.com/gh_mirrors/es/Esp-radio

Esp-radio 是一个基于 ESP8266 和 VS1053 芯片的开源网络收音机项目,不需要 Arduino 主板,仅用几个核心模块就能收听全球数千个 MP3/Ogg 网络电台。这篇文章是一份面向新手的 Esp-radio 硬件接线完全教程,通过详细接线图解析,带你完成 ESP8266、VS1053 音频解码模块与 1.8 英寸 TFT 彩屏之间的全部引脚连接,包括 SPI 通信接线、电源接线、控制按钮和复位电路,照着接就能一次成功。

上图是项目自带的硬件接线示意图,展示了 ESP8266、VS1053 与 TFT 显示屏的整体连接关系。下面以固件源码中官方接线表为准,逐条给出引脚对照。

Esp-radio 是什么:认识三大核心模块

  • ESP8266(NodeMCU / ESP-12):系统主控,负责 WiFi 联网、解析电台流、驱动屏幕与按键,还支持 OTA 无线升级固件。
  • VS1053 音频解码模块:硬件解码 MP3/Ogg 音频流,最高支持 320kbps 码率,配合 20KB 环形缓冲保证播放流畅不卡顿。
  • 1.8 英寸 TFT 彩屏(ILI9163C):128x160 像素,实时显示电台名称、音量、低音/高音等信息。

三者之间主要通过硬件 SPI 总线通信,ESP8266 作为主机(Master),VS1053 与 TFT 作为从机(Slave)。

接线前准备:Esp-radio 硬件材料清单

元件数量说明
NodeMCU / ESP-12 开发板1ESP8266 主控
VS1053 音频解码模块1板载稳压,5V 供电
1.8 英寸 TFT 彩屏模块1ILI9163C 驱动
3.3V LDO 电源1为 ESP8266 供电
5V 电源(1A 以上)1VS1053 模块与屏幕背光
面包板 + 杜邦线若干完成全部接线
轻触按键1~3可选,切换电台
1N4148 二极管 ×2 + 电阻若干复位电路(可选)

固件源码可以通过git clone https://gitcode.com/gh_mirrors/es/Esp-radio获取,TFT 屏幕驱动库见项目内的TFT_ILI9163C-master.zip

ESP8266 与 VS1053 接线方法:SPI 引脚对照表

这是整篇教程的核心部分。VS1053 通过 SPI 与 ESP8266 通信,具体接线如下表:

NodeMCU 引脚GPIOVS1053 引脚作用
D0GPIO161(DCS)数据片选
D1GPIO52(CS)命令片选
D2GPIO44(DREQ)数据请求握手信号
D5GPIO145(SCK)SPI 时钟
D6GPIO127(MISO)SPI 数据输入
D7GPIO136(MOSI)SPI 数据输出
GND-8(GND)共地
5V-9(5V)模块供电
RST-3(RESET)复位(经复位电路)

💡 注意:DREQ 这根线必须接!程序启动时会检测 DREQ,如果它一直为低电平,说明 VS1053 没有接好或模块损坏,解码器将无法通知主控"可以接收数据"。

TFT 显示屏接线方法:128x160 彩屏引脚对照

TFT 同样使用硬件 SPI,与 VS1053 共用时钟和数据线(SCK、MOSI),靠各自的片选信号区分,不会冲突:

NodeMCU 引脚GPIOTFT 引脚作用
D4GPIO23(D/C)数据/命令选择
D5GPIO145(CLK)SPI 时钟
D7GPIO134(DIN)SPI 数据
D8GPIO152(CS)片选
GND-8(GND)共地
3.3V-6(VCC)逻辑供电
5V-7(BL)背光供电
RST-1(RST)复位(经复位电路)

即使不安装 TFT,软件也能正常运行,此时 GPIO2 和 GPIO15 可以改作控制按钮使用。

电源接线与共地要求

  • ESP8266 与 TFT 逻辑电压均为3.3V,由 LDO 稳压输出供电。
  • VS1053 模块板载稳压,使用5V供电;TFT 背光(BL)也接 5V。
  • ⚠️ 所有模块的GND 必须连在一起(共地),否则 SPI 通信会不稳定,甚至完全无法工作。

可选控制按钮接线:一键切换电台

默认支持 3 个按键控制(可在代码中配置 1 键或 3 键模式),用于在预设电台之间切换:

功能GPIO接线说明
下一电台GPIO0(D3)按键一端接引脚,另一端接 GND
电台 1GPIO2(D4)仅在未安装 TFT 时可用
上一电台GPIO15(D8)⚠️ 注意接 VCC(3.3V)而不是 GND

特别提醒:GPIO15 在 ESP8266 启动时必须是低电平,所以"上一电台"按键要接到 3.3V 而不是 GND,否则可能导致开发板无法正常启动。

复位电路与启动注意事项

由于 GPIO 资源紧张,项目采用一个"或门"复位电路:用 2 个二极管分别接到 GPIO5 和 GPIO16,再加一个电阻到地,即可同时复位 VS1053 与 TFT。如果不想自己搭建,也可以把两块模块的 RST 直接接到 ESP8266 的 RST 引脚(以实际模块说明书为准)。

启动时还需注意两点:

  • GPIO0是 FLASH 引脚,启动时不能为低电平,否则会进入刷机模式。
  • GPIO15启动时必须为低电平,详见上文按钮接线说明。

接线常见问题与排查方法

  • 开机后无声:优先检查 VS1053 的 CS、DCS、DREQ 三根线是否接对,以及模块是否共地。
  • 屏幕不显示:检查 TFT 的 CS(GPIO15)与 D/C(GPIO2)是否接反,背光是否已供电。
  • 反复重启、无法启动:检查 GPIO0 与 GPIO15 在启动时的电平状态。
  • 播放卡顿或杂音:确认 5V 电源电流充足(建议 1A 以上),并确保所有模块共地。

快速接线速查表

把三个模块的接线汇总成一张表,方便你接线后逐条核对:

NodeMCUGPIOVS1053TFT其他
D0GPIO16DCS(1)-复位电路
D1GPIO5CS(2)-复位电路 / 板载 LED
D2GPIO4DREQ(4)--
D3GPIO0--按钮"下一电台"
D4GPIO2-D/C(3)按钮"电台 1"
D5GPIO14SCK(5)CLK(5)SPI 时钟共用
D6GPIO12MISO(7)--
D7GPIO13MOSI(6)DIN(4)SPI 数据共用
D8GPIO15-CS(2)按钮"上一电台"
3.3V--VCC(6)ESP8266 供电
5V-5V(9)BL(7)背光 / 模块供电
GND-GND(8)GND(8)全模块共地
RST-RESET(3)RST(1)复位电路

总结

按照这份 Esp-radio 硬件接线完全教程,你只需要一块 ESP8266 开发板、一个 VS1053 模块和一块 TFT 彩屏,再配上电源与几根杜邦线,就能搭出一台属于自己的网络收音机。接线完成后,下一步就是刷入固件、通过 Web 界面配置电台列表,然后尽情享受来自全球的广播节目 🎵

【免费下载链接】Esp-radioInternet radio based on Esp8266 and VS1053.项目地址: https://gitcode.com/gh_mirrors/es/Esp-radio

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/18 17:03:53

Linux 网络接口命名规则

非常好的问题 👏——eth0、ens33、enp4s0、eno1 这些名字确实让人一开始很困惑,其实它们的区别来自于 Linux 的“可预测网络接口命名规则(Predictable Network Interface Names)” 的演进。下面我系统讲清楚它们的来源、命名逻辑和…

作者头像 李华
网站建设 2026/8/18 17:01:45

网页视频只能看不能存?N_m3u8DL-RE让流媒体下载一学就会

网页视频只能看不能存?N_m3u8DL-RE让流媒体下载一学就会 【免费下载链接】N_m3u8DL-RE Cross-Platform, modern and powerful stream downloader for MPD/M3U8/ISM. English/简体中文/繁體中文. 项目地址: https://gitcode.com/GitHub_Trending/nm3/N_m3u8DL-RE …

作者头像 李华
网站建设 2026/8/18 16:54:11

代码评审看性能数据,先确认测试测到了什么

代码评审看性能数据,先确认测试测到了什么 1. 代码评审中的性能测试数据误区 性能数据可以帮助代码评审,但它依赖测试对象、环境和统计方式。 例如在一次 Merge Request(MR)评审中,提交说明展示了匹配算法从 $\math…

作者头像 李华