當(dāng)前位置:首頁(yè) > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]151單片機(jī)與打印機(jī)接口設(shè)計(jì)1.1并口打印機(jī)的工作時(shí)序通常情況下,并口噴墨打印機(jī)(以下簡(jiǎn)稱(chēng)打印機(jī))是由普通PC機(jī)來(lái)驅(qū)動(dòng)的。PC機(jī)中的并行端口有三種工作模式,分別是SPP(標(biāo)準(zhǔn)并行接口),EPP(增強(qiáng)型并行接口),ECP(擴(kuò)展型

151單片機(jī)與打印機(jī)接口設(shè)計(jì)

1.1并口打印機(jī)的工作時(shí)序

通常情況下,并口噴墨打印機(jī)(以下簡(jiǎn)稱(chēng)打印機(jī))是由普通PC機(jī)來(lái)驅(qū)動(dòng)的。PC機(jī)中的并行端口有三種工作模式,分別是SPP(標(biāo)準(zhǔn)并行接口),EPP(增強(qiáng)型并行接口),ECP(擴(kuò)展型并行端口)。由于SPP實(shí)現(xiàn)起來(lái)最簡(jiǎn)單,因此,本系統(tǒng)參照此接口。

PC機(jī)按SPP模式驅(qū)動(dòng)噴墨打印機(jī)時(shí)采用17根信號(hào)線(xiàn),如果要求單片機(jī)完全按照這種方式工作,實(shí)現(xiàn)起來(lái)比較繁瑣,占用了很多I/O資源。通過(guò)仔細(xì)分析SPP信號(hào)線(xiàn)以及打印機(jī)的工作原理之后,我們使用了10根信號(hào)線(xiàn):8根數(shù)據(jù)線(xiàn),1根狀態(tài)線(xiàn)(用來(lái)判斷打印機(jī)是否空閑),1根控制線(xiàn)(用來(lái)選通打印機(jī)),試驗(yàn)結(jié)果表明這種簡(jiǎn)化是完全可行的。PC機(jī)并行端口引腳定義請(qǐng)參考相關(guān)資料。圖1是簡(jiǎn)化的并口打印機(jī)工作時(shí)序。簡(jiǎn)化的打印機(jī)工作時(shí)序可以概括為:主機(jī)(在此為單片機(jī))在打印機(jī)忙線(xiàn)BUSY為低電平時(shí)輸出數(shù)據(jù),產(chǎn)生選通脈沖信號(hào)STROBE,將數(shù)據(jù)總線(xiàn)上的數(shù)據(jù)D0~D7鎖存入打印機(jī)中;在打印機(jī)處理此數(shù)據(jù)期間,忙線(xiàn)為高電平,此時(shí)主機(jī)不能向打印機(jī)發(fā)送數(shù)據(jù),否則將被丟失。打印機(jī)處理完此數(shù)據(jù)或執(zhí)行完打印操作后,忙線(xiàn)變成低電平,表示數(shù)據(jù)被接收處理完畢,打印機(jī)可以接收下一個(gè)數(shù)據(jù)了。

1.2單片機(jī)與并口打印機(jī)的接口電路

設(shè)計(jì)的51單片機(jī)和打印機(jī)的接口電路如圖2所示。單片機(jī)只用了10根信號(hào)線(xiàn)來(lái)驅(qū)動(dòng)噴墨打印機(jī)。單片機(jī)P0口的8根數(shù)據(jù)線(xiàn)通過(guò)74HC377鎖存后和并口的數(shù)據(jù)線(xiàn)相連,向打印機(jī)傳送命令和數(shù)據(jù);I/O引腳P12接并口的BUSY信號(hào)線(xiàn),單片機(jī)檢測(cè)到P12管腳為高電平時(shí),繼續(xù)讀取該管腳的狀態(tài),直到為低電平時(shí)(表明打印機(jī)可以接受下一個(gè)字符)才往數(shù)據(jù)口發(fā)送一個(gè)字符。單片機(jī)最高位地址總線(xiàn)P2.7(A15)為低電平時(shí),數(shù)據(jù)便可在單片機(jī)寫(xiě)控制信號(hào)線(xiàn)WR的上升沿鎖入74HC377,隨后P2.6為低電平時(shí),選通信號(hào)STROBE有效,數(shù)據(jù)進(jìn)入打印機(jī)。這樣,噴墨打印機(jī)端口地址為0x0000~0x3fff,由于51系列單片機(jī)的存儲(chǔ)器和外設(shè)是統(tǒng)一編址的,外部存儲(chǔ)器地址只能從0x4000開(kāi)始。如果系統(tǒng)存儲(chǔ)空間不夠,可以改用全譯碼電路來(lái)實(shí)現(xiàn)。

2EPSON ESC/P打印控制語(yǔ)言簡(jiǎn)介

采用EPSON公司的打印控制語(yǔ)言ESC/P,在它的開(kāi)發(fā)網(wǎng)站上下載編程手冊(cè),里面對(duì)這種打印機(jī)語(yǔ)言作了詳細(xì)介紹,本文列出了實(shí)際應(yīng)用中常用的控制代碼。
  初始化打印機(jī):ESC @
  選擇圖形方式:ESC (C nL nH m

其中nL=01H,nH=00H,m=01H或31H。注意,初始化后打印機(jī)處于字符方式。因此要在圖形方式下打印時(shí),必須先執(zhí)行該命令。
  設(shè)置單元大?。篍SC (U nL nH m?

nL=01H,nH=00H,m=05H,0AH,14H,1Eh,28H,32H,3CH,m取不同的值時(shí)單元大小不一樣。單元越小打印機(jī)分辨率越高,因而打印質(zhì)量也就越高。

選擇單色/彩色命令:ESC (K nL nH m n

nL=01H,nH=00H,m=00H,n=00H,01H,02H。當(dāng)n=00H時(shí),打印機(jī)處于默認(rèn)的彩色模式;當(dāng)n=01H時(shí),打印機(jī)置為單色模式,即只能打印出黑色;當(dāng)n=02H時(shí),打印機(jī)置為彩色模式,可打印四種顏色。

打印光柵圖像命令:ESC . c v h m N1 Nh d1…dk

c=0,1,2表示打印模式。當(dāng)c=0時(shí),打印機(jī)工作在非壓縮模式;c=1時(shí),打印機(jī)處于壓縮模式;v:垂直方向打印密度,在這里v=30,因此垂直方向打印密度為3600/v=120(dpi);h:水平方向打印密度,在此h=10,因而水平方向打印密度為360(dpi);m:打印頭橫向移動(dòng)過(guò)程中垂直方向所含點(diǎn)數(shù),也就是光柵個(gè)數(shù)或掃描行數(shù);nL,nH:水平方向所含點(diǎn)數(shù)為((256*nH)+nL);k:所有數(shù)據(jù)個(gè)數(shù),非壓縮方式下值為m*int((nH*256+nL+7)/8),壓縮方式下其值不定;d:數(shù)據(jù)。如果打印機(jī)要打印漢字或者圖形,那它一定要工作在圖形方式,因此每送一次數(shù)據(jù)給打印機(jī)都要用到它。要熟練掌握該命令才能準(zhǔn)確、快速地編寫(xiě)應(yīng)用程序。另外,打印機(jī)工作在光柵圖形模式下,它在水平方向和垂直方向上的分辨率是不一樣的,因此在打印過(guò)程中送給打印機(jī)的點(diǎn)陣和通常情況下(比如液晶顯示)是不一樣的,必須要經(jīng)過(guò)轉(zhuǎn)換后(橫向放大三倍,縱向不變)才能夠打印出正常字體。

設(shè)置水平位置,設(shè)置水平相對(duì)位置,設(shè)置垂直位置,設(shè)置垂直相對(duì)位置這4條命令也用得比較多,其用法也很簡(jiǎn)單,另外還有一些偶爾用到的命令,詳情可參閱EPSON C4X編程手冊(cè),在此就不一一列舉了。?

3打印程序設(shè)計(jì)

打印機(jī)的驅(qū)動(dòng)軟件采用C51編寫(xiě),在keil C51環(huán)境下編譯通過(guò),能夠正常工作。以下是其中的一些關(guān)鍵部分:

函數(shù)功能:把字節(jié)character發(fā)送到打印口。其工作過(guò)程是,先讀取打印機(jī)忙狀態(tài)信號(hào),如果忙繼續(xù)查詢(xún),直到不忙再送去一個(gè)字符到打印口,隨后發(fā)出選通信號(hào)。


4結(jié)束語(yǔ)

單片機(jī)應(yīng)用系統(tǒng)中,如果打印任務(wù)很大(比如打印大幅面的圖形和漢字),而且又在野外操作,如地質(zhì)勘測(cè)時(shí)得到的一些實(shí)時(shí)數(shù)據(jù)、曲線(xiàn),就不得不采用單片機(jī)驅(qū)動(dòng)噴墨打印機(jī)來(lái)實(shí)現(xiàn),本文針對(duì)此應(yīng)用給出了一種可行的方案。?

參考文獻(xiàn)
[1]EPSON Programming Guide For 4 Color EPSON Stylus Ink Jet Printer[Z].SEIKOEPSON Corporation,Nagano,Japan.,2003.?
[2]8051 Microcontrollers Hardware Manual[Z].ATMEL Corporation.,1997.
 

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶(hù)希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱(chēng),數(shù)字世界的話(huà)語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱(chēng)"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉