基于單片機(jī)的接口轉(zhuǎn)換設(shè)計(jì)及應(yīng)用
關(guān)鍵詞:?jiǎn)纹瑱C(jī),GPIB,RS232C,接口轉(zhuǎn)換器
1引 言
在電子測(cè)量與儀器領(lǐng)域內(nèi),GPIB和RS232C屬于應(yīng)用較廣泛的標(biāo)準(zhǔn)接口總線。GPIB適于建立自動(dòng)測(cè)試系統(tǒng)(ATS),RS232C常用于數(shù)據(jù)終端設(shè)備(DTE)和數(shù)據(jù)通信設(shè)備(DCE)之間的聯(lián)接。目前,已研制了許多專(zhuān)用大規(guī)模集成電路芯片來(lái)幫助設(shè)計(jì)者實(shí)現(xiàn)GPIB和RS232C接口,且這些芯片都與微處理器的內(nèi)部總線相容。標(biāo)準(zhǔn)接口總線解決了設(shè)備與設(shè)備之間,或者功能組件與功能組件之間的接口問(wèn)題。借助適當(dāng)?shù)慕涌诳偩€把若干設(shè)備或功能組件聯(lián)接起來(lái)就可構(gòu)成一個(gè)ATS。如果把基于一種標(biāo)準(zhǔn)接口系統(tǒng)的測(cè)試裝置作為子系統(tǒng),再把若干子系統(tǒng)聯(lián)接起來(lái)構(gòu)成大系統(tǒng)或測(cè)試和控制網(wǎng)絡(luò),則實(shí)際需解決的就是不同標(biāo)準(zhǔn)接口總線之間的轉(zhuǎn)換問(wèn)題。
2接口轉(zhuǎn)換硬件設(shè)計(jì)
GPIB(即IEEE488)是目前普遍使用的一種可程控測(cè)量?jī)x器的接口,并已有正式頒布的IEEE488和IEC625標(biāo)準(zhǔn)文本。最早投入市場(chǎng)的大規(guī)模集成電路GPIB接口片子是Motorola公司的MC68488。RS232C則是用得最多的一種串行通信標(biāo)準(zhǔn),用于DTE和DCE之間的接口,串行通信接口常用的標(biāo)準(zhǔn)LSI芯片是Intel8251A。把與GPIB和RS232C標(biāo)準(zhǔn)相容的集成接口芯片作為微處理器內(nèi)部總線上的輸入/輸出口,就能構(gòu)成GPIB-RS232C轉(zhuǎn)換器。GPIB-RS232C轉(zhuǎn)換電路板即以AT89C51作為控制中心,用MC68488與GPIB系統(tǒng)母線相連,用INTEL8251A作為AT89C51同RS232C的接口,從而實(shí)現(xiàn)GPIB-RS232C接口轉(zhuǎn)換。
AT89C51是一種帶4K字節(jié)閃速可編程可擦除只讀存儲(chǔ)器(PEROM)的低功耗、高性能CMOS8位微控制器。該器件采用ATMEL高密度、非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。AT89C51具有以下一些標(biāo)準(zhǔn)特性:4K字節(jié)的閃速存儲(chǔ)器,128字節(jié)RAM,32個(gè)I/O線,2個(gè)16位定時(shí)器/計(jì)數(shù)器,5個(gè)兩級(jí)中斷源結(jié)構(gòu),1個(gè)全雙工串行口,片內(nèi)振蕩器和時(shí)鐘電路。此外,AT89C51設(shè)有靜態(tài)邏輯,可以在低到零頻率的條件下工作,支持2種軟件可選的省電模式。在閑置模式下,CPU停止工作,但RAM、定時(shí)器/計(jì)數(shù)器、串口和中斷系統(tǒng)仍在工作。在掉電模式下,保存RAM的內(nèi)容,并且凍結(jié)振蕩器,禁止所有其他片內(nèi)控制單元功能,直到下一個(gè)硬件復(fù)位為止。
GPIB-RS232C接口轉(zhuǎn)換電路板的主要功能有:
MC68488具有完整的GPIB聽(tīng)/講能力,而Intel8251A有能力發(fā)送和接收位串行數(shù)據(jù),因此,在GPIB控制器管理下能正確實(shí)現(xiàn)GPIB器件與RS232C器件之間的數(shù)據(jù)交換;該接口轉(zhuǎn)換電路板作為GPIB器件具有單個(gè)或雙主-副地址識(shí)別能力,響應(yīng)GPIB控制器發(fā)送的有關(guān)GPIB命令。圖1為GPIB-RS232C接口轉(zhuǎn)換電路示意圖。
3接口轉(zhuǎn)換軟件設(shè)計(jì)
因?yàn)橛写笠?guī)模集成電路接口芯片,該接口轉(zhuǎn)換電路板硬件實(shí)現(xiàn)較為容易,關(guān)鍵是要設(shè)計(jì)一個(gè)完善的監(jiān)督管理程序。程序流程圖如圖2所示,流程設(shè)計(jì)是以GPIB傳送數(shù)據(jù)給RS232C為主,因此監(jiān)控系統(tǒng)初始化之后,首先識(shí)別MC68488是否聽(tīng)受命?一旦聽(tīng)受命就接收GPIB數(shù)據(jù),直到完成一個(gè)數(shù)據(jù)塊的輸入為止。數(shù)據(jù)塊輸入完成后,就啟動(dòng)Intel8251數(shù)據(jù)發(fā)送部分工作,連續(xù)發(fā)送從MC68488輸入的數(shù)據(jù)字節(jié)。RS232C接收數(shù)據(jù)是從識(shí)別Intel8251接收中斷開(kāi)始。如果Intel8251狀態(tài)寄存器D7=1,監(jiān)督程序就轉(zhuǎn)入從RS232C接收數(shù)據(jù)分支。首先從Intel8251接收整個(gè)數(shù)據(jù)塊,然后借助GPIB的SRQ線向GPIB控制器提出服務(wù)請(qǐng)求;待GPIB控制器執(zhí)行串行查詢(xún)序列,響應(yīng)該轉(zhuǎn)換器服務(wù)請(qǐng)求后,就可以通過(guò)MC68488把接收到的數(shù)據(jù)塊輸給GPIB系統(tǒng)受命的聽(tīng)器件(或控制器)。注意從RS232C接收數(shù)據(jù)塊時(shí),要約定末字節(jié)識(shí)別標(biāo)志。
4接口轉(zhuǎn)換應(yīng)用實(shí)例
PCB程控探針定位設(shè)備是一種對(duì)被測(cè)試的印制電路板進(jìn)行測(cè)試點(diǎn)定位的設(shè)備,它在計(jì)算機(jī)的支持下自動(dòng)定位于被測(cè)試點(diǎn),并且穿透印制板防護(hù)層,獲取被測(cè)試點(diǎn)的電信號(hào)。其組成結(jié)構(gòu)見(jiàn)圖3,其定位功能由系統(tǒng)主控制器通過(guò)GPIB總線實(shí)現(xiàn),而PCB的供電、信號(hào)源及測(cè)試儀器由具體的被測(cè)PCB的特性來(lái)確定。程控探針定位設(shè)備采用步進(jìn)電機(jī)開(kāi)環(huán)控制實(shí)現(xiàn)探針X、Y方向的自由移動(dòng),采用電磁鐵吸合控制實(shí)現(xiàn)探針的上下升降,探針通過(guò)刻劃來(lái)穿透PCB阻焊層,保持與測(cè)試點(diǎn)的可靠接觸。該定位設(shè)備的微處理器電路板屬于外購(gòu)產(chǎn)品,可實(shí)現(xiàn)對(duì)步進(jìn)電機(jī)移位和電磁鐵吸合的控制,并且,微處理器電路板中已設(shè)計(jì)了RS232C接口,可以實(shí)現(xiàn)與測(cè)試系統(tǒng)主控計(jì)算機(jī)的串行通信。但是在ATS中,對(duì)程控臺(tái)式測(cè)試設(shè)備通常采用GPIB控制,因此需要進(jìn)行GPIB-RS232C接口轉(zhuǎn)換。通過(guò)上述方法設(shè)計(jì)的接口轉(zhuǎn)換電路,能確保PCB程控探針定位設(shè)備掛上GPIB總線,順利地連入ATS中。并且,程控信號(hào)除了使用GPIB接口外,拔除與接口轉(zhuǎn)換電路板中相連的RS232C插頭,用外部電纜可直接使用RS232C控制方式完成PCB程控探針定位設(shè)備的全部功能,而此時(shí)GPIB的控制無(wú)效。
1 楊安祿等.電子儀器接口技術(shù).成都:電子科技大學(xué)出版社,1994
2 劉文彥等.現(xiàn)代測(cè)試系統(tǒng).長(zhǎng)沙:國(guó)防科技大學(xué)出版社,1995
3 張乃國(guó)等.實(shí)用電子測(cè)量技術(shù).北京:電子工業(yè)出版社,1996
4 王格芳等.電子裝備通用自動(dòng)檢測(cè)系統(tǒng)集成與開(kāi)發(fā).電子測(cè)量與儀器學(xué)報(bào),Vol.14,No.5,2000(10)
5 王格芳等.用于印制板電路診斷的自動(dòng)探測(cè)技術(shù)研究.系統(tǒng)工程與電子技術(shù),Vol.23,No.2,2001
評(píng)論