当前位置:首页 > 工业控制 > 电路设计项目集锦
[导读]参加一次IT会议时,我注意到一些同事佩戴着商用的中国制造蓝牙LED徽章。我觉得这是一个绝妙的想法——比传统的纸质徽章更加实用且富有动感。我立刻就想为自己也买一个。

参加一次IT会议时,我注意到一些同事佩戴着商用的中国制造蓝牙LED徽章。我觉得这是一个绝妙的想法——比传统的纸质徽章更加实用且富有动感。我立刻就想为自己也买一个。

然而,在检查了这些现成的LED徽章后,一些局限性变得显而易见:

•单色:颜色已硬编码在硬件中,无法更改。

•低分辨率:11x44像素的矩阵严重限制了您可显示的信息量。

•无电池监控:无法追踪剩余电量百分比或状态。

更重要的是,当我能够自己动手制作徽章时,购买现成的徽章却感觉像是错失了一个机会。我翻出了自己的微控制器盒,取出了一块内置Wi-Fi功能的ESP32-C3_SuperMini。这款小巧却性能强大的设备再合适不过了:它可以运行本地服务器进行配置,然后进入低功耗睡眠模式,定期唤醒以监测电池状态。

从那里,我逐步设计了系统,优先选择成本效益高且功能丰富的组件。如果要追求功耗效率,电子墨水屏是理想之选,但我当时手头没有。于是,我订购了一块2.25英寸的TFT LCD(76x284像素),很快便收到了,而且价格便宜了三倍。

其余的硬件由备件组装而成:

•一个已停产的蓝牙耳机盒捐赠了其400mAh的锂聚合物电池。

•TP4056充电控制器模块

•DC/DC 3.3V 降压/升压转换器。

•一些电阻。

在空闲的晚上制作这个设备,让我获得了无与伦比的成就感。

设置Wi-Fi和基本的Web服务器是标准操作。

然而,让ESP32与显示屏协同工作却遇到了困难。在尝试使用通用的Arduino驱动程序来控制ST7789控制器后失败,我决定从零开始编写一个自定义的显示驱动程序。该驱动程序支持三种不同的字体大小、自定义符号集以及基于PWM的亮度控制。此外,我还直接将内置的二维码生成器集成到驱动程序中,从而能够快速显示Wi-Fi连接码,并托管用户自定义的数据,例如GitHub个人资料链接。

一切运行正常,直到我尝试同时运行网络服务器和显示屏。原型机开始出现异常行为。经过排查并测试了多种接线方式后,问题根源变得清晰:电磁干扰(EMI)。在密闭且无屏蔽的外壳内运行Wi-Fi无线电,同时为LCD背光生成高频PWM谐波,产生了显著的电子噪声。我通过将显示屏信号线缩短至5毫米以下,并将Wi-Fi天线置于设备最边缘位置进行隔离,解决了该问题。

硬件稳定后,剩余工作集中在优化固件和改进功能上。

工作原理

启动与接入点模式:设备上电后,会初始化一个本地Wi-Fi接入点(AP),并启动Web服务器。屏幕将显示SSID、密码以及生成的二维码,以便快速连接Wi-Fi。

配置:用户连接到网络,并在浏览器中访问 192.168.4.1。该网页界面允许用户:

•请输入自定义文本以显示。

•选择背景和文字颜色。

•调整显示亮度。

•输入自定义数据(如网址),在徽章上生成一个二次二维码。

节能模式:配置确认后,ESP322 将禁用 Web 服务器和 Wi-Fi 无线电,然后进入浅睡眠模式。微控制器每 600 秒唤醒一次,测量电池电压、计算剩余运行时间、更新显示屏状态,并返回睡眠模式。

技术规格与功耗

电池续航:使用400毫安时电池,且屏幕亮度设置为50%时,徽章可连续运行超过6小时。

充电:设备支持直通充电,可在运行过程中进行充电。如果物理电源开关关闭,电池将无法充电。

超时保护:在初始Wi-Fi配置阶段,设备会消耗约170毫安电流。为防止电池意外耗尽,若5分钟内未进行用户配置,设备将自动进入睡眠模式,并显示提示连接充电器。需通过硬件复位才能重新启动配置服务器。

本文编译自hackster.io

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
关闭