数码之家

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

搜索
查看: 99|回复: 2

[Arduino] 仿制改进一个ESP32S3_MiniWebRadio(开源)

[复制链接]
发表于 昨天 22:21 | 显示全部楼层 |阅读模式
MiniWebRadio:
工程采用ESP32-S3-WROOM-1(N16R8),4寸IPS的ILI9488电阻触摸屏,实现webradio功能。
硬件开源地址:MiniWebRadio硬件开源地址
视频效果:用ESP32S3做个MiniWebRadio


声明:本工程源于国外开源项目,我只是将资料和电路进行了整理和改进,想学习更多也可以通过原作者资料。大家可以复刻学习和研究讨论,禁止商用。目前固件暂不支持中文,等待你的想法。

功能:
  • 用户界面:TFT 触摸屏显示器、Web 浏览器和 FTP
  • 功能: WiFi 收音机、数字时钟、MP3 播放器、闹钟、睡眠定时器、调整屏幕亮度、EQ 设置和音量、网络浏览器用户界面、通过 FTP 访问 SD 卡(例如 FileZilla)、红外遥控器支持
  • SD 卡上的stations.csv文件中最多可保存 999 个预设电台(可以使用 Web UI 进行编辑)
  • 每个工作站都可以显示自己的工作站图标(保存到 SD 卡时)
  • 时间是通过网络时间协议 (NTP) 从 Internet 获取的。可以从 Web UI 设置本地时区
  • Web 用户界面 - MiniWebRadio 可以通过任何 Web 浏览器(例如 IE/Edge/Chrome/FireFox)访问
  • 内部 SD 卡可通过 FTP 访问(例如 FileZilla)请参阅 Filezilla 的设置。用户名和密码是 'esp32'
  • 可以使用智能手机上的浏览器设置您的家庭 WiFi 路由器 SSID 和密码(仅在首次启动时需要)或编辑 SD 卡上的 networks.csv 文件
  • 在 SD 卡或在家庭网络 DLNA(智能手机、路由器等上的 uPNP/DLNA 应用程序)上播放媒体文件
  • 音频可以使用软件解码。可能的格式包括 mp3、aac、mp4、opus、vorbis 和 flac。
  • 可以处理 m3u 格式的本地播放列表
  • 使用红外 (IR) 遥控器(38kHz NEC 编码 - 例如 arduino 或 mp3 遥控器)。Web UI 允许您根据需要配置按钮,用户可以使用 Web UI 更改 IR 遥控按钮代码
  • 可以使用显示屏预设一个闹钟时间(选择日期、周一至周日)
  • 可以使用显示器设置睡眠定时器(在预设时间后关闭声音和屏幕 - 最长 6 小时)
  • 在收音机模式下每小时可以播报时间(通过 Web UI 设置)
  • 屏幕亮度可通过显示器进行调整(如果显示器具有背光引脚)
  • 支持拉丁语、希腊语和西里尔语字符集
  • Community Radio Browser 集成为搜索引擎。用户可以找到新的电台,然后通过 Web UI 将它们添加到电台列表中(如果有电台图标),然后将列表和电台图标文件保存到 SD 卡
  • 通道列表可以 Excel 格式导出或导入(用于数据备份)。
  • VU 表已添加到显示
  • 改进的 Web UI 可靠性
  • 内置扬声器可以大声播放,也可插入耳机沉寂式听音或者插入其他大功率功放进行外放;有立体声蓝牙发射功能,可以连接蓝牙音箱,将播放内容无线发送到蓝牙音箱。
所需硬件:
  • 具有 4MB PSRAM 或更大的 ESP32-S3 开发板
  • DAC(例如 PCM5102a)
  • 带触摸板 (SPI) 的 TFT 显示器、显示控制器可以是 ILI9341 (320x240px)、ILI9486 (480x320px)、ILI9488 (480x320px) 或 ST7796 (480x320px) 或 带触摸板的 RGB 显示屏 (I2C)
  • SD 卡 (FAT32) + SD 适配器(如果有,可以使用 TFT 显示器背面的 SD 插槽)
可选硬件:
  • 红外接收器 + 符合 NFC 协议的红外遥控器
  • KCX_BT_EMITTER V1.7,用于连接外部蓝牙设备,需要足够的空闲 GPIO
  • BH1750 光传感器:BH1750 的值范围很广,在平均房间亮度下仍然足够敏感。在显示屏上,您可以设置传感器变暗时所需的亮度。然后显示器在“夜间”变暗到这个值,需要足够的空闲 GPIO。
  • RX8025T-UB 备用IIC时钟芯片,暂时设计上去了,还未有实际功能,可以不用焊接。
  • 自己加了些传感器上去,开源V2.2没有传感器,图片仅供参考。

ESP32S3_MiniWebRadio
原作者已将版本升级到V4.0了,并加入了ESP32P4的支持,V3.7后的版本将不支持ESP32,只支持ESP32S3了,所以本工程采用ESP32-S3-WROOM-1(N16R8),4寸IPS的ILI9488电阻触摸屏,触摸屏上完成所有操作,没有按键。

电源充电电路采用经典的IP5306芯片+XB7608锂电保护芯片。

DAC解码采用PCM5102电路。

功放部分采用PAM8403立体声3W功放,功放电源由IP5306输出的5V提供。

蓝牙模块及红外接收头

由于太懒不想设计外壳,采用了PCB板子当外壳,打板使用4块板子:主控板(四层板)、面板、背板、侧板(四块板均采用1mm打板厚度)。内置4500MAH手机电池,小米10S手机扬声器,紧凑设计,将整体尺寸设计在嘉立创免费打板宽度内。整体尺寸为:100mm*75mm*18mm。
六角铜柱用了:
  • M3——4mm长六角铜柱
  • M3——11mm长六角铜柱
  • 螺丝自己随意了,3mm的就行。
另外如果模块内置信号不好或接收距离短的话,可以考虑将模块天线引出来外置天线,我是这样做的。


面板加了个导光孔用于接收红外遥控信号,顶部加了个导光孔用于光敏BH1750感光用。
左侧上面USB是上传固件用,下面的USB保留了模块的USB-OTG接口,两个TYPE-C接口都可以用于充电和刷固件。
左侧拨动开关用于开关电源,下方插TF卡。
使用前需要将资料里“Content_on_SD_Card.zip”压缩包解压出来复制粘贴到TF卡根目录里,不然即使刷好固件开机后,由于系统找不到TF里的配置和文件一直处于黑屏状态。




电池大小比了下,大小刚好合适。


小米10S手机扬声器,网上评价很高,于是拿来试试。感觉体积小,声音不错,只是在这里为了缩小体积,我将扬声器音腔进行了修剪,只保留了必要的发声部分,修剪时注意要密封,我是用锯子将多余部分锯掉后,口子上加UV胶进行固化,防止里面的白色颗粒到处散落。


这是被裁剪后的样子。


这是锯断后,端头空腔用UV胶封口固化,防止白色颗粒散落。


底部收音机图标为电源、欠压和充电指示灯,中间英文LOGO透光全彩LED运行彩虹幻彩效果,灯的花样灯并未进一步优化。




上传固件可以使用ESP上传工具:flash_download_tool,配置如下图

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x

打赏

参与人数 1家元 +60 收起 理由
不长叶子的树 + 60

查看全部打赏

发表于 昨天 23:15 来自手机浏览器 | 显示全部楼层
游客请登录后查看回复内容
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 微信登录

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2025-12-7 03:31 , Processed in 0.109200 second(s), 7 queries , Gzip On, Redis On.

Powered by Discuz!

© 2006-2025 MyDigit.Net

快速回复 返回顶部 返回列表