艾巴生活网

您现在的位置是:主页>科技 >内容

科技

航芯方案分享(|_热敏打印机方案)

2023-11-13 13:47:01科技帅气的蚂蚁
随着电子信息化和自动化程度的提高,以及条形码识别技术的发展,热敏打印机的应用范围也在不断扩大,已经从传统的办公和家庭传真文件迅速扩

航芯方案分享(

随着电子信息化和自动化程度的提高,以及条形码识别技术的发展,热敏打印机的应用范围也在不断扩大,已经从传统的办公和家庭传真文件迅速扩展到商业零售、工业制造、交通运输、物流、金融、彩票、医疗、教育等新的专业应用领域。

本文将介绍基于上海航信ACM32F403的热敏打印机的设计方案。

印刷原理

热敏打印机的原理是在介质基材(通常是纸)上涂上一层热敏材料,热敏材料加热一段时间后会变黑(通常是黑色或蓝色)。这个化学反应是在一定的温度下进行的。高温会加速这种化学反应。当温度低于60时,热敏材料变黑需要很长时间,甚至几年。当温度为200时,反应将在几微秒内完成。

打印机有选择地在某个位置加热热敏纸,从而产生相应的图形。加热由打印头上与热敏材料接触的小型电子加热器提供。排列成正方形点或带的加热器由打印机逻辑控制,当被驱动时,在热敏纸上产生对应于加热元件的图形。控制加热元件的相同逻辑电路也控制纸张馈送,使得图形可以印刷在整个标签或纸张上。

图一。热敏打印机原理

使用芯片

本文介绍的热敏打印机方案是基于上海航信的ACM32F403系列单片机。

ACM32F403芯片采用高性能内核,支持Cortex-M33和Cortex-M4F指令集。该芯片的核心支持一组用于数字信号处理的DSP指令,用于浮点数据处理的单精度FPU,以及用于提高应用安全性的内存保护单元(MPU)。

ACM32F403系列芯片最大工作频率为180MHz,内置数学硬件加速,最大512KB eFlash和最大192KB SRAM。该芯片集成了一个12位多通道2M sps高精度ADC、一个12位双通道DAC、多达3个运算放大器和2个比较器,并集成了一个高级定时器、6个通用16位定时器、1个通用32位定时器、2个基本16位定时器、1个系统看门狗、1个独立看门狗和一个低功耗实时时钟(RTC),内置多通道UART、LPUART和SPI。

程序特征

支持蓝牙、USB、UART等通信接口的打印方式。

支持无任务时自动关机模式,续航时间更长。

支持打印高温、缺纸和低电量报警。

SPI存储字体,支持字体在线更新,可以调整字体、大小、粗细等。

支持MCU和BLE芯片固件在线升级

设计方案

2.基于ACM32F403的热敏打印机设计框图

功能介绍

1.1多界面打印流程

该方案可以通过UART、USB、蓝牙接口接收数据,通过ACM32F403芯片的定时器、GPIO、ADC、SPI等模块实现热敏打印头的打印。

具体流程如下:

1)通过UART、USB、蓝牙接口接收数据,需要用GBK码发送,存储在芯片中;

2)通过SPI接口在SPI FLASH上查询每个字的GBK码到字库中对应的数据,并传输到打印缓冲区;

3)芯片通过定时器控制步进电机的运行速度和打印头的加热时间,通过GPIO控制加热使能和步进电机的正反转,ADC检测打印机温度,最终完成打印工作。

图3。多界面印刷过程

1.2字体更新流程

在这个方案中,固件实现了一个UART接收数据,SPI下载数据的系统,使用类似于7816 T=1的数据格式进行传输,将字体的BIN文件下载到SPI FLASH中,下载更新字体。由于片外SPI闪存的大小,默认情况下仅支持24*24字体打印。如果更改字体,需要重新下载字体文件。

图4。字体下载过程

该方案支持字体的更新,可以调整打印字体的字体、大小、粗细等参数。字体库更新后,需要修改固件代码来打印不同的字体。

图5。字体设置参数

1.3字体调用流程

在这个方案中,SPI FLASH可以存储16*16或者24*24的字体,并且有完整的配套固件代码。

具体的字体调用过程如下:

1)从UART、USB或BLE接口接收待打印字符的GBK码;

2)根据GBK码,计算字库中该字符的内码;

3)通过SPI接口读取字体库中内码的数据,数据长度根据字体大小确定;

4)将读取的数据传输到打印头,完成打印。

图6。字体调用过程

1.4数据打印流程

图7。数据打印软件的流程

图8。打印机机芯和步进电机示意图

数据打印过程:

1)打印机启动过程;

2)通过SPI接口向打印机缓存传输打印数据;

3)判断是否是第一行,如果是,打开电机定时器,向前一步;

4)判断是最后一行还是缺纸,如果是,进入打印机关机过程;

5)开始加热,打开加热定时器,等待加热完成;

6)循环2)~5),直到打印完成。

打印机启动过程:

1)将打印机DST信号设置为低电平;

2)将打印机锁存信号设置为高电平;

3)打开热敏头的逻辑电源;

4)打开热头加热电源;

打印机关机过程:

1)停止加热定时器;

2)关闭热头加热电源;

3)将打印机DST信号设置为低电平;

4)将打印机锁存信号设置为高电平;

5)关闭热敏头的逻辑电源。

1.5电源控制系统介绍

图9。电源控制系统介绍

1)电源:系统采用4.2V或USB 5V的单节锂电池供电;

2)异常:MCU内部程序运行/崩溃时,先按SW1复位MCU,然后按住正常开/关键,再插入USB线复位MCU;

3)开机:系统未开机时,按住开/关键。当MCU上电时,MCU将从eFlash启动。初始化成功后,POWER_ON/OFF信号会置高,双色灯中的绿灯亮(InitPass_ always on,内部锂电池充满电_ always on)。如果初始化失败或检测到异常/Err1_(如电池电量低、外设初始化失败、通信异常等。)

4)关机:系统上电时,按住开/关键,Power_Check引脚会检测到一个下降沿,然后会有一个连续的低电平。释放按键后,拉低电源控制信号;

5)正常关机顺序是:先关灯,再关电机驱动电源和外围电源,再关MCU电源;

6)PB1是开/关键和系统唤醒键,SW1是系统唤醒键和复位键。通常用户按一下就可以唤醒系统,长按就是正常的开关机;

7)没有打印作业时,需要关闭电机电源和外设电源,以节省锂电池电量;因此,在系统进入待机状态之前的某个时间,MCU关闭电机驱动电源/外围电源,然后进入待机状态。