基于單片機(jī)的噴墨打印機(jī)控制技術(shù)_第1頁
基于單片機(jī)的噴墨打印機(jī)控制技術(shù)_第2頁
基于單片機(jī)的噴墨打印機(jī)控制技術(shù)_第3頁
基于單片機(jī)的噴墨打印機(jī)控制技術(shù)_第4頁
基于單片機(jī)的噴墨打印機(jī)控制技術(shù)_第5頁
免費(fèi)預(yù)覽已結(jié)束,剩余16頁可下載查看

下載本文檔

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

文檔簡介

1、第1節(jié)引言,31.1 噴墨打印機(jī)控制技術(shù)概述,31.2 本設(shè)計(jì)任務(wù)和主要內(nèi)容,4第2節(jié)系統(tǒng)主要硬件電路設(shè)計(jì),,,52.1 單片機(jī)控制系統(tǒng)原理,,,52.1.1 CENTRONICS接口標(biāo)準(zhǔn),52.1.2 硬件設(shè)計(jì),52.2 單片機(jī)主機(jī)系統(tǒng)電路,62.2.1 AT89C52高性能8位單片機(jī),,62.2.2 功能特性概述,,,72.2.3 AT89C52內(nèi)部結(jié)構(gòu)各引腳功能說明,,,82.2.4 兩種工作模式,,,112.3 62256數(shù)據(jù)存儲(chǔ)器,122.3.1 62256引腳管腳功能,122.3.2 62256存儲(chǔ)器有三種工作方式,122.3.3 MCS-51擴(kuò)展62256的電路連接方法,13第3

2、節(jié)系統(tǒng)軟件設(shè)計(jì),,,143.1 打印機(jī)的控制方法,143.2 控制程序設(shè)計(jì),16第4節(jié)結(jié)束語,16參考文獻(xiàn)22,1111111111111111111111111111基于單片機(jī)的噴墨打印機(jī)控制技術(shù)數(shù)理與信息工程學(xué)院07計(jì)算機(jī)專升本張珍珍指導(dǎo)教師:余水寶第1節(jié)引言近幾年來,電腦走進(jìn)人們的工作和生活已經(jīng)漸成時(shí)尚了。隨著應(yīng)用地不斷深入,大家已經(jīng)不再滿足于只能在屏幕上顯示文檔和圖片的方式了,而更希望能夠看到打印在紙張上的效果,于是打印機(jī)在市場上開始熱銷起來。目前市場上常見的打印機(jī)有三大類:針式、噴墨和激光打印機(jī)。針式打印機(jī)已經(jīng)過了輝煌期,逐漸步入黃昏;而激光打印機(jī)雖然價(jià)格在不斷下降但和主流的彩噴相比

3、還是有一定差距,而且如果要用彩色的話價(jià)格就又會(huì)高出好多。如此來看,噴墨打印機(jī)最近紅透半邊天的情況也就不足為怪了。噴墨打印機(jī)是在針式打印機(jī)之后發(fā)展起來的,采用非打擊的工作方式。比較突出的優(yōu)點(diǎn)有體積小、操作簡單方便、打印噪音低、使用專用紙張時(shí)可以打出和照片相媲美的圖片等等。經(jīng)過若干年的磨練,噴墨打印機(jī)的技術(shù)已經(jīng)取得了長足地發(fā)展。由于單片機(jī)具有簡單實(shí)用、高可靠性、良好的性能價(jià)格比以及體積小等優(yōu)點(diǎn),已經(jīng)在各個(gè)技術(shù)領(lǐng)域得到了迅猛發(fā)展。本文介紹了以MCS-51系列單片機(jī)為核心,通過CENTRONICS際標(biāo)準(zhǔn)8位并行接口控制驅(qū)動(dòng)HP-DJ600/800系列噴墨打印機(jī)的硬件接口電路設(shè)計(jì)方法及控制程序設(shè)計(jì)方法,

4、以便更好地了解和掌握單片機(jī)對(duì)外部接口的一般和一些特殊功能的應(yīng)用。1.1 噴墨打印機(jī)控制技術(shù)概述單片機(jī)應(yīng)用系統(tǒng)中最常用的輸出打印設(shè)備是微型打印機(jī),例如TP系列、UP系列打印機(jī)等,對(duì)它們的控制技術(shù)也較為成熟。但是近年來隨著通用打印機(jī)的廣泛使用,微型打印機(jī)的缺點(diǎn)也日益明顯:一是通用性及互換性不強(qiáng);二是打印輸出文檔的幅面過小,不便于裝訂及存檔。而通用打印機(jī)都配有國際標(biāo)準(zhǔn)并行接口(CENTRONICS)用行接D(RS232/422),紙張大小可任意選擇。這些特點(diǎn)是微型打印機(jī)所無法抗衡的。因此在越來越多的單片機(jī)應(yīng)用系統(tǒng)中逐漸趨向于使用通用打印機(jī)作為打印輸出設(shè)備。C51單片機(jī)是我們生活中最常用的系列,MCS

5、-51系列單片機(jī)有4個(gè)并行口0,P1,P2,P3口),但對(duì)一個(gè)稍微復(fù)雜的應(yīng)用系統(tǒng)來說,真正可供用戶使用的并行口,只有P1可用,況且常常因擴(kuò)展外部器件需占用某些P1口,迫使用戶不得不擴(kuò)展并行口以滿足實(shí)際的需要。習(xí)慣上,常用的并行口接口芯片有8255、8155,這兩種芯片功能比較齊全,可以使用在相對(duì)比較復(fù)雜的系統(tǒng)中,但如是對(duì)一般的系統(tǒng)而言,這些功能往往閑置不用。以下介紹一種采用MCS5保列單片機(jī)控制驅(qū)動(dòng)HewlettPackardDESKJET600/800系列噴墨打印機(jī)的硬件接口設(shè)計(jì)和軟件設(shè)計(jì)方法,以控制打印機(jī)實(shí)現(xiàn)表格打印功能為例,給出了用C51語言編寫的一系列相關(guān)基本控制程序。1.2 本設(shè)計(jì)任

6、務(wù)和主要內(nèi)容本論文主要研究單片機(jī)控制的噴墨打印機(jī)控制系統(tǒng),分別對(duì)噴墨打印機(jī)控制技術(shù)及系統(tǒng)設(shè)備的軟、硬件各個(gè)部分進(jìn)行了研究。主要內(nèi)容如下:噴墨打印機(jī)控制系統(tǒng)原理及電路圖的設(shè)計(jì)根據(jù)噴墨打印機(jī)控制的特點(diǎn),進(jìn)行噴墨打印機(jī)控制系統(tǒng)的整體研究與設(shè)計(jì)。程序的實(shí)現(xiàn):數(shù)據(jù)發(fā)送程序、初始化程序、設(shè)定表格的寬度和長度的積、將表格打印出來第2節(jié)系統(tǒng)主要硬件電路設(shè)計(jì)2.1 單片機(jī)控制系統(tǒng)原理2.1.1 CENTRONICS口標(biāo)準(zhǔn)HP-DJ600/800系列噴墨打印機(jī)采用與/CENTRONICS準(zhǔn)兼容的并行打印機(jī)接口,接口各引腳信號(hào)的定義如表2-1所示。表2-1CENTRONICS口信號(hào)引腳號(hào)信號(hào)方向說明1STB輸入數(shù)據(jù)

7、選通觸發(fā)脈沖n29D0D7輸入數(shù)據(jù)線10ACK輸出應(yīng)答脈沖11BUSY輸出忙”信號(hào)13SEL輸出打印機(jī)在線14ERR輸出故障日12、1825GND-接地2.1.2硬件設(shè)計(jì)本著統(tǒng)一編址控制的原則,硬件原理如圖2-1所示。89C5262256PZ0-P2.6ALEP0Q-P0.7而WRP2.7A8-A1474LS37374LS3T7|D0-D7OEWECSPLOPL1打印機(jī)»ATA1iDAm8fBJBUSY圖2-1單片機(jī)控制系統(tǒng)原理框圖本設(shè)計(jì)采用MCS-5保歹1J的89C52型單片機(jī),其內(nèi)部有8K字節(jié)的程序存儲(chǔ)器,盡可滿足本設(shè)計(jì)的程序、表格的存儲(chǔ)要求。在外部擴(kuò)展了一片數(shù)據(jù)存儲(chǔ)器62256

8、乍為打印數(shù)據(jù)緩沖區(qū),RAM62256勺存儲(chǔ)容量為32G節(jié),可以存放大量的打印數(shù)據(jù)。從原理框圖可看出,RAM6225的片選/CS端由單片機(jī)的P2.7口控制,因此RAM:地址范圍為:0000H7FFFH本設(shè)計(jì)采用查詢方式進(jìn)行打印驅(qū)動(dòng)控制,單片機(jī)與打印機(jī)的接口包括如下內(nèi)容:(1)單片機(jī)的八位數(shù)據(jù)線通過74LS37襁存后與打印機(jī)的八位數(shù)據(jù)線相連,傳送打印數(shù)據(jù)。單片機(jī)的P2.7口通過74LS04反相后與74LS377的/G端相連,因此單片機(jī)向打印機(jī)傳送數(shù)據(jù)的口地址為8000H(2)單片機(jī)的P1.0口提供數(shù)據(jù)選通信號(hào),它與打印機(jī)STB端連接,進(jìn)行將打印數(shù)據(jù)送打印機(jī)的選通控制。(3)單片機(jī)的P1.1口接打印

9、機(jī)的BUS湍,以BUS沿號(hào)作為打印機(jī)“忙”或“閑”狀態(tài)查詢信號(hào)。2.2 單片機(jī)主機(jī)系統(tǒng)電路2.2.1 AT89C52高性能8位單片機(jī)兼容標(biāo)準(zhǔn)MCS-51旨令系統(tǒng)的AT89C52tI片機(jī)是美國ATMEL公司生產(chǎn)的一個(gè)低電壓,高性能CMOS骯單片機(jī),片內(nèi)含8kbytes的可反復(fù)擦寫的Flash只讀程序存儲(chǔ)器和256bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM,器彳采用ATME公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),片內(nèi)置通用8位中央處理器和Flash存儲(chǔ)單元,功能強(qiáng)大的AT89C52單片機(jī)可為您提供許多高性低比的系統(tǒng)控制應(yīng)用領(lǐng)域。AT89C52W40個(gè)引腳,32個(gè)外部雙向輸入/輸出(I/O)端口,同時(shí)內(nèi)含2

10、個(gè)外中斷口,3個(gè)16位可編程定時(shí)計(jì)數(shù)器,2個(gè)全雙工串行通信口,2個(gè)讀寫口線,AT89C52可以按照常規(guī)方法進(jìn)行編程,也可以在線編程。其將通用的微處理器和Flash存儲(chǔ)器結(jié)合在一起,特別是可反復(fù)擦寫的Flash存儲(chǔ)器可有效地降低開發(fā)成本。AT89C52tPDIP、PQFP/TQFPtPLCC?三種封裝形式,以適應(yīng)不同產(chǎn)品的需求。下圖2-2為以PDIP封裝形式的AT89C52®片引腳圖(T2)P1,01、J40jVcc(T2EX)P1,1C2393P0.O/ADOPI.2C3383PO.l/ADlPl,3C4373PO.2/AD2Fl.4C5361PO.3/AD3Pl.5C6351PO.

11、4/AD4Pl.6C734IPO.5/AD5Pl,7C332JPO.6/AD6RESETC9321PO.7/AD7MD/P3,0C10乳1EA/VppTXD/P3,1C1130ALE/PRD&IHT0/P3,2L1229JPSENIKT1/P3,3L13281P2.7/ADI5T0/P3,4C1427IP2.6/AD14T1/F3,5L15263F2.5/AD13C16251P2.4/AD12M/P3.7C17241P2.3/AD11XTAL2C1823JP2.2/AD10XTAL1L19221P2.1/AD9PDIPVss20211P2.0/AD8圖2-2單片機(jī)AT89C52芯片引腳

12、圖2.2.2功能特性概述AT89C52與MCS-51系列的單片機(jī)在指令系統(tǒng)和引腳上完全兼容;片內(nèi)有8k字節(jié)可重擦寫Flash閃速存儲(chǔ)器;全靜態(tài)工作,工作范圍:0Hz24MHz1000次擦寫周期;三級(jí)加密程序存儲(chǔ)器;-256X8字節(jié)內(nèi)部RAM32個(gè)可編程I/O口線;3個(gè)16位定時(shí)/計(jì)數(shù)器;8個(gè)中斷源;可編程串行UART通道;低功耗空閑和掉電模式;軟件設(shè)置睡眠和喚醒功能;片內(nèi)振蕩器及時(shí)鐘電路。2.2.3 AT89C52內(nèi)部結(jié)構(gòu)各引腳功能說明方框圖AT99C52PC.Q,PftjP2.0,P2.7圖2-3AT89C52內(nèi)部結(jié)構(gòu)圖Vcc:電源電壓GND地P0口:P0口是組8位漏極開路型雙向I/O口,也

13、即地址/數(shù)據(jù)總線復(fù)用口。作為輸出口用時(shí),每位能吸收電流的方式驅(qū)動(dòng)8個(gè)TT出輯門電路,對(duì)端DP0寫“1”時(shí),可作為高阻抗輸入端用。在訪問外部數(shù)據(jù)存儲(chǔ)器或程序存儲(chǔ)器時(shí),這組口線分時(shí)轉(zhuǎn)換地址(低8位)和數(shù)據(jù)總線復(fù)用,在訪問期間激活內(nèi)部上拉電阻。在Flash編程時(shí),P0接收指令字節(jié),而在程序校驗(yàn)時(shí),輸出指令字節(jié),校驗(yàn)時(shí),要求外接上拉電阻。- P1口:P1是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O口,P1的輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門電路。對(duì)端口寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口。作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號(hào)拉低時(shí)會(huì)輸出一個(gè)電流(Ii

14、l)。與AT89C51不同之處是,P1.0和P1.1還可分別作為定時(shí)/計(jì)數(shù)器2的外部計(jì)數(shù)輸入(P1.0/T2)和輸入(P1.1/T2EX),參見表2-2。Flash編程和程序校驗(yàn)期間,P1接收低8位地址。表2-2P1.0和P1.1的第二功能引腳號(hào)功能特性P1.0T2(定時(shí)/計(jì)數(shù)器2外部計(jì)數(shù)脈沖輸入),時(shí)鐘輸出P1.1T2EX(定時(shí)/計(jì)數(shù)器2捕獲/重裝載觸發(fā)和方向控制)- P2口:P2是一個(gè)帶有內(nèi)部上拉電阻的8位雙向I/O口,P2的輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門電路。對(duì)端口P2寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口,作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,

15、某個(gè)引腳被外部信號(hào)拉低時(shí)會(huì)輸出一個(gè)電流(Iil)o在訪問外部程序存儲(chǔ)器或16位地址的外部數(shù)據(jù)存儲(chǔ)器(例如執(zhí)行MOVDPT脂令)時(shí),P2送出高8位地址數(shù)據(jù)。在訪問8位地址的外部數(shù)據(jù)存儲(chǔ)器(如執(zhí)行MOVXR旨令)時(shí),P2口輸出P2鎖存器的內(nèi)容。Flash編程或校驗(yàn)時(shí),P2亦接收高位地址和一些控制信號(hào)。- P3口:P3是一組帶有內(nèi)部上拉電阻的8位雙向I/O口。P3口輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門電路。對(duì)P3口寫入“1”時(shí),它們被內(nèi)部上拉電阻拉高并可作為輸入端口。此時(shí),被外部拉低的P3口將用上拉電阻輸出電流(IIL)。P3口除了作為一般的I/O線外,更重要的用途是它的第二功能,如下

16、表2-3所示:表2-3P3口工作的第二功能時(shí)各管腳定義表端口引腳第二功能P3.0RXO串行輸入口P3JTXD(串行輸出口)P3JiwTo(外中斷0)P3.3intT外中斷1)P34TO(定時(shí),計(jì)數(shù)器。)P35T1(定時(shí)/計(jì)數(shù)器1)P3.6WR外部數(shù)據(jù)存儲(chǔ)器馬選通)P37而外部數(shù)據(jù)存儲(chǔ)器讀選通)此外,P3口還接收一些用于Flash閃速存儲(chǔ)器編程和程序校驗(yàn)的控制信號(hào)地址/數(shù)據(jù)v«(明巴門也骷出談?dòng)瘥愐_(2p,門位玷曲內(nèi)部息線向顏存器寫內(nèi)部上拉阻阻讀引腳讀裱存器內(nèi)內(nèi)總座|口(回鐘壽裱寫鎖茸器-CL(GP:C也納曲第二輸出功能加B門拉硅構(gòu)圖2-4P0、P1、P2、P3共四個(gè)八位的結(jié)構(gòu)圖 R

17、ST復(fù)位輸入。當(dāng)振蕩器工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電平將使單片機(jī)復(fù)位。 ALE/PROG當(dāng)訪問外部程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。一般情況下,ALE仍以時(shí)鐘振蕩頻率的1/6輸出固定的脈沖信號(hào),因此它可對(duì)外輸出時(shí)鐘或用于定時(shí)目的。要注意的是:每當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí)將跳過一個(gè)ALE脈沖。對(duì)Flash存儲(chǔ)器編程期間,該引腳還用于輸入編程脈沖(PROG如有必要,可通過對(duì)特殊功能寄存器(SFR區(qū)中的8EH單元的D0位置位,可禁止ALE操作。該位置位后,只有一條MOV;®MOV筠令才能將ALE激活。止匕外,該引腳會(huì)被微弱拉高,單片機(jī)

18、執(zhí)行外部程序時(shí),應(yīng)設(shè)置ALE禁止位無效。 /PSEN程序儲(chǔ)存允許(/PSEN輸出是外部程序存儲(chǔ)器的讀選通信號(hào),當(dāng)AT89C52由外部程序存儲(chǔ)器取指令(或數(shù)據(jù))時(shí),每個(gè)機(jī)器周期兩次PSEN有效,即輸出兩個(gè)脈沖。在此期間,當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器,將跳過兩次/PSEN信號(hào)。 EA/VPP外部訪問允許。欲使CPU僅訪問外部程序存儲(chǔ)器(地址為0000H-FFFFH,EA端必須保持低電平(接地)。需注意的是:如果加密位LB1被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存EA端狀態(tài)。如EA端為高電平(接Vcc端),CPU則執(zhí)行內(nèi)部程序存儲(chǔ)器中的指令。Flash存儲(chǔ)器編程時(shí),該引腳加上+12V的編程允許電源Vpp,當(dāng)然這必須是該器件

19、是使用12V編程電壓Vppo XTAL1振蕩器反相放大器的及內(nèi)部時(shí)鐘發(fā)生器的輸入端。 XTAL2振蕩器反相放大器的輸出端。2.2.4兩種工作模式,空閑節(jié)電模式:在空閑工作模式狀態(tài),CPU自身處于睡眠狀態(tài)而所有片內(nèi)的外設(shè)仍保持激活狀態(tài),這種方式由軟件產(chǎn)生。此時(shí),同時(shí)將片內(nèi)RAM和所有特殊功能寄存器的內(nèi)容凍結(jié)??臻e模式可由任何允許的中斷請求或硬件復(fù)位終止。由硬件復(fù)位終止空閑狀態(tài)只需兩個(gè)機(jī)器周期有效復(fù)位信號(hào),在此狀態(tài)下,片內(nèi)硬件禁止訪問內(nèi)部RAM但可以訪問端口引腳,當(dāng)用復(fù)位終止空閑方式時(shí),為避免可能對(duì)端口產(chǎn)生意外寫入,激活空閑模式的那條指令后一條指令不應(yīng)是一條對(duì)端口或外部存儲(chǔ)器的寫入指令。,掉電模式

20、:在掉電模式下,振蕩器停止工作,進(jìn)入掉電模式的指令是最后一條被執(zhí)行的指令,片內(nèi)RAM和特殊功能寄存器的內(nèi)容在終止掉電模式前被凍結(jié)。退出掉電模式的唯一方法是硬件復(fù)位,復(fù)位后將重新定義全部特殊功能寄存器,但不改變RAW的內(nèi)容,在Vcc恢復(fù)到正常工作電平前,復(fù)位應(yīng)無效,且必須保持一定時(shí)間以使振蕩器重啟動(dòng)并穩(wěn)定工作。102.3數(shù)據(jù)存儲(chǔ)器62256單片機(jī)內(nèi)部的RAM128B(或256B),有的單片機(jī)應(yīng)用系統(tǒng)需要擴(kuò)展外部數(shù)據(jù)存儲(chǔ)器RAM仰數(shù)據(jù)采集系統(tǒng)數(shù)據(jù)量較大,需要專設(shè)RAM或FlashRAM)。最常用的RAIVB件是靜態(tài)RAM(SRAM)6264、6264、62128、62256。2.3.1 62256

21、引腳管腳功能A|41又一)28VccAi2227_WE326A|JAs425AkAs524Aq623Au76225622一OEAj821AioAi一920一CSAo1019I/O?1/0(11118I/Oftl/Oi1217I/O517513161/04Vss1415I/Os圖2-562256引腳圖引腳符號(hào)的含義和功能如下:D7DG雙向三態(tài)數(shù)據(jù)總線;A0A14:地址輸入線;(CS:片選信號(hào)輸入端,低電平有效;OE:讀選通信號(hào)輸入線,低電平有效;WE:寫選通信號(hào)輸入線,低電平有效;Vcc:電源+5V;GND:地。112.3.2 62265存儲(chǔ)器有三種工作方式數(shù)據(jù)的讀出、寫入和維持,具操作控制如下

22、表2-4所示表2-462256存儲(chǔ)器操作控制1"-竽號(hào)-CSCS11.10EWE.DO-D7,讀CL1L.iHi熱堀拓出,寫CL,H,數(shù)據(jù)將入i曜持KHiKiXi禽陽-i注:表中.L表示低電平AH表示高電平X表示無關(guān),46264中還有CS2片選讀寫時(shí)為高電平,維持時(shí)為低電平仁2.3.3 MCS-51擴(kuò)展62256的電路連接方法數(shù)據(jù)線:P0口接RAM勺D0D7;地址線:62256容量為32KB,215=32KR需要A0A14共15根地址線。P0口經(jīng)地址鎖存器后接RAM勺A0A7;P2.0P2.6接RAM勺A8A14控制線:ALE接373的LE,RD接RAM的OEW做RAM的WE只有一片

23、RAM且系統(tǒng)無其他I/O接口及外圍設(shè)備擴(kuò)展,片選CEM以接地。擴(kuò)展電路如圖2-6所示。圖2-662256擴(kuò)展電路圖62256的地址范圍為:0000HH7FFFH注意:74LS373的O序口RAM62256CE12第3節(jié)單片機(jī)驅(qū)動(dòng)控制打印機(jī)系統(tǒng)的軟件設(shè)計(jì)3.1打印機(jī)的控制方法系統(tǒng)上電后,當(dāng)需要打印的數(shù)據(jù)出現(xiàn)在數(shù)據(jù)線上時(shí),只要主機(jī)向打印機(jī)的ST郵發(fā)一個(gè)負(fù)脈沖,就把數(shù)據(jù)送入了打印機(jī)。本設(shè)計(jì)對(duì)打印機(jī)的控制采取查詢等待方式。首先主機(jī)讀打印機(jī)BUSYI,如果BUS訥高電平則表示打印機(jī)正“忙”,禁止接收數(shù)據(jù),需等待。當(dāng)打印機(jī)取走數(shù)據(jù)并處理完畢后,BUS餞被置為閑(低電平),同時(shí)輸出應(yīng)答脈沖ACK知主機(jī),可以

24、再次輸入數(shù)據(jù)??刂茣r(shí)序如圖3-1所示。BUSYDATA-F一一STB4>4»IH£3圖3-1打印機(jī)接口時(shí)序圖ST斯數(shù)據(jù)選通信號(hào),打印機(jī)在其上升沿時(shí)讀入數(shù)據(jù)。當(dāng)主機(jī)發(fā)送數(shù)據(jù)后,需要有0.5us以上的延時(shí)才能向ST豉發(fā)負(fù)脈沖,即圖2中的t1值不小于0.5us;當(dāng)STB®號(hào)從高電平變?yōu)榈碗娖胶?,要保證負(fù)脈沖的寬度,亦即圖2中的t2值不小于0.5us;當(dāng)STB信號(hào)從低電平變?yōu)楦唠娖胶?,要保證有0.5us以上的延時(shí),亦即圖2中的t3值不小于0.5us,以確保打印機(jī)將數(shù)據(jù)可靠讀入??刂屏鞒桃妶D3-1所示。13結(jié)束圖3-2數(shù)據(jù)發(fā)送控制流程圖無論打印機(jī)打印輸出的是文字還是圖

25、形,主機(jī)向其發(fā)送的皆是一系列以字節(jié)為單位的數(shù)據(jù),因此如何向打印機(jī)發(fā)送數(shù)據(jù)是關(guān)鍵所在。以下為一數(shù)據(jù)發(fā)送程序?qū)嵗?,其功能是將一個(gè)字節(jié)數(shù)據(jù)發(fā)送給打印機(jī)。Voidprint_one(charch)/ch為待發(fā)送的數(shù)據(jù)(While(P1_1);/讀打印機(jī)狀態(tài),BUSY=1?為1,等待P1_0=1;置ST斯1*(charxdata*)0x8000=ch;/輸出數(shù)據(jù)到打印機(jī)P1_0=0;/置ST的0_nop_();14_nop_()/延時(shí),等待數(shù)據(jù)發(fā)送完畢P1_0=1;置ST斯1)3.2控制程序設(shè)計(jì)HP-DJ600/800系列噴墨打印機(jī)使用HPPCLLEVEL斯言,而在單片機(jī)控制系統(tǒng)中使用十六進(jìn)制代碼。因此

26、在以下程序設(shè)計(jì)中,將PC命令全部替換為用十六進(jìn)制代碼表示。在單片機(jī)實(shí)時(shí)控制系統(tǒng)中,打印機(jī)最常用的功能是將控制系統(tǒng)的測試結(jié)果打印出來。下面通過如何實(shí)現(xiàn)一張表格的打印來具體說明單片機(jī)控制驅(qū)動(dòng)噴墨打印機(jī)的軟件設(shè)計(jì)方法。需要打印的表格如表3-1所示。首先在Window界面的“附件”的“畫圖”中制作好如表3-1的表格,將其保存為文件名:REPORT.BM氏且在向單片機(jī)的程序存儲(chǔ)器中燒寫程序代碼時(shí)將此BMPt檔代碼一并寫入,存放在以BMP_ADDW始地址的程序區(qū)內(nèi)。BMP_ADDR值由所制作的表格大小決定,表格的寬度和長度分別用paper_width和paper_length表示。表3-1需打印的表格測試

27、項(xiàng)目技木指標(biāo)實(shí)測值+5Vt源+5V±0.2V+15Vfe源+15V±0.3V-15V電源-15V±0.3V+20V電源+20V±0.5V由流程圖3-2可看出,首項(xiàng)工作是由主機(jī)向打印機(jī)發(fā)送命令,利用軟件實(shí)現(xiàn)打印機(jī)的初始化。初始化的內(nèi)容包括紙張型號(hào)、文本長度、上下邊距、左右邊距的設(shè)置在本設(shè)計(jì)中初始化程序如下:Voidinit_print()uchari15charcodecommand57=(0x1b,0x45,0x1b,0x2a,0x62,0x32,0x42,0x1b,0x26,0x6c,0x30,0x6f,0x32,0x36,0x61,0x30,0x6d

28、,0x31,0x6c,0x38,0x64,0x39,0x33,0x70,0x36,0x650x37,0x37,0x46,0x1b,0x28,0x73,0x30,0x70,0x31,0x32,0x48,0x1b,0x26,0x61,0x39,0x6c,0x39,0x30,0x4d,0x1b,0x2a,0x72,0x31,0x75,0x31,0x41,0x1b,0x2a,0x62,0x30,0x4d,For(i=0;i<57;i+)print_one(commandi);打印機(jī)復(fù)位/圖形方式/圖幅為A4/普通紙/允許設(shè)計(jì)上下邊距/垂直行距:8行/英寸/頁長為11.67inch乂8=93cpi

29、/上邊距為0.75inch乂8=6cpi/正文長(11.67-0.75-1.25)X8=77cpi/字間距固定/12cpi/左邊品E=0.75inch/單色16打印機(jī)初始化將表格內(nèi)容寫入打印緩沖區(qū)圖3-2表格打印控制流程圖打印機(jī)初始化完成后,將打印緩沖區(qū)清零。這個(gè)打印緩沖區(qū)實(shí)際上就是位于外部RAM62256內(nèi)的一段存儲(chǔ)區(qū)域,RAM62256的地址范圍是0000bH7FFFH在本設(shè)計(jì)中將打印緩沖區(qū)的首地址定義為0000A為了書寫方便在以下的程序中用PRINT_BU表示這個(gè)地址值。接著將ROMP以BMP_ADDR首址的內(nèi)容讀出并寫入首址為PRINT_BU的打印緩沖區(qū)內(nèi),其代碼長度即所設(shè)定表格的寬度

30、和長度的積。17具體程序如下:Voidread_bmp()(uinti;ucharxdata*p;ucharxdata*q;p=PRINT_BUF;q=BMP_ADDR;for(i=0;i<Paper_width*Paper_length;i+)*p=*q;p+;q+;打印數(shù)據(jù)全部存入打印緩沖區(qū)后,只要主機(jī)向打印機(jī)發(fā)開始打印命令,將打印緩沖區(qū)內(nèi)的數(shù)據(jù)按字節(jié)依次發(fā)往打印機(jī),一張符合要求的表格即打印出來了。具體程序如下:Voidprint_report()chari;uintj;ucharxdata*p;charcodecommand1=0x1b,0x2a,0x62,0x36,0x34,0x

31、57;/開始打印控制命令/結(jié)束打印控制命令/初始化打印機(jī)/清打印緩沖區(qū)/讀入打印緩沖區(qū)charcodecommand2=0x1b,0x2a,0x72,0x43,0x1b,0x45;Init_print();Clear_print_buf();Read_bmp();p=PRINT_BUF;18for(j=0;j<Paper_length;j+)for(i=0;i<6;i+)print_one(command1i);for(i=0;i<Paper_width;i+)print_one(*p);p+;)for(i=0;i<6;i+)print_one(command2i;)19通過本次基于單片機(jī)應(yīng)用的課程設(shè)計(jì),首先我深刻認(rèn)識(shí)到它的應(yīng)用廣泛,幾乎涉及到各個(gè)領(lǐng)域,尤其是在數(shù)碼電器產(chǎn)品中,占據(jù)了主導(dǎo)地位。對(duì)于它的性價(jià)比方面,也有諸多的優(yōu)勢,因此深受消費(fèi)者的歡迎。從這次設(shè)計(jì)過程中,我體會(huì)到這不僅僅是一種理論的應(yīng)用,它更加強(qiáng)調(diào)的是理

溫馨提示

  • 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ǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論