ESP32制作加热杯垫

2026-11-161

如果杯子已经放在桌面上,我看这块杯垫时最先想到的不是电热膜能不能发热。

我更关心几个动作能不能接在同一条状态链里。温度、时间、输入和语音提醒只要有一个环节脱开,使用起来就会像几个互不相干的小功能。

我先把项目页的内容收拢成四件事。它们是 ESP32-C3 主控、彩屏界面、触摸或三按键输入,以及独立驱动板承接的加热功率路径。

资料还给出了 45℃到130℃的设定范围、30分钟到8小时的定时区间和可替换语音文件。

下面的判断都从公开板级资料、界面图和操作流程出发。我会把资料能够确认的部分说清楚,也把没有源码或没有实物证据的地方单独标出来。

项目页同时保留了触摸版和按键版,驱动板上的风扇、HX711 与功放位置也被标成预留。版本之间的差异,会直接影响复刻时的接线和排查顺序。

公开资料没有提供可以逐行核对的固件源码,所以我不把菜单流程改写成假想代码,只沿着已经写明的功能、烧录方式和文件替换规则分析。

杯垫的主控板、加热底板与外壳组成

电源与功率路径的板级分工

我先从两块板的分工入手。主控板上的 ESP32-C3 负责接收触摸或按键输入,驱动彩屏,读取温度状态,并用指示灯给出反馈。

驱动板接住的是电热膜相关的功率路径。这样一来,菜单里的一次设定先变成控制信号,再由驱动板去处理加热电流,逻辑操作不用直接穿过高电流回路。

项目页把输入写成 PD 或 DC 供电,更新记录又提到过驱动板布线和按键版本的调整。我在复刻前会先把手里的主控板和驱动板版本对上,再决定采用触摸接口还是三只独立按键。

主控板原理图中控制、显示与接口的分区

驱动板原理图里还留着风扇、HX711 和功放的驱动位置,但资料明确说这些功能不需要全部焊接。

我不会把预留焊盘当成已经实现的功能。先分清当前加热链路和可选扩展,后面看原理图时才不会把一条备用路径误读成工作路径。

驱动板原理图中的加热接口与预留功能

输入动作到加热状态的控制链

为了不把三只按键只写成器件清单,我把一次操作拆成四步。输入层先收到上、确定、下的动作,接着把动作交给菜单状态。

菜单状态保存温度、预约或定时的选择,驱动层再根据当前状态决定是否允许加热。彩屏和语音最后把这个状态变化反馈给使用者。

触摸版和按键版的目标相同,变化的是输入器件。项目更新日志提到有用户不方便装配触摸按键,于是增加了按键交互版本。

我更愿意把这看成输入层的替换,而不是两套完全不同的控制逻辑。因此,不能拿触摸版照片去猜按键版的引脚,也不能看到一个版本的接口就默认另一个版本一样。

从输入动作到加热状态的控制链路

模块 公开资料能确认的职责 拿到实物后要复核的边界
主控板 ESP32-C3、彩屏、温度监测、LED 触摸版或按键版的具体接口
驱动板 电热膜相关功率路径 供电规格、散热和保护动作
菜单状态 温度、预约、定时和语音提醒 状态切换时是否立即执行
扩展位置 风扇、HX711、功放预留 是否焊接以及对应固件支持

这里的 45℃到130℃是界面允许输入的目标范围,我不会把它当成杯垫表面每个位置都能达到的实际温度。传感器放在哪里、多久采样一次,资料里都没有展开。

所以在具体装配上,我还会把温度采样位置、闭环响应和异常停机行为单独确认。只有这些条件对得上,菜单里的数值才有明确的工程含义。

显示与语音的状态同步

我看彩屏和语音时,关注的是它们怎样共享同一次状态变化。彩屏负责呈现当前温度、日期、时间和加热状态,语音负责播报开机、开始加热、停止加热和提醒喝水等离散事件。

这样安排的好处是,界面显示当前状态,语音提示刚刚发生的事件。两者围绕同一个状态更新,使用者才不会看到一个状态、听到另一个状态。

彩屏界面展示时间、温度和菜单状态

语音替换走的不是联网下载路径。把数据线接到电脑后,设备会被识别成 U 盘,这一步解决的是文件如何进入设备。

我会保留 001 到 010 这些 MP3 文件名,让控制板继续按固定槽位找到对应事件。文件名或存储位置改掉时,通常先表现为某一条提醒没有声音,不应该直接判断成加热控制坏了。

从 U 盘文件到固定语音槽位的更新路径

固件烧录与语音文件更新

我把烧录和语音替换分成两条路径,是因为它们改变的对象不同。烧录改的是控制板程序和分区,换语音改的是设备存储里的固定文件。

项目页给出的烧录流程针对 ESP32-C3 的 USB 模式。按顺序选择 bootloader、partitions 和对应软件版本,再选择串口开始写入,排查时要让芯片型号、文件和串口彼此对应。

flash_download_tool_3.9.2.exe
目标芯片  ESP32-C3
连接方式  USB 模式
写入顺序  bootloader / partitions / 软件版本
执行动作  选择 COM 后点击 START

项目页面给出的 ESP32-C3 烧录界面

如果设备能正常启动,只有语音缺失,我会先看 001 到 010 的文件名和存储路径。这个现象和程序没有写进去不是一回事。

如果设备完全不能启动,我会回到芯片型号、分区文件和串口选择这条链路。把两种故障放在一起排查,只会让范围变大。

长期运行的安全边界

最后我把长期运行拆成三个需要分别确认的边界。电热膜、驱动器件和供电输入属于高功率边界,ESP32-C3、彩屏、触摸和语音文件属于逻辑与存储边界。

装配时,我会先让功率路径和逻辑信号的连接关系清楚,再去核对外壳、底板和散热条件是否与手里的版本一致。这个顺序能避免先调界面、后发现供电或结构版本对不上。

供电、热量、逻辑与验证边界

资料没有展开传感器校准方法、过温保护阈值和长时间满功率运行条件。因此我把 45℃到130℃理解成界面设定范围,而不是已经由公开资料证明的安全工作温度。

如果要把它放进无人看守的保温场景,我还会在具体装配上确认采样位置、异常断电行为和外壳温升。

对我来说,关键是 ESP32-C3 把输入、定时、加热、显示和语音事件串成状态链,驱动板单独承接功率。先核对板卡版本与语音文件路径,再按安全边界复刻,后续排查才有起点。

创作许可协议

本项目采用 CC BY(署名) 进行许可。

评论(0)
- 没有更多了 -