基于STM32F103与ESP01S的复古辉光管时钟开源项目解析

2026-04-14 20:22:25
关注

基于STM32F103与ESP01S的复古辉光管时钟开源项目解析

在电子DIY领域,辉光管时钟因其独特的复古美学与技术挑战性吸引了不少爱好者。然而,现有方案大多存在功能局限:一些基于STM32的版本缺少联网能力,时间漂移问题难以避免;而以ESP32为主控的设计则削弱了单片机开发的参与感。为探索更平衡的解决方案,一位开发者基于STM32F103与ESP01S设计了一款兼具经典外观与现代功能的辉光管时钟。经过五次PCB打板及多次调试,最终成功完成该项目,并整理出完整资料供爱好者参考。

技术方案的核心考量

在设计中,开发者放弃了主流的ESP32方案,转而采用STM32F103作为主控,ESP01S负责网络通信。这种分工利用了STM32在数据采集、OLED显示及辉光管驱动方面的优势,同时ESP01S专注WiFi通信和时间同步,提升了系统整体的稳定性。此外,项目中使用了四只IN12-B辉光管,考虑到其易受阴极中毒影响,设计中特别加入了防护机制,以延长其使用寿命。

主要功能实现详解

**双模式精准计时**:在联网状态下,ESP01S通过TCP协议连接网络时间API,获取Unix时间戳并转换为北京时间写入DS1302实时时钟芯片。该方案每日误差控制在1秒以内;断网时,DS1302依靠CR1220电池维持运行,确保时间不丢失。重新联网后可自动校准,无需手动设置。

**辉光管防中毒机制**:为防止辉光管长期显示相同数字引发的阴极中毒问题,项目采用双重策略。系统每10分钟自动切换一次数字,同时支持TTP223触摸模块手动触发。两种机制均基于TIM3中断实现,不会干扰主时钟的正常显示。经过一个月的实测,辉光管亮度均匀,无明显衰减。

**交互与显示设计**:秒动效果通过两只氖管交替点亮实现,避免增加辉光管负载。WiFi连接状态通过四路DOT指示灯(PB12~PB15)以流水灯形式展示,连接成功或超时后自动熄灭。此外,0.91英寸I2C接口的OLED屏(128×64分辨率)实时显示时间、温湿度(DHT11采集)及WiFi状态,便于调试与日常查看。

硬件选型清单

  • 主控芯片:STM32F103C8T6,推荐选用原装产品以提升稳定性。
  • WiFi模块:ESP8266-01S,建议选择带排针版本,并在焊接前测试AT指令。
  • 辉光管:IN12-B ×4,二手市场采购性价比高,但需注意管脚完整性。
  • 驱动芯片:74HC595 ×5,国产芯片即可满足需求,级联时注意Q7'与DS引脚连接。
  • RTC时钟:DS1302(带电池座),搭配CR1220电池确保断电后时间不丢失。
  • 温湿度传感器:DHT11,单总线协议,适合初学者使用。
  • 显示屏:0.91英寸I2C OLED,建议选择自带电压转换模块的型号。
  • 高压三极管:13001 ×44,建议多备几支以防焊接过程中损坏。
  • 电源适配器:12V DC(3W以上),推荐选购有认证的产品以稳定电压。
  • 外壳配件:3D打印件(.3mf格式),建议使用PLA材料,打磨后喷漆提升质感。

PCB与实物展示

以下是该项目的PCB布局与实物图:

开源资料获取

有兴趣深入了解该项目的爱好者,可在华秋开源硬件社区查阅完整资料。欢迎爱好者进行复刻,若有商业合作需求,可联系原作者。

项目开源地址如下:

https://p.eda.cn/d-1359815789246414848

结语

对于希望亲手打造一款兼具复古外观与现代功能的辉光管时钟的爱好者,该项目提供了详尽的参考资料与实现路径。欢迎在评论区分享你的想法与创意,也期待更多人加入复刻与优化的行列,共同推动开源硬件的发展。

您觉得本篇内容如何
评分

评论

您需要登录才可以回复|注册

提交评论

提取码
复制提取码
点击跳转至百度网盘