IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> 【嵌入式热敏打印模块(1)】 -> 正文阅读

[嵌入式]【嵌入式热敏打印模块(1)】


前言

在实际生活中,我们经常需要打印各种票据,如购物之后,收银员给出的小票。在医院挂号,挂号机打印出的序号。在需要打印信息的场景中,热敏打印机总是会出现。由于其体积较小,便于放置和信息更新快等优点,已被日常生活广泛使用。之前在项目中也接触到热敏打印机相关的应用,在网上也未收集到关于热敏打印机相关的更多信息,现在就自己的项目经历,与大家分享一下。


一、热敏打印模块

此次接触的打印模块为EM5820,它是由广州优库电子有限公司开发的一款嵌入式热敏打印模块,EM5820 可以支持热敏打印,最大打印宽度为 58mm。产品主要应用于医疗设备和电子称设备中, 也可以应用于其它的需要打印收据的场合。EM5820通过 USB/TTL/RS232 接口连接设备。
在这里插入图片描述在这里插入图片描述

二、使用注意事项

在拿到热敏打印机后,一头雾水,不知道如何使用。在网上搜索关于热敏打印机信息,相关信息寥寥无几,近乎没有。只能硬着头皮来,自己去尝试看如何去使用。在探索的过程中也遇到许多问题,浪费了不少时间和精力,现在就自己遇到的问题及解决方法与大家分享一下,希望为后来者提供参考。

1.测试热敏打印机模块

拿到打印机后,首先应该对其进行功能测试,以检验机器是否能正常工作,产品生产方通常都会提供测试方案。厂家提供热敏打印机功能测试方法有2种,第一种是使用USB接口,在电脑安装指定的软件,按照一定步骤进行测试即可,另一种是使用微控制器运行程序代码进行测试。比较这两种方法,前者似乎更简单,类似傻瓜相机的操作一样,而第二种方法,厂家并无详细的文档以告诉测试者如何进行测试,给出的测试SDK也仅仅是C文件和头文件,连完整的测试项目都未给出,显而易见,第二种测试方法相对于第一种的难度更大,并且容易出现由于人为疏忽造成的测试结果不准确。显然选择使用USB接口是测试的明智选择。

2.选择合适的供电电压

对于测试,我们选择第一种测试方法,将打印机连接电源(使用文档中已给出打印机电压和电流大小范围,我们选择5V电压供电为模块供电),再将热敏打印模块通过USB线与电脑相连,运行指定的程序,热敏打印机果然能够打印信息,但是打印出的文字和图形的墨迹太浅,几乎看不清,显然不能在实际生产中使用,需要对此进行探究,以确定是因为打印模块本身问题,还是用户自身操作问题。经过多次测试后(如重启热敏打印机、断开USB线重连等方法),得出的文字效果未有明显变化,仍旧不清晰。此时,想到厂家给出的只是关于热敏打印机的电压和电流的可选范围,在对打印模块供电电压,我们是在规定范围内随意选择的,会不会是电压太小?并且此为热敏打印模块,模块是通过打印头产生热量使打印字产生颜色变化的,温度不够,或许导致字迹不清晰。打印模块的热能是收到电压和电流影响的,不合适的电压将导致打印模块功率降低,产生的热能减少。可以尝试在使用手册规定的范围内升高供给打印机的电压,观察打印效果,看其是否有变化,如有变化,将会朝着什么方向转变。我们尝试将供给EM5820的电压提升到6V,打印出的文字效果比电压5V时,文字清晰多了。按照这样的方式,我们一步步在指定的电压范围内提升电压进行测试,查看效果,发现当电压提升到6.5V以上,打印效果不会有更大的提升,所以最终将电压确定在6.5V,此时打印的文字较为清晰,并且未给打印机提供过大的功率。由上可知,如热敏打印模块输出文字打印效果不清晰,可能是因为对其提供的电压太低了,不能产生足够热量,应该在使用手册中给出的电压范围内适当调高电压。
热敏打印机参数信息
在这里插入图片描述

3.选择合适的串口通信波特率

经过上一步,我们确定了热敏打印机是能够正常使用的,并能够打印出任意文字、图形等(测试打印出的内容包含文字和图形),下一步便开启对微控制器控制热敏打印机进行探索。厂家提供用于热敏打印机测试的SDK,SDK文件夹中只有c文件和h文件,未给出完整的测试项目。逐个查看所给文件后,得知厂家只提供热敏打印机使用的相关文件c文件和h文件,用户需要自己建立项目,再将热敏打印机文件加入即可,任何一种型号的控制器都可(只要是STM32系列的就可),并且采用串口通信方式来与热印机进行交互。考虑只需对热敏打印机通过串口进行通信,无需控制器具有较高性能,为降低材料成本,STM32F1系列的单片机即可满足需求。实验选择使用STM32F103C8T6作为微控制器与热敏打印机通信,选择串口1作为通信接口。重新创建一个串口收发项目之后,将热敏打印机相关文件移入其中,经过测试,是可以打印出东西,但是全部都是乱码,经过反复查看,发现自己创建的淳口通信程序的波特率选择的是115200,而使用手册中写明波特率默认为9600(当时也看到了关于波特率的信息,但是未明白“默认9600”是什么意思),要求串口波特率必须为9600,通过将串口通信速率调整到9600后,再经过实验,一切正常。全部的测试效果都能打印出来,效果清晰。由上可知如果打印出的效果是乱码,可能是波特率设置不正确导致的。
热敏打印机参数信息
在这里插入图片描述注意:热敏打印机与STM32单片机通过串口连接时,也需要注意接线方式,如果只是将VH、TX、RX和GND与单片机上对应位置相连,而忽略CTS,则单片机运行程序时,热敏打印机不会作出反应,还应该将即热敏打印机接口处CTS与STM32单片机的RTS相连。
热敏打印机接口图
在这里插入图片描述

在这里插入图片描述

`


总结

通过上述的开发分享,大家应该对嵌入式热敏打印模块有了大致的了解,下一步我们将进行二次开发,加油呀。

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2022-09-04 01:27:46  更:2022-09-04 01:32:04 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/22 1:14:15-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码