新聞中心

EEPW首頁 > 設計應用 > 程控儀器GPIB接口與USB打印機轉換電路的實現

程控儀器GPIB接口與USB打印機轉換電路的實現

作者:余立立 上海海事大學(上海 200135) 林永標 顧榮妹 趙再鈞 中國電子科技集團公司第五十一研究所(上海 201802) 時間:2008-04-08 來源:電子產品世界 收藏

  引言

本文引用地址:http://butianyuan.cn/article/81332.htm

  在進行實時控制、數據采集及自動測試等科研過程中,大量使用著各種智能程控儀器,這些儀器通常都配有,在實際使用中,往往要打印輸出測量所得到的數據結果,特別是波形常用的方法有三種:一是采用專用的的打印機或繪圖儀,但價格較貴,此時雖有大量的性能優(yōu)異的通用USB或并行CENTRONICS接口的打印機(包括噴墨及激光打印機)閑置,但卻由于接口不同而無法使用,實屬可惜;二是采用帶有GPIB卡的計算機通過GPIB電纜與儀器相連,在PC機上通過自動測試軟件(如Labview軟件)的支持,將所測得的數據圖形通過PC機輸出至通用USB或并行CENTRONICS接口的打印機上,但用這種方法需用一臺帶有GPIB卡的計算機且有相應的自動測試軟件的支撐,故也不甚方便;三是采用自行開發(fā)的GPIB-CENTRONICS轉換裝置,但該轉換裝置只能用于與通用并行CENTRONICS接口打印機的轉換,而隨著USB打印機技術的逐漸普及,并行CENTRONICS接口打印機越來越不好買到,而且有些用戶的打印機只是USB接口而非并行口,因此這種GPIB-CENTRONICS轉換裝置的局限性愈加明顯。有鑒于此,為了實現能將具有GPIB接口的程控儀器直接和USB打印機相連進行打印,決定設計開發(fā)一款GPIB-USB打印機的轉換裝置,負責GPIB接口的程控儀器和USB打印機的連接。如圖1所示,該轉換裝置介于兩種接口之間,一方面與GPIB接口互連通訊接收智能儀器數據信息;另一方面與USB接口互連通訊,向打印機傳送數據信息?;谏鲜鏊枷?,并通過試驗,證明該方案是行之有效的。

  GPIB接口與USB接口芯片CH375

  GPIB接口特點

  GPIB總線接口包括有8根數據線,3根聯絡線和5根管理線。數據線用來傳送命令和數據,通常采用ISO碼對它們進行編碼,并且采用8位并行,字節(jié)串行方式進行傳送。聯絡線用來傳送聯絡消息,采用三線握手聯絡方式。管理線用來傳送管理消息,管理GPIB接口的工作。在本設計中,用到的是三根聯絡線DAV,NRFD,NDAC和兩根管理線ATN,EOI。在GPIB總線上傳送的消息一律采用TTL電平并用負邏輯表示其邏輯關系。當某一消息為邏輯1時,說明它處在TTL低電平(≤+0.8V),同時也表示它有效、被激勵或為真。若為邏輯0,則說明它處在TTL高電平(≥+2.0V),同時也表示它無效、未激勵或為假。

  

  CH375 是一個USB總線的通用接口芯片,支持Host主機方式和Slave設備方式。內部集成了PLL倍頻器、主從USB接口SIE、數據緩沖區(qū)、被動并行接口、異步串行接口、命令解釋器、控制傳輸的協議處理器、通用的固件程序等。在本地端,CH375具有8位數據總線和讀、寫、片選控制線以及中斷輸出,可以方便地掛接到/DSP/MCU 等控制器的系統(tǒng)總線上。CH375 的USB 主機方式支持各種常用的USB 全速設備,外部/DSP/MCU可以通過CH375按照相應的USB協議與USB設備通信。 
                                                                        
  如圖2所示,通過被動并行接口芯片可以很方便地掛接到各種8 位、DSP和MCU 的系統(tǒng)總線上,并且可以與多個外圍器件共存。并口信號線包括:8位雙向數據總線D7~D0、讀選通輸入、寫選通輸入、片選輸入、中斷輸出以及地址輸入線A0。CH375芯片的和可以分別連接到單片機的讀選通輸出引腳和寫選通輸出引腳??梢赃B接到單片機的中斷輸入引腳,中斷請求是低電平有效。當和以及A0都為低電平時,CH375中的數據通過D7~D0 輸出;當和以及A0都為低電平時,D7~D0上的數據被寫入CH375芯片中;當和都為低電平而A1為高電平時,D7~D0上的數據被作為命令碼寫入CH375 芯片中。

  對GPIB接口與USB接口功能大致了解之后,即可設計能互連兩種接口并實現功能轉換的接口裝置。

  硬件電路設計

  程控儀器GPIB接口與通用USB接口轉換電路硬件組成如圖3和圖4所示:

  圖3為單片機通過CH375控制USB打印機的硬件電路。圖中CH375芯片通過被動并行接口芯片掛接到8位單片機W77E58的系統(tǒng)總線上,CH375的TXD引腳接地,從而使CH375工作于并口方式。CH375芯片的8位雙向數據總線D7~D0直接與單片機的P0數據口相連,和分別連接到單片機的讀選通輸出引腳和寫選通輸出引腳。片選信號連接到單片機的P28引腳,該引腳為低電平時選通CH375芯片??梢赃B接到單片機的中斷輸入引腳,中斷請求是低電平有效。地址輸入線A0連接至單片機的P20引腳,當A0引腳為高電平時選擇命令端口,可以寫入命令;當A0引腳為低電平時選擇數據端口,可以讀寫數據。通過以上安排,該接口電路具備了與通用USB接口打印機的互連通訊。

  圖4為單片機與程控儀器GPIB接口的硬件接口電路。由于GPIB接口信號采用負邏輯,其功能實現不同于其它接口,故使用74LS240三態(tài)反相門, 經W77E58的P0口實現與GPIB接口的八根數據線互連通訊,并由P20同單片機的讀選通輸出引腳相或后產生對該三態(tài)門的選通信號。GPIB接口的聯絡線與管理線由W77E58單片機的P3端口部分引線實現,其中P33用于EOI數據傳送結束識別管理線;P31用于DAV數據有效的通訊聯絡線;P34用于NRFD未準備好接收數據的通訊聯絡線;P30用于NDAC未接收數據的通訊聯絡線;P35用于ATN注意的接口管理線。作了以上安排,由該接口電路就可實現GPIB接口功能,并與智能程控儀器互連通訊。

  圖4中另一個74LS244三態(tài)門用于讀取該接口轉換裝置的狀態(tài)信息, 由P21同單片機的讀選通輸出引腳相或后產生對該三態(tài)門的選通信號。該狀態(tài)信息由八位微型開關設置,其中addr4~addr0五位用于設置該接口轉換電路的地址;另一位LA為1時用于使該接口轉換電路總是處于聽者狀態(tài),即無論其addr4~addr0的地址如何設定總是無條件接收GPIB總線上的數據,即此時地址設定無效,若LA為0,則取決于程控儀器的尋址及addr4~addr0五位設定的地址;還有兩位用來設置打印機的分辨率。在圖3中,由W77E58的P0口接收GPIB總線上的數據信息以及接口電路的狀態(tài)信息。

  接口功能的軟件設計

  軟件設計的流程如圖5所示。

  其中初始化子程序流程如圖6所示。

  初始化過程分兩部分:單片機初始化和打印機的枚舉初始化。單片機的初始化過程就是直接向相應的I/O口寫初始化值及設置看門狗,可調用函數watchdog_init()實現設置看門狗。打印機的枚舉初始化過程很重要,要實現打印采集到的并口數據,首先必須成功地枚舉初始化打印機。初始化USB打印機函數init_print()主要用到以下幾個主要函數:

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

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

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

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

  ◇ set_config(unsigned char cfg),加載USB配置值。

  此外,在進行軟件設計的過程中有以下注意事項:

  ·儀器是否發(fā)送信息是通過查詢GPIB接口的DAV線來實現,當DAV線為低電平時表明儀器要發(fā)送信息了,而為高電平時表明儀器尚未準備發(fā)送信息;

  ·判儀器發(fā)送的信息為命令還是數據是通過查詢GPIB接口的ATN線來實現, 當ATN線為低電平時表明儀器發(fā)送的是命令, 而為高電平時表明儀器發(fā)送的是數據;

  ·在處于無條件接收狀態(tài)時,對儀器發(fā)送的命令不予理會,即進行GPIB接口三線掛鉤(NDAC,DAV,NRFD)的空循環(huán),而當儀器發(fā)送來數據時,則進行完整的接收;

  ·在處于尋址的接收狀態(tài)時,則需判斷儀器發(fā)出的尋址命令是否尋址本接口裝置通過五位微型開關設定的地址,若不是,則亦進行GPIB接口三線掛鉤(NDAC,DAV,NRFD)的空循環(huán), 若是, 則對儀器發(fā)送來數據進行完整的接收;

  ·判儀器是否將數據發(fā)送完畢是通過查詢GPIB接口的EOI線來實現,當EOI線為低電平時,表明儀器將數據發(fā)送完畢,而為高電平時表明儀器尚未將數據發(fā)送完畢;

  結語

  在實際調試中,筆者將在HP邏輯分析儀(HP 1630G)、HP頻譜分析儀(HP 8563E)以及HP矢量網絡分析儀(HP 8720B)上測得的波形, 通過該接口轉換電路后在HP Laser 1200等USB接口打印機上的輸出,得以通過且打印質量優(yōu)于專用GPIB接口打印機(HP Thinkjet  系列)。

  在該接口轉換電路的設計中,均采用了常用的芯片,電路板制作簡單、小巧,該電路主要是使用了W77E58單片機,由軟件程序模擬接口功能, 它的實際使用解決了智能程控儀器GPIB接口與通用USB接口打印機的互連通訊,由通用USB接口打印機即可輸出在GPIB接口的程控儀器上所測得的數據結果,從而為GPIB接口的智能程控儀器的打印輸出又增添一條行之有效的方法。

汽車防盜機相關文章:汽車防盜機原理
頻譜分析儀相關文章:頻譜分析儀原理


評論


相關推薦

技術專區(qū)

關閉