
基于ESP32的微型热敏打印机-V1.0
简介
该项目是复刻BiliBili小智学长【单片机嵌入式Arduino实战】手把手做打印机项目。以ESP32微控制器为主控单元,是一个可移动便携的物联网打印终端,支持蓝牙控制、文本和图片打印等功能。
简介:该项目是复刻BiliBili小智学长【单片机嵌入式Arduino实战】手把手做打印机项目。以ESP32微控制器为主控单元,是一个可移动便携的物联网打印终端,支持蓝牙控制、文本和图片打印等功能。开源协议
:GPL 3.0
(未经作者授权,禁止转载)描述
项目简介
该项目是复刻BiliBili小智学长【单片机嵌入式Arduino实战】手把手做打印机项目。以ESP32微控制器为主控单元,是一个可移动便携的物联网打印终端,支持蓝牙遥控、文本和图片打印、低功耗运行等功能。
项目参数
- 以ESP32微控制器为主控单元,利用其强大的处理能力、丰富的接口(Wi-Fi/BLE/GPIO/UART)和低功耗模式特性。
- 集成JX-2R-01热敏打印头模,实现高速文本/图形打印
- XC6210B332MR模块:稳压3.3V为芯片及外设供电
- AP2005模块:升压至7.2V为打印头供电
- 使用PMOS控制开关,进行电池电量检测
原理解析(硬件说明)
本项目由以下部分组成,ESP32最小系统、TYPE-C & 调试口电路、TYPE-C & 调试口电路、充电管理电路、电池电量检测电路、升压电路、VCC转3.3V稳压电路、电机驱动电路、打印头缺纸检测电路等部分组成。

1. ESP32最小系统
这里选用的型号是ESP32-WROOM-32E-N4。首先查看ESP32的技术参考手册,了解ESP32的相关参数特性,管脚布局和定义,封装和最小系统图。





绘制ESP32最小系统,为确保 ESP32 芯片上电时的供电正常,EN 管脚处需要增加RC延迟电路。RC通常建议为 R=10kΩ,C=1µF。

2. TYPE-C电路
为了使板子能正常的运行工作、需要另外购买USB转TTL模块、杜邦线,也要把IO0和EN引脚焊接出来。这样不太方便,为了方便烧录、供电和调试,设计USB线供电、烧录、调试电路和添加自动下载电路。
首先下载接口是UART口 VCC(3.3V) TX RX GND。所以需要添加USB TYPEC接口、电压转换电路、USB转串口模块。

TYPEC端子使用的是20009-UCAF001-X,CC1 CC2接电阻后接地,这是Typec口用于做接入检测和正反接识别的,如果这两个口不接悬空,接上充电器时充电器不会输出电压。VBUS为电源端,接电脑USB或充电器时,默认为5V。UD+ UD-为数据线。

3. VCC转3.3V电路
由于TYPEC端输入电压是5V,而芯片需要3.3V供电,5V转3.3V,输出电流在500ma以上.这里稳压芯片选用的是XC6210B332MR。


根据数据手册可知。只需要在输入输出添加旁路电容,两个1μF的陶瓷电容。

4. 把USB的D- D+信号转为TX RX信号、
因为ESP32端的下载调试引脚为串口,而TypeC端输入信号为USB信号,所以需要进行信号转换,使用CH340系列芯片:CH340C,该芯片带有RTS DTR接口。


5. 自动下载电路

6. 充电管理电路
项目中使用ME4054B-N作为充电管理方案,充电电流最大500mA,而且封装较小。



7. 升压电路





8. 电量检测电路
因为是电池供电的产品,我们需要知道电池剩余电量是多少,所以需要添加一个电量检测电路。
电量检测的技术原理是使用电阻分压原理,把电池电压分压后,通过芯片ADC进行读取,和电位器读取原理类似,最终再通过ADC值转换出电压值,电池电压在缺电3.3V,满电4.2V,这样我们就可以按比例估算出剩余的电量。
另外,为了节省功耗,可以在电池端添加一个MOS管,控制检测的开关,这样,在不需要读取电量时,就可以关闭MOS管,降低功耗,
这里使用PMOS控制开关:当ADC_EN为低电平,此时PMOS导通,可以读取POWER_ADC的值。

9. 按键电路
项目中添加了一个按键,用来测试打印机的打印、电机的运行功能,短按时运行打印机测试代码,长按时控制电机运动。

10. 打印模组
在项目中,打印模组选择的是精芯的一体化机芯,型号为精芯JX-2R-01微型热敏打印机芯。机芯中已经包含打印头、电机、热敏电阻、传感器,引出的就是FPC的软排线,结构紧凑且稳定。




11. 热敏电阻模块
打印模组在工作时,原理是通过加热的方式让热敏纸变色的,如果长时间一直加热,会导致打印头有损坏风险,所以需要通过热敏电阻做温度监测。
打印头中内置了热敏电阻来监测温度,由于不需要高精度的温度测量,那我们要做的其实就是通过串联一个电阻(普通电阻即可,需要精度高的可以选1%精度的),然后通过分压的公式算出热敏电阻的阻值,最后通过下方计算公式或者RT表转换出实际温度即可。



所以电路特别简单,TM一端接地,另一端接THER口(10k电阻到电源),然后读取THER端的ADC值。

12. 缺纸侦测
打印模块在工作时,需要放入打印纸,如果没有打印纸,会导致打印异常,所以需要用到缺纸检测模块。打印机芯内置了一个反射性光电通断侦测传感器,用于缺纸检测。如下图所示,左边是光电传感器、中间是比较电路、右边是输出。

当缺纸时,光电侦测发出的光无法被反射,输出高电平。当纸张正常,光电侦测发出的光被反射,由接收管接收,输出低电平,光电开关的电路驱动,当缺纸时,不要启动打印机加热。

PHE接比较器、VSEN接逻辑电源、PHK接180欧后接GND。

软件代码
放在附件中了
组装流程
工程中有三个PCB板,系统板放置在最底层,可以用四个铜柱支撑,打印机托板放置在系统板上面,用铜柱支撑,M2螺丝固定打印头,打印纸托纸板放置在打印机拖纸板上方,用M3铜柱固定,然后可以打印纸托板穿过打印纸,托举起来。



固件烧录
首次烧录时,请勿接打印头!!!!!!首次使用时电池请充满电使用。
- 接上电池,电池别接反,红线是+,黑线是-
- 接上Typec烧录线
- 打开开关
- 这时候会在电脑的设备管理器中找到对应COM口。如果找不到,需要下载CH340的驱动,见附件。如果提示未能识别设备,需要安装下CH340驱动,安装完成后重启电脑。
下载烧录工具见附件flash_download_tool_3.9.3.zip
打开软件选择ESP32

选择对应固件和地址esp32_bootloader_v4.bin和firmware_printer_v1.0.3.bin。

选择好固件、参数后,点击START开始烧录,等待烧录完成便可开始测试,烧录完成后,重新上下电设备即可。
实物图




除PCB外需要的器件
【淘宝】限时淘金币抵0.3元 https://e.tb.cn/h.hJht5QEtp1exAr5?tk=Lv3e47IIp4w CZ356 「可充电18500锂电池大容量3.7v4.2v强光手电筒唱戏机打印机通用」
点击链接直接打开 或者 淘宝搜索直接打开

【淘宝】7天无理由退货 https://e.tb.cn/h.hJE81jZaitaP99W?tk=ov0N47IG68y MF287 「精芯JX-2R-01 精芯JX-700-48R 热敏打印头 热敏打印机芯」
点击链接直接打开 或者 淘宝搜索直接打开
https://mobile.yangkeduo.com/goods2.html?ps=tSVIMuHiGv

设计图
未生成预览图,请在编辑器重新保存一次BOM
暂无BOM
克隆工程知识产权声明&复刻说明
本项目为开源硬件项目,其相关的知识产权归创作者所有。创作者在本平台上传该硬件项目仅供平台用户用于学习交流及研究,不包括任何商业性使用,请勿用于商业售卖或其他盈利性的用途;如您认为本项目涉嫌侵犯了您的相关权益,请点击上方“侵权投诉”按钮,我们将按照嘉立创《侵权投诉与申诉规则》进行处理。
请在进行项目复刻时自行验证电路的可行性,并自行辨别该项目是否对您适用。您对复刻项目的任何后果负责,无论何种情况,本平台将不对您在复刻项目时,遇到的任何因开源项目电路设计问题所导致的直接、间接等损害负责。










