基于C8051F系列單片機的標簽打印機接口設計
摘要:為滿(mǎn)足與日俱增的嵌入式系統的打印需求,設計了一種以片上系統型C8051F系列單片機為主機控制器的標簽打印機接口模塊。詳細闡述了單片機與打印機之間的串行接口設計方法和斑馬公司標簽打印機專(zhuān)用的EPL2打印描述語(yǔ)言的使用,在掌握EPL2語(yǔ)言的基礎上,利用KeilC編程工具進(jìn)行驅動(dòng)程序的編寫(xiě),并給出了相應的驅動(dòng)程序,實(shí)現了C8051F020單片機通過(guò)RS 232接口對一種標簽打印機的控制。
關(guān)鍵詞:C8051F020;標簽打印機;串行接口;EPL2
0 引言
隨著(zhù)信息化技術(shù)的高速發(fā)展,各行業(yè)對于數據打印的需求日益增加。為了能夠更加直觀(guān)的瀏覽數據,微型標簽打印機在智能儀器儀表、電子收款機、計價(jià)器等系統中幾乎成為標準配置。本課題來(lái)源于常州市揚子電子有限公司,主要是針對一款程控耐壓絕緣測試儀開(kāi)發(fā)的打印機驅動(dòng)設備,實(shí)現了對檢測數據的實(shí)時(shí)打印功能。
系統采用斑馬公司生產(chǎn)的888-TT桌面式微型標簽打印機,基于美國Silicon Labs公司生產(chǎn)的SoC單片機C8051f020作為主控制芯片,通過(guò)RS 232串行接口與標簽打印機進(jìn)行串行通信,采取單片機向標簽打印機發(fā)送打印指令和數據的方法實(shí)現單片機對打印機的控制。
1 單片機與打印機的串行接口設計
大多數單片機應用系統不是高速大數據量吞吐的,因此單片結構,即不外擴展ROM和RAM已成為單片機系統發(fā)展的方向之一。與之相適應,以各種串行總線(xiàn)來(lái)配置應用系統已成為設計者的常用手段。打印機是低速設備,應用標簽打印機打印時(shí),數據量一般不大,因此在該系統中,筆者優(yōu)先考慮選用串行接口類(lèi)的標簽打印機。
對于小型儀器儀表,由于體積限制,一般均配置分體臺式串口微型打印機作為可選外設,由于連線(xiàn)較長(cháng),其串口信號采用EIA標準電平,即:
Mark為邏輯“1”(EIA-3~-27V低電平);
Space為邏輯“0”(EIA+3~+27V高電平)。
因此,在與單片機接口時(shí),這類(lèi)EIA標準RS 232C串口微型打印機提供兩種握手方式:一種是標志控制方式,由單片機的TXD發(fā)送串行數據給微打,單片機使用RXD或其他輸入口判斷打印機閑忙狀態(tài)。其時(shí)序圖和軟件流程圖如圖1所示。
另一種是XON/XOFF協(xié)議方式,由單片機的TXD發(fā)送數據,由其RXD接收來(lái)自打印機的數據,根據所接收數據是否為XON=11H或XOFF=13H決定數據能否發(fā)送。其時(shí)序圖和軟件流程圖如圖2所示。
標志控制方式除使用串口TXD外,再用一個(gè)輸入口判斷打印機的CTS(允許發(fā)送)電平,編程控制簡(jiǎn)單,類(lèi)似于并行接口判“忙”線(xiàn)控制數據傳送的處理方法。在協(xié)議控制方式下,要同時(shí)使用串口的TXD和RXD,發(fā)送和接收均為串行數據,編程相對復雜,而且數據的傳輸效率低。因此,該系統采用了標志控制方式,硬件連接圖如圖3所示。EIA電平到TTL電平的轉換采用SP232EEN芯片。
評論