GPIB(General-Purpose Interface Bus)是一種面向程控儀器的通用接口總線,由國際電子電氣工程師協(xié)會制定,又稱IEEE488總線。GPIB數(shù)據(jù)傳輸穩(wěn)定可靠,能夠?qū)崿F(xiàn)有效跟蹤,在計算機和儀器設備之間通信應用非常廣泛。NAT9914是NI公司推出的GPIB接口芯片,兼容TMS9914和uPD7210,能夠自動處理IEEE488命令和未定義命令,滿足IEEE488.2的附加要求和協(xié)議。本文利用NAT9914設計了GPIB接口卡,并組成主從結(jié)構(gòu)的通信網(wǎng)絡系統(tǒng)。
1NAT9914介紹
NAT9914共有25個寄存器,其中19個工作寄存器在使用時必須配置。微控制器通過地址選擇端RS0, RS1, RS2和讀寫端DBIN、/WE來選擇這些寄存器,進行讀寫操作。工作寄存器包括8個只讀寄存器和11個只寫寄存器;只讀寄存器用來保存接收信息和NAT9914接口功能所在的狀態(tài);只寫寄存器用來控制NAT9914的工作方式和發(fā)送信息。每種寄存器都有各自不同的功能,NAT9914的接口功能正是通過微控制器對這些寄存器的讀/寫操作來實現(xiàn)的。
2硬件電路設計
NAT9914的硬件電路圖如圖1所示。圖中NAT9914的D7是內(nèi)部數(shù)據(jù)總線的最低有效位,與MCU相連時, D7~D0與P0.0~P0.7對應相連。MCU的WR直接與NAT9914的WR相連,而RD則經(jīng)反相后與NAT9914的DBIN相連。采用中斷方式對NAT9914進行管理;通過7404構(gòu)成5MHz時鐘振蕩電路作為NAT9914的CLK。
3軟件設計
軟件程序配合硬件電路實現(xiàn)GPIB的接口功能。GPIB接口軟件的設計是基于三線握手的方式而進行的,主要完成以下幾方面的功能:(1)完成對接口的初始化。在程控儀器與計算機之間進行信息傳遞之前,必須正確進行GPIB接口板的初始化。(2)主控計算機能夠向儀器發(fā)送各種通令、地址和程控碼等消息。(3)主控計算機能夠讀取從儀器返回的數(shù)據(jù),并對數(shù)據(jù)進行分析處理。系統(tǒng)程序主流程圖如圖2所示。
4網(wǎng)絡結(jié)構(gòu)
GPIB總線網(wǎng)絡可以包含一個主機多個從機,每個從機具有相同的總線使用權(quán),可以在任何時刻配置為講者或聽者,總線的競爭規(guī)則由主機管理。本系統(tǒng)采用固定主機和從機方式,從機只能向主機發(fā)送信息,而主機可以向某個從機發(fā)送定向信息,網(wǎng)絡結(jié)構(gòu)如圖3所示。
5結(jié)束語
本文詳細介紹了GPIB總線控制器NAT9914,給出了硬件連接圖、軟件流程圖和網(wǎng)絡結(jié)構(gòu)圖。NAT9914功能齊全,能方便地實現(xiàn)GPIB接口功能,本論文介紹的方法已經(jīng)在實際可程控測量儀器的設計中得到了采用。若想實現(xiàn)其它的接口功能,可參照上述方法。