99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于80C51單片機和CH375芯片實現(xiàn)打印機驅(qū)動系統(tǒng)的設(shè)計

電子設(shè)計 ? 來源:國外電子元器件 ? 作者:吳友宇;余翔 ? 2020-11-13 10:32 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

引言

本課題來源于北京普析通用公司的一個項目。由于公司現(xiàn)有單機版光譜儀器產(chǎn)品(如1810、T6等)采用的是并行口打印技術(shù),而隨著USB打印機技術(shù)的逐漸普及,并行口打印機越來越不好買到,而且有些用戶的打印機只是USB接口而非并行口,因此現(xiàn)有儀器產(chǎn)品對打印機的支持變得不能適應(yīng)用戶需要。為了實現(xiàn)能將公司的并行口儀器直接和USB打印機相連進行打印,決定設(shè)計開發(fā)一款LPT-USB打印機的驅(qū)動器,負責(zé)并口儀器和USB打印機的連接。

本文利用單片機和USB總線接口芯片實現(xiàn)LPT-USB打印機的驅(qū)動器設(shè)計。利用該設(shè)計將能夠?qū)崿F(xiàn)并行打印口數(shù)據(jù)可以在USB打印機上的直接打印工作,克服了有些并口儀器必須連接并口打印機才能打印的弊端,極大地方便了用戶的使用。

1 CH375芯片特點及工作原理

1.1 CH375芯片特點

CH375是一個USB總線的通用接口芯片,支持Host主機方式和Slave設(shè)備方式。CH375芯片內(nèi)部集成了PLL倍頻器、主從USB接口SIE、數(shù)據(jù)緩沖區(qū)、被動并行接口、異步串行接口、命令解釋器、控制傳輸?shù)膮f(xié)議處理器、通用的固件程序等。在本地端,CH375具有8位數(shù)據(jù)總線和讀、寫、片選控制線以及中斷輸出,可以方便地掛接到單片機/DSP/MCU控制器的系統(tǒng)總線上。CH375的USB主機方式支持各種常用的USB全速設(shè)備,外部單片機/DSP/MCU可以通過CH375按照相應(yīng)的USB協(xié)議與USB設(shè)備通信。CH375芯片有如下特點:

①全速USBHOST主機接口USBV1.1,支持動態(tài)切換主機與設(shè)備方式,外圍元器件只需要一個晶體和2個電容;

②主機端點輸入和輸出緩沖區(qū)各64B,支持常用的12Mbps全速USB設(shè)備;

③支持USB設(shè)備的控制傳輸、批量傳輸和中斷傳輸;

④自動檢測USB設(shè)備的連接和斷開,提供設(shè)備連接和斷開的事件通知;

⑤內(nèi)置控制傳輸協(xié)議處理器,簡化常用的控制傳輸;

⑥并行接口包含8位數(shù)據(jù)總線,4線控制(讀選通、寫選通、片選輸入和中斷輸出);

⑦串行接口包含串行輸入、串行輸出和中斷輸出,支持通信波特率動態(tài)調(diào)整;

⑧支持5V電源電壓和3.3V電源電壓。

1.2 CH375芯片工作原理

如圖1所示,CH375芯片通過被動并行接口芯片可以很方便地掛接到各種8位單片機、DSP和MCU的系統(tǒng)總線上,并且可以與多個外圍器件共存。并口信號線包括:8位雙向數(shù)據(jù)總線D7~D0、讀選通輸入RD、寫選通輸入WR、片選輸入CS、中斷輸出INT以及地址輸入線A0。CH375芯片的RD和WR可以分別連接到單片機的讀選通輸出引腳和寫選通輸出引腳。INT可以連接到單片機的中斷輸入引腳,中斷請求是低電平有效。當(dāng)CS和RD以及A0都為低電平時,CH375中的數(shù)據(jù)通過D7~D0輸出;當(dāng)CS和WR以及A0都為低電平時,D7~D0上的數(shù)據(jù)被寫入CH375芯片中;當(dāng)CS和WR都為低電平而A1為高電平時,D7~D0上的數(shù)據(jù)被作為命令碼寫入CH375芯片中。

基于80C51單片機和CH375芯片實現(xiàn)打印機驅(qū)動系統(tǒng)的設(shè)計

2 硬件電路設(shè)計

單片機通過CH375控制USB打印機的硬件電路,如圖2所示。

如圖2所示,CH375芯片通過被動并行接口芯片掛接到8位單片機的系統(tǒng)總線上,CH375的TXD引腳接地,從而使CH375工作于并口方式。CH375芯片的8位雙向數(shù)據(jù)總線D7~D0直接與單片機的P0數(shù)據(jù)口相連,RD和WR分別連接到單片機的讀選通輸出引腳和寫選通輸出引腳。片選信號CS連接到單片機的P26引腳,該引腳為低電平時選通CH375芯片。INT可以連接到單片機的中斷輸入INT0引腳,中斷請求是低電平有效。地址輸入線A0連接至單片機的P25引腳,當(dāng)A0引腳為高電平時選擇命令端口,可以寫入命令;當(dāng)A0引腳為低電平時選擇數(shù)據(jù)端口,可以讀寫數(shù)據(jù)。

采用74HC245三態(tài)雙向總線驅(qū)動器作為打印機口向單片機傳送并口數(shù)據(jù)的接口,其片選信號與單片機的P27相連,方向控制位DIR與單片機的T0相連。當(dāng)DIR置成高電平時,數(shù)據(jù)從A端口向B端口傳送,此時單片機可以通過讀取74HC245數(shù)據(jù)端口即可得到并口數(shù)據(jù)。打印機狀態(tài)信號BUSY連接至單片機的P15引腳,并口數(shù)據(jù)采集控制信號CTRL直接連至單片機的INT1中斷引腳,當(dāng)INT1產(chǎn)生中斷時,單片機從并口將數(shù)據(jù)取走,然后再發(fā)送至打印機打印出來。

3 軟件設(shè)計實現(xiàn)

軟件實現(xiàn)的流程如圖3所示。該軟件編程是用C語言實現(xiàn)的,通信過程主要包括兩部分:初始化和并口數(shù)據(jù)的采集。

并口數(shù)據(jù)的采集是通過中斷方式進行的。采集數(shù)據(jù)的控制信號CTRL連接至單片機的中斷INT1引腳,通過不斷檢測INT1的狀態(tài)來進行并口數(shù)據(jù)的采集。當(dāng)打印機不忙(即BUSY=0)時,如果有INT1中斷產(chǎn)生,則從74HC245的數(shù)據(jù)端口將并口數(shù)據(jù)讀出,同時將打印機忙標志BUSY置1(表示打印機忙)。當(dāng)數(shù)據(jù)已經(jīng)發(fā)送至打印機打印時,則將打印機忙標志BUSY置0。然后重復(fù)上述步驟進行并口數(shù)據(jù)的采集及打印。

初始化過程分兩部分:單片機初始化和打印機的枚舉初始化。單片機的初始化過程就是直接向相應(yīng)的I/O口寫初始化值及設(shè)置看門狗,可調(diào)用函數(shù)watchdog_init()實現(xiàn)設(shè)置看門狗。

打印機的枚舉初始化過程很重要,要實現(xiàn)打印采集到的并口數(shù)據(jù),首先必須成功地枚舉初始化打印機。初始化USB打印機函數(shù)init_print()主要用到以下幾個主要函數(shù):

◇get_descr(1),獲取設(shè)備描述符。

◇rd_usb_data(buffer),從CH375中讀取數(shù)據(jù)到單片機中。

◇set_addr(3),設(shè)置打印機的USB地址。

◇get_full_descr(buffer),獲取配置描述符。

◇set_config(unsignedcharcfg),加載USB配置值。

編者注:具體程序見本刊網(wǎng)站:www.mesnet.com.cn

結(jié)語

本文詳細介紹了基于80C51單片機和USB總線通用接口芯片CH375的LPT-USB打印機驅(qū)動器設(shè)計及C語言實現(xiàn)。經(jīng)測試表明,利用該設(shè)計能夠?qū)崿F(xiàn)并口儀器數(shù)據(jù)直接經(jīng)USB打印機打印出來,打印結(jié)果正確無誤。該設(shè)計現(xiàn)已被用于并口儀器上,利用該驅(qū)動器,并行口儀器可以直接和USB打印機相連進行打印,極大克服了有些并口儀器必須連接并口打印機才能打印的弊端,從而很大程度上方便了用戶。

責(zé)任編輯:gt

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 單片機
    +關(guān)注

    關(guān)注

    6067

    文章

    44992

    瀏覽量

    650616
  • 驅(qū)動器
    +關(guān)注

    關(guān)注

    54

    文章

    8697

    瀏覽量

    149999
  • 總線
    +關(guān)注

    關(guān)注

    10

    文章

    2960

    瀏覽量

    89780
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    基于飛思卡爾微型熱敏打印機的設(shè)計與實現(xiàn)

    高電平時,D7~D0上的數(shù)據(jù)被作為命令碼寫入CH375芯片中。2 硬件電路設(shè)計單片機通過CH375控制USB打印機的硬件電路,如圖2所示。如
    發(fā)表于 09-22 16:00

    80C51CH375的USB打印機驅(qū)動設(shè)計

    ,給出80C51單片機通過CH375控制USB打印機的硬件設(shè)計及其C語言軟件實現(xiàn).利用該設(shè)計能夠
    發(fā)表于 03-02 15:19

    80C51CH375的USB打印機驅(qū)動設(shè)計

    和USB打印機的連接。本文利用單片機和USB總線接口芯片實現(xiàn)LPT-USB打印機驅(qū)動器設(shè)計。利
    發(fā)表于 03-03 17:43

    USB總線接口芯片CH375

    單片機/DSP/MCU/MPU等控制器的系統(tǒng)總線上。在USB主機方式下,CH375還提供了串行通訊方式,通過串行輸入、串行輸出和中斷輸出與單片機/DSP/MCU/MPU等相連接。
    發(fā)表于 03-08 14:28

    CH375 數(shù)據(jù)包不同步

    求高手!用CH375遇到問題了!51單片機CH375,連接熱敏打印機設(shè)備。在枚舉時給設(shè)備設(shè)置地址時,獲取中斷狀態(tài)為0x2E(當(dāng)前接受數(shù)據(jù)包
    發(fā)表于 09-22 01:16

    采用CH375接口電路實現(xiàn)LPT-USB打印機驅(qū)動器設(shè)計

    ()主要使用以下幾個主要函數(shù): 4.2 主程序源代碼主程序代碼如下: 5 結(jié)束語本文詳細介紹了基于80C51單片機CH375型USB總線通用接口電路的LPT-USB打印機
    發(fā)表于 06-18 05:00

    如何設(shè)計一種LPT-USB打印機驅(qū)動器?

     本文詳細介紹了基于80C51單片機CH375型USB總線通用接口電路的LPT-USB打印機驅(qū)動器的設(shè)計及
    發(fā)表于 04-23 06:20

    使用STM32H743單片機如何判斷何時可以向打印機發(fā)送打印數(shù)據(jù)?

    單片機,可以控制CH375打印圖片,現(xiàn)在問題是圖片太大時,發(fā)的太快打印機的緩沖區(qū)會溢出,太慢又會l亂碼,我如何判斷何時可以向打印機發(fā)送
    發(fā)表于 07-08 08:00

    基于CH375實現(xiàn)單片機讀寫U盤

    摘要:介紹了一種USB總線的通用接口芯片CH375,并在此基礎(chǔ)上提出了一種外部單片機讀寫U盤的基本方法及其硬件連接方法。單片機只要在原硬件系統(tǒng)
    發(fā)表于 09-10 14:40 ?188次下載

    基于80C51CH375的LPT-USB打印機驅(qū)動器設(shè)計及

    引 言             隨著USB打印機技術(shù)的逐漸普及,并行口打印機越來越不好買到,而且有些用戶的
    發(fā)表于 07-16 09:54 ?1784次閱讀
    基于<b class='flag-5'>80C51</b>和<b class='flag-5'>CH375</b>的LPT-USB<b class='flag-5'>打印機</b><b class='flag-5'>驅(qū)動</b>器設(shè)計及

    80C51單片機的硬件結(jié)構(gòu)是怎么樣的?

    本文檔的主要內(nèi)容詳細介紹的是80C51單片機的硬件結(jié)構(gòu)是怎么樣的?主要內(nèi)容包括了:80C51單片機的內(nèi)部結(jié)構(gòu),80C51的外部引腳及功能,
    發(fā)表于 09-20 17:24 ?24次下載
    <b class='flag-5'>80C51</b><b class='flag-5'>單片機</b>的硬件結(jié)構(gòu)是怎么樣的?

    51單片機教程之80C51單片機的指令系統(tǒng)

    本文檔的主要內(nèi)容詳細介紹的是51單片機教程之80C51單片機的指令系統(tǒng)詳細資料免費下載。
    發(fā)表于 10-26 14:27 ?36次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b>教程之<b class='flag-5'>80C51</b><b class='flag-5'>單片機</b>的指令<b class='flag-5'>系統(tǒng)</b>

    80C51單片機的最小系統(tǒng)

    目錄80C51單片機的最小系統(tǒng)電源時鐘脈沖復(fù)位電路存儲器設(shè)置電路最小系統(tǒng)80C51單片機的最小
    發(fā)表于 11-11 10:51 ?76次下載
    <b class='flag-5'>80C51</b><b class='flag-5'>單片機</b>的最小<b class='flag-5'>系統(tǒng)</b>

    51單片機ch375實現(xiàn)鍵鼠功能

    51單片機ch375實現(xiàn)鍵鼠功能說明:為了參加比賽,我和我的隊友設(shè)計了一款人機交互系統(tǒng),我負責(zé)接收攝像頭數(shù)據(jù)和模擬鍵鼠功能,由于當(dāng)時只是
    發(fā)表于 11-20 14:06 ?19次下載
    用<b class='flag-5'>51</b><b class='flag-5'>單片機</b>和<b class='flag-5'>ch375</b><b class='flag-5'>實現(xiàn)</b>鍵鼠功能

    51單片機連接藍牙控制ch375pcb

    利用51單片機控制,做成手機藍牙連接臺式打印機USB口打印的電路設(shè)計。用51單片機接收藍牙模塊指
    發(fā)表于 03-10 10:58 ?0次下載