單片機(jī)控制微型打印機(jī)_第1頁
單片機(jī)控制微型打印機(jī)_第2頁
單片機(jī)控制微型打印機(jī)_第3頁
單片機(jī)控制微型打印機(jī)_第4頁
單片機(jī)控制微型打印機(jī)_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、單片機(jī)限制微型打印機(jī)1引言由于常用的微型針式打印機(jī)的速度慢,噪聲大,無法滿足奧些場合的需要.微型熱敏打印機(jī)具有打印速度快、噪音低、可靠性高、字跡清楚、機(jī)頭小而輕等優(yōu)點(diǎn),可滿足各種場合的打印要求,因此得到廣泛應(yīng)用.筆者在汽車行駛記錄儀的開發(fā)過程中,根據(jù)廠家要求,選用較為先進(jìn)的熱敏打印機(jī)作為打印設(shè)備.但微型熱敏打印頭對打印時(shí)序和溫度要求較高,一旦限制不當(dāng)極易造成打印頭燒毀.因此,在有合理的硬件設(shè)計(jì)的根底上,軟件設(shè)計(jì)也十分重要.本文使用莫些軟件設(shè)計(jì)替代了局部硬件電路,使打印機(jī)的限制電路得到了簡化.摘要:介紹了基于89S51單片機(jī)的微型熱敏打印機(jī)的組成,分析了打印原理,詳細(xì)給由了整體流程以及各個(gè)功能模

2、塊的軟件設(shè)計(jì).熱敏打印頭采用I/O模擬串行數(shù)據(jù)傳輸實(shí)現(xiàn)數(shù)據(jù)加載.設(shè)計(jì)的微型熱敏打印機(jī)運(yùn)用于實(shí)際,取得了良好的效果.關(guān)鍵詞:熱敏打印機(jī)過熱保護(hù)步進(jìn)電機(jī)數(shù)據(jù)加載2 打印原理選用的FTP-628作為熱敏打印頭.該熱敏打印頭點(diǎn)結(jié)構(gòu)384點(diǎn)/行,水平方向點(diǎn)密度:8點(diǎn)/mm,垂直方向行間距:8點(diǎn)/mm有效打印寬度48mm打印速度最大為60mm秒1.要打印的數(shù)據(jù)在時(shí)鐘CLK的配合下,經(jīng)由數(shù)據(jù)輸入腳DI移到熱敏機(jī)芯內(nèi)部的移位存放器中.經(jīng)384個(gè)時(shí)鐘周期,一行384位數(shù)據(jù)全部移到移位存放器后,鎖存端的鎖存信號/LAT由CPUS低,移位存放器的數(shù)據(jù)被鎖存到鎖存器.然后熱敏頭加熱限制信號STB產(chǎn)生高電平,此時(shí)根據(jù)3

3、84點(diǎn)輸入的DI數(shù)據(jù)是1或者是0決定發(fā)熱元件是否發(fā)熱,由此在熱敏紙上產(chǎn)生要打印的點(diǎn)行.3 系統(tǒng)整體框圖本文介紹的微型熱敏打印機(jī)由主控芯片、步進(jìn)電機(jī)驅(qū)動(dòng)模塊、熱敏打印頭過熱保護(hù)模塊、熱敏打印頭缺紙檢測模塊、RS-232通信模塊、供電模塊等局部組成.其中步進(jìn)電機(jī)驅(qū)動(dòng)模塊負(fù)責(zé)限制打印紙走紙及走紙速度;熱敏打印頭過熱保護(hù)模塊預(yù)防熱敏打印頭溫度過高損壞;熱敏打印頭缺紙檢測電路完成熱敏打印頭是否有紙檢測;RS-232通信模塊實(shí)現(xiàn)打印機(jī)與上位機(jī)之間的通信;供電模塊給限制電路及熱敏打印頭供電.根據(jù)實(shí)際需要,考慮本錢,選擇89S51單片機(jī)作為主控芯片2.如圖1,給由了主控芯片與各個(gè)模塊之間的接口功能設(shè)計(jì).圖1主

4、控芯片與功能模塊的接口設(shè)計(jì)4 系統(tǒng)軟件設(shè)計(jì)4.1 整體流程如圖2,給由了整個(gè)系統(tǒng)工作的軟件流程圖.本熱敏打印機(jī)的軟件設(shè)計(jì)主要是通過RS-232通信模塊接收由主機(jī)傳來的數(shù)據(jù).當(dāng)接收到數(shù)據(jù)時(shí),首先要判斷是命令字還是字符數(shù)據(jù).如果是命令字,那么打印機(jī)根據(jù)命令動(dòng)作;如果判斷為字符數(shù)據(jù),那么從字庫中提取字符點(diǎn)陣,按行打印,走紙.圖2系統(tǒng)工作流程圖4.2 數(shù)據(jù)加載與印字將內(nèi)存緩沖區(qū)的數(shù)據(jù)輸生到熱敏打印頭的移位存放器中,可以通過硬件方式和軟件移位的方式實(shí)現(xiàn)3o本打印機(jī)實(shí)現(xiàn)方案采用的是后者.一般情況下,軟件移位是由I/O口模擬串行數(shù)據(jù)傳輸時(shí)序.圖3為I/O實(shí)現(xiàn)數(shù)據(jù)移位流程圖.P1.0口模擬時(shí)鐘CLOCKP1.

5、1口在CLOCK的配合下輸由數(shù)據(jù)DATA輸由數(shù)據(jù)到熱敏打印頭內(nèi)部的移位存放器中.P20:5分別與打印頭內(nèi)部的加熱選通信號STB0:5相連接.當(dāng)數(shù)據(jù)全部移入到移位存放器后,對STB0:5操作,加熱印字.由于熱敏打印機(jī)是通過打印頭加熱后在熱敏打印紙上灼燒印字,所以,加熱時(shí)間的長短決定了印字的清楚與快慢.因此,根據(jù)實(shí)際情況,合理的設(shè)計(jì)加熱時(shí)間對于實(shí)現(xiàn)熱敏打印機(jī)的高質(zhì)量打印十分重要.圖3I/O口實(shí)現(xiàn)數(shù)據(jù)移位流程圖4.3 步進(jìn)電機(jī)走紙及驅(qū)動(dòng)P1.3w.51kaifaccnr/Pl.2/PL3I/O口模擬輸由PWM勺時(shí)序圖設(shè)計(jì)的熱敏打印機(jī)內(nèi)部的二相四拍步進(jìn)電機(jī)限制打印頭的走紙及走紙速度.由2路I/O口模擬

6、2路PW嘛由,再經(jīng)過兩個(gè)非門,將輸由的2路模擬PW瞰形轉(zhuǎn)換為4路,輸入步進(jìn)電機(jī)驅(qū)動(dòng)器,驅(qū)動(dòng)步進(jìn)電機(jī)4.圖4為P1.2與P1.3口模擬輸由PWM勺時(shí)序圖.在一個(gè)周期內(nèi),P1.2較P1,3延時(shí)3/4個(gè)周期.4.4 保護(hù)與中斷熱敏打印頭加熱時(shí)間一般為1ms,連續(xù)加熱超過1s后,很容易燒毀、損壞熱敏頭,所以實(shí)際的熱敏打印機(jī)必須對熱敏打印頭添加過熱保護(hù)電路.當(dāng)熱敏打印頭溫度過高時(shí),過熱保護(hù)模塊輸由一個(gè)低電平到/INT0腳,使打印機(jī)進(jìn)入中斷3o圖5為過熱保護(hù)中斷流程圖.進(jìn)入中斷后,主控芯片斷開熱敏打印頭加熱供電限制繼電器,停止熱敏打印頭的加熱供電,并暫停其他動(dòng)作.當(dāng)熱敏打印頭溫度降低后,那么過熱保護(hù)模塊輸

7、由一個(gè)高電平到/INT0腳,此時(shí),打印機(jī)延時(shí)一段時(shí)間后由中斷.熱敏打印頭內(nèi)部用光電繼電器作為傳感器,檢測打印頭是否有紙.當(dāng)熱敏打印頭無紙時(shí),傳感器中的發(fā)光二極管發(fā)生的光束無法經(jīng)由打印紙反射到光敏三極管上,光敏三極管由此而無法導(dǎo)通,經(jīng)過外部電路后,/INT1為低電平,進(jìn)入中斷.反之,/INT1為高電平,工作正常.其中斷流程與過熱保護(hù)中斷類似.進(jìn)入中斷屏蔽產(chǎn)中斷|將/1MT晶麗H|斷開力魄士電B電器團(tuán)合加墊供電繼電整,蜜,im4斷使能|圖5過熱保護(hù)中斷流程圖4.5 字符庫的構(gòu)造與提取由于本打印機(jī)是應(yīng)用于汽車行駛記錄儀的專用打印機(jī),根據(jù)汽車行駛記錄儀的要求,約需使用100個(gè)左右的漢字以及26個(gè)大寫英

8、文字母以及10個(gè)阿拉伯?dāng)?shù)字,為降低字庫對硬件存儲(chǔ)空間的要求,采用自定義的字符庫.另外,自定義的字符庫靈活性較強(qiáng),在自定義字庫中,這樣既可以在同等打印寬度的情況下實(shí)現(xiàn)靈活打印,也可以使打印由來的字符效果美觀.提取字符點(diǎn)陣時(shí),首先判斷字符類型,再尋得要打印字符的首地址,根據(jù)該字符的點(diǎn)陣標(biāo)準(zhǔn),從字庫中取由打印點(diǎn)陣放入緩沖區(qū),進(jìn)而加載,并打印.5 結(jié)束語本文使用軟件實(shí)現(xiàn)了熱敏打印機(jī)的運(yùn)行限制.實(shí)驗(yàn)證實(shí),微型熱敏打印機(jī)在實(shí)時(shí)性要求不高的諸多場合能正常運(yùn)行,驗(yàn)證了設(shè)計(jì)方案的合理性.而對于實(shí)時(shí)性要求高、本錢并不敏感的打印環(huán)境,那么應(yīng)該引入實(shí)時(shí)操作系統(tǒng),實(shí)現(xiàn)對打印機(jī)的實(shí)時(shí)操作.本文創(chuàng)新點(diǎn):為簡化硬件電路,采用

9、軟件移位實(shí)現(xiàn)數(shù)據(jù)加載,通過軟件產(chǎn)生步進(jìn)電機(jī)所需的PWMB區(qū)動(dòng)信號;為減小打印機(jī)對存儲(chǔ)空間的需求,針對汽車行駛記錄儀使用字符少的特點(diǎn),設(shè)計(jì)了自定義的字符庫.下面還介紹一個(gè)摘要:在分析M-164微型打印機(jī)控打原理的根底上,設(shè)計(jì)了以89C52為核心的漢字微型打印機(jī),介紹了主要的硬件構(gòu)成及主要的控打軟件.這種微型打印機(jī)是儀器儀表的重要輸由設(shè)備.關(guān)鍵詞:單片機(jī);打印限制;并行接口;存貯器引言由于單片機(jī)具有簡單實(shí)用、高可靠性、良好的性能價(jià)格比以及體積小等優(yōu)點(diǎn),已經(jīng)在各個(gè)技術(shù)領(lǐng)域得到了迅猛開展.本文著重介紹89C52對并行接口的微型打印機(jī)的限制,以便更好地了解和掌握單片機(jī)對外部接口的一般和一些特殊功能的應(yīng)用

10、.2限制打印原理89C52單片機(jī)執(zhí)行程序存貯器中的程序,限制電機(jī)帶動(dòng)滑槽輪及蝸桿轉(zhuǎn)動(dòng):1,使打印機(jī)的機(jī)頭滑架左右移動(dòng),從而不斷改變同一點(diǎn)行上的打點(diǎn)位置.蝸桿的轉(zhuǎn)動(dòng)一方面通過凸輪帶動(dòng)走紙機(jī)構(gòu)實(shí)行走紙,另一方面驅(qū)動(dòng)色帶移動(dòng).電機(jī)轉(zhuǎn)動(dòng)時(shí)感應(yīng)線圈有一個(gè)3V的正弦信號,經(jīng)過整形電路后成為方波,此方波輸入到89C52,經(jīng)過89C52相應(yīng)的指令檢測此方波的變化時(shí)刻從上升沿變到下降沿或者從下降沿變到上升沿時(shí)刻,在方波變化時(shí)刻使打印機(jī)的相應(yīng)打針進(jìn)行沖打,完成打印任務(wù),同時(shí)由這個(gè)方波的變化保證各打印點(diǎn)之間的距離相等.當(dāng)機(jī)頭滑架到達(dá)最左邊時(shí),磁鐵使干簧管閉合,這時(shí)單片機(jī)送由一負(fù)脈沖作為行同步信號,使每行打印時(shí)在最左

11、端對齊.3硬件組成3.1驅(qū)動(dòng)電路用89C52的P1口的P10P14分別限制打印機(jī)的電機(jī)及打印針頭,P3.3限制干簧繼電開關(guān),當(dāng)滑架到達(dá)最左端時(shí),電機(jī)每轉(zhuǎn)一圈,干簧繼電開關(guān)閉合一次,P3.3就接地一次發(fā)生一負(fù)脈沖作為同步信號,以保證打印時(shí)每行在最左端對齊.在以前眾多微型打印機(jī)中,由于應(yīng)用三極管的拉電流,當(dāng)單片機(jī)上電復(fù)位時(shí)P1口的初始狀態(tài)為輸入方式,所以P10P17均為高電平,如果沒有一個(gè)非門2,那么單片機(jī)上電復(fù)位時(shí)就會(huì)使組成功率放大器由2個(gè)NPN管構(gòu)成的三極管導(dǎo)通,從而使電機(jī)轉(zhuǎn)動(dòng)和4個(gè)打針同時(shí)通電,這是不允許的.在這里使用灌電流足以驅(qū)動(dòng)電機(jī)和打針,故不需非門,如圖1所示.電機(jī)轉(zhuǎn)動(dòng)時(shí),感應(yīng)線圈輸由

12、幅值為3V的正弦波,經(jīng)10,11兩端子送由到晶體管整形為方波后送入P3.4,P3.4檢測此方波作為打印同步信號,以保證打印點(diǎn)之間距離相等.4只打針循環(huán)同步情況如圖2所示.由圖2可知:A,C打針是在方波下降到來時(shí)刻沖打,B,D打針在方波上升到來時(shí)沖打.4只打針A,B,C,D在滑架上從左到右水平安裝,間隔24個(gè)點(diǎn)位.在打印每行96個(gè)點(diǎn)時(shí),他們同時(shí)移動(dòng).次序依次通電鼓勵(lì),每打1點(diǎn),滑架右移1/4點(diǎn)位,4只打針打完正好移動(dòng)1個(gè)點(diǎn)位.沖打1點(diǎn)行,滑架連續(xù)移動(dòng)24點(diǎn)位.沖打順序如圖3所示.li用I鴛/件出磔陽?方謔盥圖m沖打用序圖打印機(jī)工作時(shí)的程序如下:UliSET同F(xiàn)3YJNBP3.1.U1ORL93L

13、nFEHJZU2CLRPl*4LCALLUlQU3a5ETriF24JJjP3.4.U3ORL馳H*MEHJ2UiCbKI'M114TLCALLUI0UMKET弭P2,4JNBP3.4.US函斷憫步脈沖F3.4整上升沿嗎?也機(jī),動(dòng)而打升備工作4加HA為0轉(zhuǎn)以,第4個(gè)打什開班工作調(diào)數(shù)據(jù)的孑程序jF3.納下降泄嗎fORL1SFEH)2UeCLRPl.Z*第E個(gè)打計(jì)開坊工作U«(LCALLU10U九SETHP3-4JbP3<(U7ORL90H.WFEHJZUfiCLRPL1第1MJttiFttXfKUSiINCRET3.2根本系統(tǒng)由于微UlOi4>«B型打印機(jī)

14、的打印緩沖區(qū)一次可快速裝入240個(gè)代碼,如全部為漢字,那么要占用RAMfe240X32=7650個(gè)字節(jié),顯然89C52內(nèi)的256B3RAM®顯不夠,所以要外桂1片數(shù)據(jù)存貯器這里用的是6116才能滿足要求.基于步A協(xié)7*%m另旦ILE這些,他的根本系統(tǒng)由89C52芯片,27C04027C040并不是作為程序存貯器使用,而是用來存放字庫、字符,數(shù)據(jù)存貯器6116構(gòu)成,如圖4所示.nFP;E疝XLITEEff27CMODO-CJ?用4柚策事能統(tǒng)抑成>?>一5>-T>xM«Ta/VD由于27C040只有1片,所以其片選線與地址鎖存器74LS373的片選線均直

15、接接地.同時(shí)外接的27C040的地址線A0A7由P0口通過地址鎖存器提供,A8A15由P2口提供,A16A18由P1.5P1.7提供.而數(shù)據(jù)存貯器6116片選端CE是由89C52的P2.7限制的,當(dāng)P2.7=0時(shí)那么選中6116,止匕時(shí)89C52的P2.0P2.2輸由6116所需的高位地址,P0口輸由6116的低8位地址鎖存在鎖存器74LS373中.假設(shè)是讀6116,那么P0口變?yōu)檩斎敕绞?在RD為低電平時(shí),選通6116,此時(shí)6116中相應(yīng)的數(shù)據(jù)由現(xiàn)在P0口,再由CPU賣入累加器A中.假設(shè)是寫,那么P0口為輸由,當(dāng)I除為低電平時(shí),將累加器A中由現(xiàn)在P0口上的數(shù)據(jù)寫入6116.3.389C52對

16、打印機(jī)聯(lián)絡(luò)信號的限制3.3.1打印機(jī)的聯(lián)絡(luò)信號打印機(jī)的聯(lián)絡(luò)信號有更F,前,BUSY1Mzm:數(shù)據(jù)選通觸發(fā)脈沖,輸入.此信號上升沿時(shí)數(shù)據(jù)線上8位數(shù)據(jù)被打印機(jī)讀入機(jī)內(nèi)鎖存.記K:答復(fù)脈沖,輸由.當(dāng)其為“低電平時(shí)表示數(shù)據(jù)已被接收而且打印機(jī)準(zhǔn)備好接收下一個(gè)數(shù)據(jù).BUSY“忙信號,為狀態(tài)輸曲線,當(dāng)打印機(jī)在打印字符、執(zhí)行命令期間BUSY=1,表示打印機(jī)處于“忙狀態(tài),這時(shí)打印機(jī)通知主機(jī),他處于“忙之中而不能接收數(shù)據(jù),此時(shí)主機(jī)不能使用I蕓后信號向打印機(jī)送入新的數(shù)據(jù)字節(jié).當(dāng)打印機(jī)打完一個(gè)字符后,BUSY=0,同時(shí)他產(chǎn)生寶禾信號通知主機(jī),準(zhǔn)備接收下一個(gè)數(shù)據(jù),當(dāng)主機(jī)接收到BUSg0時(shí),主機(jī)向打印接口輸由1B到D0D

17、7,并發(fā)生反汴低電平信號,當(dāng)打印機(jī)收到STB低電平信號后,單片機(jī)在其上升沿時(shí)讀入數(shù)據(jù).其時(shí)序圖4如圖5所示.肉iI二Jii:"flJ11:;浮-LJjI酣$¥|;:I用ru':皿-i4B-V4<V<*際,4W-99*W9»M9«4»WV一"h>即匚A叩-10"儲(chǔ)匕<5陷,r*a4/圖5并行接口信號忖字原3.3.289C52對聯(lián)絡(luò)信號實(shí)施限制的電路電路圖如圖6所示.上電復(fù)位時(shí)D觸發(fā)器U1的Q輸由端為1,無論P(yáng)3.0為何值,經(jīng)過“或門6后,BUSY=1,不接收數(shù)據(jù).當(dāng)89C52的P2.7=0時(shí),即

18、有6116數(shù)據(jù)存貯器的CE為低電平,表示選中了6116,由圖3可知當(dāng)P2.7=0時(shí),經(jīng)過反相器3再經(jīng)過“或門8,此時(shí)無論P(yáng)3.7為何值74ALs374的片選端CE總為高電平,即沒有選中,這樣就保證了外部的數(shù)據(jù)與數(shù)據(jù)存貯器的數(shù)據(jù)分別進(jìn)行傳輸與接收而不至發(fā)生混亂.從上面的分析,當(dāng)P2.7=0時(shí),表示選中了6116,而沒有選中74ALs374,此時(shí)主機(jī)不應(yīng)有數(shù)據(jù)送入打印機(jī),即有BUSY='湎=1,卜面來看是否滿足這點(diǎn):當(dāng)P2.7=0時(shí),經(jīng)過反相器3一路經(jīng)D觸發(fā)器U2的Q輸由為1即前K=1,另一路經(jīng)過“或門8,這時(shí)無論P(yáng)3.7為何值,輸由總為1,再經(jīng)D觸發(fā)器U1的Q輸生也為1,經(jīng)“或門6后,BUSg1,顯然滿足要求8如52卬M肛314KLI)葉5W叱5?,:101CI陶曲CTCEtMAL萬明圖,8長說的性制由跣CD當(dāng)P2.7=1時(shí),通過“非門3后變?yōu)?,假設(shè)此時(shí)單片機(jī)準(zhǔn)備讀取數(shù)據(jù)即P3.7=0,他們經(jīng)過“或門8后,一路到74ALs374的片選端C日,一路到D觸發(fā)器U1的去除端,使D觸發(fā)器的Q輸由端為0,即有74ALs374CLQ為0,表示74ALs374的D0-D7端已有數(shù)據(jù)同時(shí)一I,即P3.5=1,這樣

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論