微型热敏打印机使用说明strpWord文档格式.docx
《微型热敏打印机使用说明strpWord文档格式.docx》由会员分享,可在线阅读,更多相关《微型热敏打印机使用说明strpWord文档格式.docx(55页珍藏版)》请在冰点文库上搜索。
![微型热敏打印机使用说明strpWord文档格式.docx](https://file1.bingdoc.com/fileroot1/2023-5/5/20c503b5-5210-47ba-b296-6bfb2cbec50b/20c503b5-5210-47ba-b296-6bfb2cbec50b1.gif)
日期:
年月日
摘要
微型热敏打印机在现代生活中应用得越来越广泛、深入,随着用户需求的多样化,市场上出现了各式各样的专用微型打印机,但由于其种类繁多,针对性太强,各个厂商之间的产品互不兼容,造成了一定的资源浪费。
笔者为微型热敏打印机开发了一套完整的控制电路,编写具有专门数据接口的上位机来控制嵌入式芯片进而控制微型热敏打印机打印数据,使得相关人员在二次开发时可以专注于应用开发。
本文详细地介绍了基于Cortex-M3的微型热敏打印机控制电路的设计与实现、上位机的编写、多线程技术的应用等,同时也给出了开发STM32F103系列最小系统板的具体过程,以及开发过程中的注意点等,此外作者也给出了自己在实际开发中掌握的一些技巧及开发经验。
关键词:
热敏打印机;
嵌入式系统;
STM32;
PCB设计;
VB.NET
ABSTRACT
Miniaturethermalprinterapplicationsismoreextensiveinmodernlife,in-depth,withthediversificationofuser’sneeds,awidevarietyofspecialmicro-printercomesoutinthemarket,butbecauseofitswiderangeoftargetedtoo,alltheproductsarenotcompatiblebetweenmanufacturers,resultinginawasteofresources.
Ihavedevelopedfortheminiaturethermalprinterwithacompletesetofcontrolcircuit,towritewithaspecialdatainterface,thehostcomputertocontroltheembeddedchipandthencontroltheminiaturethermalprinter,printdata,andenablesstaffcanfocusonapplicationdevelopmentinthesecondarydevelopment.ThisarticledescribedindetailbasedontheCortex-M3-miniaturethermalprintercontrolcircuitdesignandimplementationofthehostcomputertowritemulti-threadedapplication,minimumsystemboardinthedevelopmentofSTM32F103seriesisalsogivenspecificprocess,aswellasdevelopmentattentiontopointsintheprocess,inadditiontotheauthoralsogivesthemasterintheactualdevelopmentofskillsanddevelopmentexperience.
Keywords:
MiniatureThermalPrinter;
EmbeddedOperatingSystem;
PCBDesign;
第一章绪论
1.1课题背景
通信电子计算机自20世纪40年代诞生之后,一直向着高性能和智能化两个方向发展。
但在近20年间特别是近10年,借助于微电子技术、通信技术和感知测量技术的发展,一个完整的计算机系统可以在更小的空间内实现,且仍能满足用户的需求,这使得计算机系统的应用范围从传统的科学计算与信息处理进一步拓展到通信、娱乐、视讯、测量、控制、国防、航空航天等各类应用,这种趋势体现为近年嵌入式技术的兴起,大量计算机系统设计的目标,也由传统的以高性能为重偏向更加强调满足用户需求和资源约束的平衡设计。
在这种产业背景下,作为一家在20世纪90年代初刚刚推出ARM内核的小公司,就在20年内迅速成长为全球领先的嵌入式与移动领域的旗舰厂商,今天,基于ARM内核的芯片年销量就超过百,ARM已经成为嵌入式领域的事实标准之一。
Cortex系列内核是ARM公司在新的技术条件推出的全新ARM内核产品,并按照市场和应用不同分为高性能、控制和实时应用三个系列,即Cortex-A,Cortex-M和Cortex-R,其中Cortex-M3内核旨在面向控制类应用,提供一种高性能,低成本、具有卓越计算能力和出色中断响应速度的32位嵌入式平台。
由于Cortex-M3定位准确,出色地平衡了成本、性能、功耗等各方面的要求,在市场上迅速被ST,TI,Philips/NXP等众多厂商所接受,并在实际中替代了传统应用中大量的16位和高端8位芯片。
其中,ST公司推出的STM32F103系列通用微控制芯片性能优越、成本低廉、资源丰富,尤其适合工业自动化测控应用,自推出伊始就获得了市场的高度认可并在实际中获得了广泛应用,也恰好为本课题偏重市场和自动化类应用的定位提供了完善的硬件支持。
1.2嵌入式的定义
由于嵌入式系统技术与非计算机学科如电子、通信、传感与测量、控制等学科的结合非常紧密,应用范围非常广泛,以至于很难给出一个严格的、公认的嵌入式系统定义,这里仅给出一个比较全面合理的说明:
嵌入式系统是以应用为核心,以现代计算机技术为基础,能够根据用户需求(功能、可靠性、成本、体积、功耗、环境等)灵活裁剪软硬件模块的专用计算机系统。
在上述关于什么是嵌入式系统的说明中,有这样几个要点:
●以应用为中心:
强调嵌入式系统的目标是满足用户的特定需求,而不是像前的PC机那样定位在通用信息处理。
就绝大多数完整的嵌入式系统而言,用户打开电源即可直接享用其功能,无需二次开发或仅需少量配置操作。
●专用性:
嵌入式系统的应用场合大多数对可靠性、实时性有较高要求,这样就决定了服务于特定应用的专用系统是嵌入式系统的主流模式,它并不强调系统的通用性和可扩展性,这与20世纪80年代强调通用化的微型计算机技术在出发点上是根本不同的。
这种专用性通常也导致嵌入式系统是一个软硬件紧密集成的最终系统,因为这样才能更有效地提高整个系统的可靠性并降低成本,并使之具有更好的用户体验。
●以现代计算机技术为核心:
嵌入式系统的最基本支撑技术,大致上包括集成电路设计技术、系统结构技术、传感与检测技术、嵌入式操作系统(EnbeddedOS/EOS)和实时操作系统(RTOS)技术、资源受限系统的高可靠软件开发技术、系统形式化规范与验证技术、通信技术、低功耗技术、特定应用领域的数据分析、信号处理和控制优化技术等,它们围绕计算机基本原理,集成进特定的专用设备就形成了一个嵌入式系统。
所以本质上嵌入式系统也是各种技术的集大成者。
●软件硬件可裁剪:
嵌入式系统针对的应用场景如此之多,并带来差异性极大的设计指标要求(功能、性能、可靠性、成本、功耗),以至于现实上很难有一套方案满足所有的系统要求,因此根据需求的不同,灵活裁剪软硬件、组建体符合要求的最终系统是嵌入式技术发展的必然技术路线。
图1-1嵌入式系统的核心技术与外围技术
1.3嵌入式的发展历史
嵌入式系统的发展主要来源于两大动力:
社会需求的拉动与先进技术的推动,而且需求拉动为主,技术推动为辅。
需求提供了市场,带动了新技术的产生,刺激了新技术的推广,如果没有需求就没有市场,再好的技术也会走向消亡;
另一方面,技术在一定程度上也可以反作用于需求,因为先进的技术使得不可能成为可能,使人们最初的梦想成为现实,最终有可能创造出新的需求和市场。
图1-2嵌入式系统产业的发展动力示意图:
需求拉动和技术驱动
嵌入式系统的发展也深受这两大动力的左右。
让我们简单回顾一下其发展规律:
20世纪30-50年代:
计算机诞生,十余台设计各异的计算机诞生在世界各地,并很快统一到冯•诺依曼架构下。
1958年,TI公司的杰克•基尔比发明了第一块集成电路,从此,计算机技术的发展与集成电路工艺的发展紧密结合在一起。
1961年,TI公司研发出第一个基于IC的计算机。
1964年,全球IC出货量首次超过10亿美元。
1965年,高登•摩尔提出了描述集成电路工业发展规律的摩尔定律;
同年,中国的第一块集成电路诞生,仅比美国晚了7年。
1968年,Intel公司诞生,推出第一片1K字节的RAM。
1971年,Intel推出微处理器4004.这是第一块在实际中被广泛使用的CPU芯片。
紧接着,TI,Zilog,Motorola分别于1971、1973、1974年推出了基于半导体集成电路技术的CPU。
集成电路技术成为计算机工业的基础支撑技术。
嵌入式系统从此也步入了它的早期阶段。
这一阶段的突出特征是:
以微处理器CPU芯片为核心,辅以外围电路,形成一块相对完整的电路模块,用于工业控制等系统中,这种架构与同时期计算机的架构基本完全相同,只不过用途不同而已。
这些模块被人称为单板机,意指在一块电路板上实现了一台计算机。
即使是在今天,单板机模块依然在很多领域发挥余热。
1981年,Intel公司推出了8位微处理器8051,它在单芯片内集成了CPU、4K内存、通用I/O、计数器、串行通信模块以及中断管理模块,已经是一个实用的微控制器(MCU)芯片了。
在IC工业的支持下,8051的出现极大降低了计算机应用的门槛,实现了从单板到单片的飞跃,8051因此在实际中获得了极其广泛的应用,其他各大公司如ATMEL、飞利浦、华邦等相继开发了功能更多、更强大的8051兼容产品,即使是在今天,8051架构仍然随处可见。
这一阶段的主要特征就是从单板到单片的技术飞跃,以及8051在实现中的广泛应用,可认为是嵌入式系统发展的中期阶段。
1990年,ARM公司诞生。
1991年,ARM公司推出32位ARM6低功耗内核,旋即升级为ARM7。
ARM7成为世界上采用量最大的CPU内核,当今世界ARM内核驱动了超过60亿的设备,成为嵌入式系统领域发展中的重要里程碑。
至2009年,采用ARM内核的处理器的销量已经超过了100亿个。
2004年,ARM公司推出了Cortex内核系统,Cortex的A,M和R系列分别针对高性能类、微控制器类和实时类应用,既是对过去ARM产品线的重新整理,也包含了大量革命式的技术突破,特别是进一步强化了ARM在低功耗领域的技术优势、Cortex的优点也正在逐步为各大厂商和客户所认识,正在代替传统了ARM系统内核成为客户的首选技术方案。
回顾过去的这段历史,我们可以发现,需求是嵌入式技术和系统得以生存发展的根本动因,但是技术的突破也可能创造出新的需求,两者的发展呈现典型的互动关系。
任何产业趋势的动向,都应该放到需求拉动和技术驱动的框架下去体味。
1.4嵌入式系统的应用领域
嵌入式系统技术具有非常广阔的应用前景,其应用领域可以包括:
1、工业控制:
基于嵌入式芯片的工业自动化设备将获得长足的发展,目前已经有大量的8、16、32位嵌入式微控制器在应用中,网络化是提高生产效率和产品质量、减少人力资源主要途径,如工业过程控制、数字机床、电力系统、电网安全、电网设备监测、石油化工系统。
就传统的工业控制产品而言,低端型采用的往往是8位单片机。
但是随着技术的发展,32位、64位的处理器逐渐成为工业控制设备的核心,在未来几年内必将获得长足的发展。
2、交通管理:
在车辆导航、流量控制、信息监测与汽车服务方面,嵌入式系统技术已经获得了广泛的应用,内嵌GPS模块,GSM模块的移动定位终端已经在各种运输行业获得了成功的使用。
目前GPS设备已经从尖端产品进入了普通百姓的家庭,只需要几千元,就可以随时随地找到你的位置。
3、信息家电:
这将称为嵌入式系统最大的应用领域,冰箱、空调等的网络化、智能化将引领人们的生活步入一个崭新的空间。
即使你不在家里,也可以通过电话线、网络进行远程控制。
在这些设备中,嵌入式系统将大有用武之地。
4、家庭智能管理系统:
水、电、煤气表的远程自动抄表,安全防火、防盗系统,其中嵌有的专用控制芯片将代替传统的人工检查,并实现更高,更准确和更安全的性能。
目前在服务领域,如远程点菜器等已经体现了嵌入式系统的优势。
5、POS网络及电子商务:
公共交通无接触智能卡(ContactlessSmartcard,CSC)发行系统,公共电话卡发行系统,自动售货机,各种智能ATM终端将全面走入人们的生活,到时手持一卡就可以行遍天下。
6、环境工程与自然:
水文资料实时监测,防洪体系及水土质量监测、堤坝安全,地震监测网,实时气象信息网,水源和空气污染监测。
在很多环境恶劣,地况复杂的地区,嵌入式系统将实现无人监测。
7、机器人:
嵌入式芯片的发展将使机器人在微型化,高智能方面优势更加明显,同时会大幅度降低机器人的价格,使其在工业领域和服务领域获得更广泛的应用。
这些应用中,可以着重于在控制方面的应用。
就远程家电控制而言,除了开发出支持TCP/IP的嵌入式系统之外,家电产品控制协议也需要制订和统一,这需要家电生产厂家来做。
同样的道理,所有基于网络的远程控制器件都需要与嵌入式系统之间实现接口,然后再由嵌入式系统来控制并通过网络实现控制。
所以,开发和探讨嵌入式系统有着十分重要的意义。
1.5本文结构安排
本文从结构上大致可以分为四个部分,第一部分由第1章绪论构成,讲述嵌入式系统的概念、历史、应用等;
第二部分是第2章,主要分绍了STM32单片机的基本结构及组成,并详细阐述了系统整体方案设计;
第三部分由第3至第5章构成,这部分对系统的各个模块作了非常详细的设计说明,其中也会介绍一些相关的开发工具知识以及通信协议等相关知识;
第四部分由第6和第7章构成,主要分析了在系统调试过程中出现的各种问题及解决方法,分两个阶段进行,先测试各个模块的功能与稳定性,在各个功能模块正常的情况下联调,进而使整个系统达到设计目标,同时也会作一些细微的改动使系统更加完善。
并在第7章给出了结论。
第二章总体方案设计
2.1STM32单片机简介
STM32系列基于专为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARMCortex-M3内核。
按性能分成两个不同的系列:
STM32F103“增强型”系列和STM32F101“基本型”系列。
增强型系列时钟频率达到72MHz,是同类产品中性能最高的产品;
基本型时钟频率为36MHz,以16位产品的价格得到比16位产品大幅提升的性能,是16位产品用户的最佳选择。
两个系列都内置32K到128K的闪存,不同的是SRAM的最大容量和外设接口的组合。
时钟频率72MHz时,从闪存执行代码,STM32功耗36mA,是32位市场上功耗最低的产品,相当于0.5mA/MHz。
图2-1STM32产品线的设计理念
在平时做开发的时候经常会遇到这样的问题,一方面抱怨16位单片机有限的指令和性能,另一方面又抱怨32位处理器的高成本和高功耗,那么,基于ARMCortex-M3内核的STM32系列处理器则很好地解决了这个问题。
它很好地解决了性能、成本、功耗等因素之间的平衡。
而且对我们新手来说最主要就是上手难度问题,STM32很好地解决了这个问题,它自带一个官方的库,而这个库的源代码是开放的,在作相应的地开发时只需将参数改一下即可,十分方便,而且bug也少。
其主要特点如下:
●核心
−ARM32位的Cortex™-M3CPU
−72MHz,高达90DMips,1.25DMips/MHz
−单周期硬件乘法和除法——加快计算
●存储器
−从32K字节至128K字节闪存程序存储器
−从6K字节至20K字节SRAM
−多重自举功能
●时钟、复位和供电管理
−2.0至3.6伏供电和I/O管脚
−上电/断电复位(POR/PDR)、可编程电压监测器(PVD)、掉电监测器
−内嵌4至16MHz高速晶体振荡器
−内嵌经出厂调校的8MHz的RC振荡器
−内嵌40kHz的RC振荡器
−内嵌PLL供应CPU时钟
−内嵌使用外部32kHz晶体的RTC振荡器
●低功耗
−3种省电模式:
睡眠、停机和待机模式
−VBAT为RTC和后备寄存器供电
●2个12位模数转换器,1us转换时间(16通道)
−转换范围是0至3.6V
−双采样和保持功能
−温度传感器
●调试模式
−串行线调试(SWD)和JTAG接口
●DMA
−7通道DMA控制器
−支持的外设:
定时器、ADC、SPI、I2C和USART
●多达80个快速I/O口
−26/36/51/80个多功能双向5V兼容的I/O口
−所有I/O口可以映像到16个外部中断
●多达7个定时器
−多达3个同步的16位定时器,每个定时器有多达4个用于输入捕获/输出比较/PWM或脉冲计数的通道
−16位6通道高级控制定时器
−多达6路PWM输出
−死区控制、边缘/中间对齐波形和紧急制动
−2个看门狗定时器(独立的和窗口型的)
−系统时间定时器:
24位的、带自动加载功能的
●多达9个通信接口
−多达2个I2C接口(SMBus/PMBus)
−多达3个USART接口,支持ISO7816,LIN,IrDA接口和调制解调控制
−多达2个SPI同步串行接口(18兆位/秒)
−CAN接口(2.0B主动)
−USB2.0全速接口
图2-2STM32F103系列结构框图
应用领域:
工业:
可编程控制器(PLC)、变频器、打印机、扫描仪、工控网络;
家电:
电机控制、应用控制
低功耗:
手持仪器、三相功率表
消费类:
PC外设,游戏机、数码相机,GPS平台
建筑与安防:
警报系统、可视电话
发展趋势:
STM32推出市场已经有几年了,以后发展将会向无线通信以及面向低成本发展,单片化程度更高,即包含液晶驱动等专用模块,并逐步扩大对消费电子、通信设备及工业控制领域的占有率。
同时开发人员的素质也会逐步提高,薪资水平也同等地提高了,这对大学毕业生来说是一件好事,如果在学校开发一些产品对以后走上工作岗位将会有很大帮助。
2.2热敏打印机介绍
2.2.1热敏打印机的原理
热敏打印机的原理是,在淡色材料上(通常是纸)覆上一层透明膜,将膜加热一段时间后变成深色(一般是黑色,也有蓝色)。
图象是通过加热,在膜中产生化学反应而生成的。
这种化学反应是在一定的温度下进行的。
高温会加速这种化学反应。
当温度低于60℃时,膜需要经过相当长,甚至长达几年的时间才能变成深色;
而当温度为200℃时,这种反映会在几微秒内完成。
图2-3热敏打印机
热敏打印机有选择地在热敏纸的确定位置上加热,由此就产生了相应的图形。
加热是由与热敏材料相接触的打印头上的一个小电子加热器提供的。
加热器排成方点或条的形式由打印机进行逻辑控制,当被驱动时,就在热敏纸上产生一个与加热元素相应的图形。
控制加热元素的同一逻辑电路,同时也控制着进纸,因而能在整个标签或纸张上印出图形。
最普遍的热敏打印机使用一种带加热点阵的固定打印头,打印头设有320个方点,每一点为0.25mm×
0.25mm。
利用这种点阵,打印机可把打印点在热敏纸的任意位置上。
这种技术已用于纸张打印机和标签打印机上。
热敏打印机只能使用专用的热敏纸,热敏纸上涂有一层遇热就会产生化学反应而变色的涂层,类似于感光胶片,不过这层涂层是遇热后会变色,利用热敏涂层的这种特性,出现了热敏打印技术。
热敏纸是一种特殊的涂布加工纸,其外观与普通白纸相似。
热敏纸表层光滑,是由普通纸张作为纸基,上面涂布一层热敏发色层,都涂在普通纸张表面的一面,发色层是由胶粘剂、显色剂、无色染料(或称隐色染料)组成,没有通过微胶囊予以隔开,化学反应处于“潜伏”状态。
当热敏纸遇到发热的打印头时,打印头所打印之处的显色剂与无色染料即发生化学反应而变色,形成图文。
热敏纸被置于70℃以上环境时,热敏涂层开始变色。
其变色的原因还要从它的成份谈起。
热敏纸涂层中的热敏成份主要是两种:
一种是无色染料或称隐色染料;
另外一种是显色剂。
这类热敏纸也被称为双组分化学型热敏记录纸。
常用作无色染料的主要是:
三苯甲烷基苯酞体系的结晶紫内酯(CVL)、荧烷体系、无色苯酰亚甲基蓝(BLMB)或螺吡喃体系等物质。
常用作显色剂的主要是:
对位羟基苯甲酸及其酯类(PHBB、PHB)、水杨酸、2,4-二羟基苯甲酸或芳族砜等物质。
热敏纸遇热后无色染料与显色剂发生化学反应产生颜色,于是使用热敏纸在传真机上接收信号打印或直接用热敏打印机打印时,图文就显示出来了。
由于用作无色染料的品种有许多种,所以显现的字迹颜色就有不同,有蓝色、紫红色、黑色等。
2.2.2热敏打印机常规驱动控制方式
热敏控制单元主要有以下几部分:
(1)主控芯片
采用Freescale公司S12系列单片机中的MC9S12D64作为主控器件。
该器件是一款性能优良的单片机,包含一个16位中央处理单元、64KBFlash、4KBRAM、1KBEEPROM、两个异步串行通信接口和一个同步串行接口等丰富资源,能够满足本设计的需求。
该器件具有良好的稳定性,使得打印机能够在恶劣的工业现场使用。
(2)热敏打印头过热保护模块
热敏打印头加热时间一般为1mS,连续加热超过1s后,很容易烧毁热敏头,所以必须对热敏打印头添加过热保护电路。
过热保护电路图如图3所示。
图中VH为7.2V热敏打印头驱动电压,VH的供给与否由常开继电器控制。
由CPU的一个I/O口输出控制加热电压源控制端TCl,参见图2与图3。
TH为外部电阻与热敏打印头内部热敏电阻的分压值。
热敏打印头温度升高,则TH电压降低。
当热敏打印头温度上升到一定值时,TH电压低于比较器U1B的引脚6参考电压,则引脚7输出一个低电平,此时无论ICI为何值,与门U6的引脚3都为低电平,进而Ql截止,继电器断开,热敏打印头加热电源被切断。
同时主控器件检测到比较器U1B的引脚7输出低电平信号,进入中断,暂停打印工作。
当检测到U1B的引脚7为高电平后,延时一段时间,出中断。
此时若热敏打印头温度降低,TH电压高于U1B的引脚6参考电压后,CPU恢复到正常工作情况;
反之,比较器U1B的引脚7输出依然是低电平,继电器保持断开;
主控器件再次进入中断模式。
这样就可以起到保护热敏打印头的作用。
图2-4过热保护电路
(3)步进电机驱动模块
步进电机是将输入的电脉冲信号转换成角位移或直线位移的伺服电动机。
FTP-628热敏打印头中使用的是二相四拍步进电机控制打印纸走