陳 斌,秦懷宇
(1.解放軍鎮(zhèn)江船艇學(xué)院,江蘇鎮(zhèn)江,2120131;2.江蘇科技大學(xué)蘇州理工學(xué)院,江蘇張家港,2156002)
基于Cortex-M0的熱敏打印機(jī)的設(shè)計
陳 斌1,秦懷宇2
(1.解放軍鎮(zhèn)江船艇學(xué)院,江蘇鎮(zhèn)江,2120131;2.江蘇科技大學(xué)蘇州理工學(xué)院,江蘇張家港,2156002)
本文介紹了由ARM微控制器中的Cortex-M0內(nèi)核的處理器LPC1114控制的熱敏打印機(jī)的組成,對熱敏打印機(jī)的原理及內(nèi)部構(gòu)成進(jìn)行重點分析,比較并討論了當(dāng)前熱敏打印機(jī)的前景及市場趨勢,提出了本研究的設(shè)計方案,詳細(xì)給出了整體的設(shè)計流程、硬件電路以及各個功能模塊的軟件設(shè)計。
LPC1114;步進(jìn)電機(jī);熱敏打印頭;過熱保護(hù)
熱敏打印機(jī)作為一種新型的電子產(chǎn)品,以其打印字符速度快、字跡清晰、體積小、易維護(hù)、易攜帶、噪聲小等優(yōu)點,深受用戶青睞,在美日等西方國家均己得到了廣泛的應(yīng)用[1]。因此具有著非常廣闊的市場前景。但國內(nèi)在研發(fā)生產(chǎn)熱敏打印機(jī)方面卻存在以下問題:
(1)對于熱敏打印機(jī)研發(fā)領(lǐng)域,很多發(fā)達(dá)國家對熱敏打印機(jī)的核心部件——打印頭的制作技術(shù)采取各項保密手段,以此來壟斷市場,從而獲得巨大利潤。
(2)受熱敏打印機(jī)的研發(fā)、生產(chǎn)技術(shù)能力的限制,目前國內(nèi)技術(shù)還不夠領(lǐng)先,研發(fā)技術(shù)還不夠高,這也導(dǎo)致很難做出較穩(wěn)定的優(yōu)秀產(chǎn)品;
(3)由于熱敏打印機(jī)畢竟是剛推出來的新型產(chǎn)品,人們對其了解還不夠深,價格也比較昂貴,導(dǎo)致很多人望而怯步。這也造成了該類打印機(jī)的推廣在一定程度上比較困難[2]。
本文基于Cortex-M0技術(shù),設(shè)計一款熱敏打印機(jī)。
1.1 總體設(shè)計
本文設(shè)計的熱敏打印機(jī)由主控芯片、熱敏打印頭、馬達(dá)驅(qū)動模塊、通信模塊、過熱保護(hù)模塊、供電模塊等部分組成。其中熱敏打印頭缺紙檢測模塊完成熱敏打印頭是否有紙的檢測;馬達(dá)驅(qū)動模塊控制步進(jìn)電機(jī)的走紙及其速度;通信模塊實現(xiàn)打印機(jī)與PC機(jī)之間的通信;熱敏打印頭過熱保護(hù)模塊防止熱敏打印頭因溫度過高而損壞;供電模塊負(fù)責(zé)給整個電路各個模塊供電。本設(shè)計選擇NXP的LPC1114單片機(jī)來作為主控芯片。
1.2 硬件選型
1)主控芯片
本文設(shè)計的58mm熱敏打印機(jī)采用成本較低的Cortex-M0處理器。這是目前市場上能耗最低、性價比較高的一款A(yù)RM處理器[3]。該處理器耗能小、代碼所用的空間比較小,促使單片機(jī)的研發(fā)人員可以用8位處理器的價位,來獲得32位處理器的性能,從而降低成本。
2)熱敏打印頭
本文采用精工公司生產(chǎn)的LTPZ245熱敏打印頭,其采用全新的結(jié)構(gòu)及打印技術(shù),小巧輕便。分離式的壓紙軸設(shè)計更便于上紙,加上低電壓驅(qū)動,可實現(xiàn)兩節(jié)鋰電池供電。廣泛應(yīng)用于測量分析儀、POS機(jī)、通訊設(shè)備或數(shù)據(jù)終端及各種便攜式設(shè)備上,已成為目前熱敏打印機(jī)業(yè)界的最暢銷機(jī)型。
3)馬達(dá)驅(qū)動芯片
由于LTPA245內(nèi)部不帶步進(jìn)電機(jī)驅(qū)動芯片,需外接驅(qū)動電路,故采用馬達(dá)驅(qū)動芯片drv8833驅(qū)動熱敏打印機(jī)內(nèi)部的步進(jìn)電機(jī)。drv8833是德州儀器公司設(shè)計生產(chǎn)的低工作電壓、低飽和壓降單片式步進(jìn)電機(jī)驅(qū)動器集成電路,為玩具、打印機(jī)及其他機(jī)電一體化應(yīng)用提供了一款雙通道橋式電機(jī)驅(qū)動器解決方案。
熱敏打印機(jī)通過RS232通信模塊接收由PC機(jī)像MCU發(fā)送的數(shù)據(jù),當(dāng)MCU接收到數(shù)據(jù)時,首先判斷該數(shù)據(jù)是命令字還是字符數(shù)據(jù),如果是命令字,則打印機(jī)按照命令動作;如果判斷為字符數(shù)據(jù),則從字庫中提取字符點陣,按行打印,走紙。
本設(shè)計使用的MCU是ARM微控制器中的Cortex M0的處理器LPC1114。LPC1114是基于ARM Cortex-M0內(nèi)核的低成本微控制器系列,可用于現(xiàn)有的8位/16位的應(yīng)用,其外設(shè)包括:高達(dá)32kB的Flash、8kB的數(shù)據(jù)存儲器、一個Fast-mode Plus的I2C總線接口、一個RS-485/EIA-485通用異步收發(fā)器(UART)、2個支持SSP功能的SPI接口、4個通用定時器,一個10位ADC,以及多達(dá)42個通用I/O引腳。在MCU模塊上有復(fù)位電路、時鐘電路、濾波電容、LPC1114 芯片和一個ISP下載口。如圖1所示:
1)復(fù)位電路
通電瞬間電容可以看作短路,所以RESET腳開始為低電平,隨著電容的充電,穩(wěn)定后VCC實際是加在電容上的,RESET腳最終為3.3V,低電平持續(xù)時間由RC時間常數(shù)決定。
2)時鐘電路
圖1 MCU模塊原理圖
本設(shè)計MCU的時鐘系統(tǒng)是可選部分,LPC1100系列Cortex-M0可在無外部晶振的情況下運行。因為LPC1100系列Cortex-M0內(nèi)部自帶12MHz的RC振蕩器,并且MCU在上電或者復(fù)位的時候會自動選擇使用內(nèi)部RC振蕩器為主時鐘源,但片內(nèi)外設(shè)的要求有時比較高,而內(nèi)部RC振蕩器的精度不高,所以有時候不得不使用精度更高的外部晶振。
打印系統(tǒng)主要包括:與PC機(jī)通信模塊,步進(jìn)電機(jī)控制模塊,打印數(shù)據(jù)控制模塊,溫度檢測模塊,缺紙檢測模塊,供電模塊控制模塊等。
熱敏打印機(jī)程序通常包括主程序main、中斷程序、串行通信程序、打印數(shù)據(jù)處理程序、打印數(shù)據(jù)輸出程序等模塊。其中,串行通信程序主要用于本系統(tǒng)接收上位機(jī)從串口發(fā)送過來的打印數(shù)據(jù),完成串口的初化、接收串口數(shù)據(jù)等工作;打印數(shù)據(jù)處理模塊通過單片機(jī)自帶的串口RXD和TXD等。
3.1 數(shù)據(jù)加載與印字
本設(shè)計采用軟件移位的方式將內(nèi)存緩沖區(qū)的數(shù)據(jù)輸出到熱敏打印頭的移位寄存器中。即用MCU的GPIO口來模擬串行數(shù)據(jù)從而傳輸時序的方式。為加快運算速度,用MCU的一組SPI總線接口取代GPIO口。
3.2 步進(jìn)電機(jī)走紙及驅(qū)動
用熱敏打印機(jī)內(nèi)部的二相四拍步進(jìn)電機(jī)來控制熱敏打印頭的走紙及走紙速度。由2路I/O口模擬2路PWM輸出,再經(jīng)過兩個非門,將輸出的2路模擬PWM波形轉(zhuǎn)換為4路,輸入步進(jìn)電機(jī)驅(qū)動器,驅(qū)動步進(jìn)電機(jī)。
3.3 保護(hù)與中斷
熱敏打印頭加熱時間一般為1ms,連續(xù)加熱超過1s后,很容易燒毀、損壞熱敏頭,所以實際的熱敏打印機(jī)必須對熱敏打印頭添加過熱保護(hù)電路。當(dāng)熱敏打印頭溫度過高時,過熱保護(hù)模塊輸出一個低電平到/INT0腳,使打印機(jī)進(jìn)入中斷。
3.4 字符處理
主控芯片接收到字符信息,而熱敏打印機(jī)在打印時輸出點陣信息,熱敏打印頭每次輸出一個點行信息。因此,需要將字符信息轉(zhuǎn)換為打印頭最終輸出的點陣字符。
該模塊的功能是將每行的漢字字符轉(zhuǎn)換成該行字符的點行信息,在字模緩存中保存。該函數(shù)首先將打印緩存初始化,避免出現(xiàn)亂碼,計算打印字符串的長度,然后根據(jù)字符來查找字模庫,并轉(zhuǎn)換為對應(yīng)的點行信息。
The Design of The Thermal Printer Based On Cortex-M0
Chen Bin1,Qin Huaiyu2
(1.Zhenjiang Water craft College, PLA,Jiangsu Zhenjiang, 212013;2.Suzhou Institute of Technology, Jiangsu University of Science and Technology,Jiangsu Zhangjiagang, 2156002)
This paper introduces the composition of the thermal printer control by the Cortex-M0, focusing on the analysis job characteristics and control principle of the thermal print, comparing and discussing the current common advantages and disadvantages of the thermal print in the system design, and coming up with the designing scheme of this study, presenting the overall design process, hardware circuit and software design of each functional module.
LPC1114; stepping motor; Thermal print head; Overheating protection
TP334.8
A