《電子技術應用》
您所在的位置:首頁 > 通信與網(wǎng)絡 > 設計應用 > ARINC429航空總線與AT89C52單片機接口設計
ARINC429航空總線與AT89C52單片機接口設計
互聯(lián)網(wǎng)
摘要: DEI1016是一種可支持ARINC429航空總線協(xié)議的串行接收、發(fā)送器件,。文中介紹了DEI1016的主要功能和工作原...
Abstract:
Key words :

1 DEI1016的主要功能

DEI1016是DeviceEngineeringIncorporated生產(chǎn)的一種可支持ARINC429航空總線協(xié)議的串行接收" title="接收">接收、發(fā)送" title="發(fā)送">發(fā)送器件,。該器件的主要功能如下:

●串行數(shù)據(jù)字長為32或25位;

●串行數(shù)據(jù)速率為100kbps或12.5kbps,;

●具有獨立的收,、發(fā)電路;

●兩個獨立的接收器可直接與ARINC429總線接口,;

●具有串/并接收數(shù)據(jù)轉換,,和并/串發(fā)送數(shù)據(jù)轉換功能,;

●對接收的數(shù)據(jù)可進行奇偶狀態(tài)校驗;并可對發(fā)送數(shù)據(jù)奇偶狀態(tài)進行設置,;

●可自動產(chǎn)生字與字之間的間隔,;

●采用單一+5V供電。

2 DEI1016的工作原理

DEI1016的引腳功能及特點以前已有介紹,,現(xiàn)僅對該器件的工作原理作以描述,。

2.1 DEI1016的復位及初始化

電路上電后,首先在MR引腳施加200μs的低電平脈沖以使DEI1016復位,,然后把控制字寫到16位數(shù)據(jù)總線上,,這樣,,在LDCW引腳施加低電平便可把控制字寫入到控制字寄存器,,爾后便可接收和發(fā)送數(shù)據(jù)。

2.2 DEI1016的數(shù)據(jù)發(fā)送過程

發(fā)送數(shù)據(jù)時,,首先應查詢TXR引腳是否為高電平,,若是高電平,表明發(fā)送存儲器已空,;此時置ENTX引腳為低電平可停止發(fā)送數(shù)據(jù),,并把要發(fā)送的數(shù)據(jù)寫到16位數(shù)據(jù)總線上。之后,,若要發(fā)送數(shù)據(jù)字1,,則置LD1為低,LD2為高,;若發(fā)送數(shù)據(jù)字2,,則置LD1為高,LD2為低此時再查詢TXR引腳是否為低電平,,若為低電平,,表明發(fā)送數(shù)據(jù)已裝載到存儲器中,此時再置ENTX引腳為高電平即可發(fā)送數(shù)據(jù),。DEI1016的發(fā)送存儲器最多可裝載8個32位字長的數(shù)據(jù),,DEI1016采用的是先進先出的發(fā)送順序。

2.3 DEI1016的數(shù)據(jù)接收過程

當接收器1接收到數(shù)據(jù)后,,系統(tǒng)會置DR1為低電平,;而當接收器2接收到數(shù)據(jù)后,系統(tǒng)將置DR2為低電平,。欲使接收器1將接收數(shù)據(jù)的字1送至16位數(shù)據(jù)總線上,,應先置SEL為低電平,再置OE1為低電平且置OE2為高,。而后再置SEL為高電平,,便可將字2送至16位數(shù)據(jù)總線,。要使接收器2的數(shù)據(jù)送至16位數(shù)據(jù)總線上,則置OE2為低電平,,OE1為高電平即可,。

表1 74LS373功能表

輸出控制OE
L
使能G 輸入D 輸出Q
L
H H H
L
H L L
H
L X Qo
X X Z

3 AT89C52與DEI1016的接口設計

AT89C52(U1)8位微控器與DEI1016的16位數(shù)據(jù)總線進行數(shù)據(jù)交換時,必須先利用鎖存器來鎖存數(shù)據(jù),。其接口電路框圖見圖3,。發(fā)送數(shù)據(jù)時,U1先把要發(fā)送的數(shù)據(jù)分成低8位和高8位送出,,并進入U3,、U4鎖存,爾后再把16位數(shù)據(jù)一同送至DEI1016U2的數(shù)據(jù)總線上,。U3,、U4、U5,、U6均選用74LS373芯片,,它們的內(nèi)部均由D鎖存器和三態(tài)輸出門組成,其功能表如表1所列,。當OE為低電平,,且G為高電平時,輸出Q與輸入D之間為直通方式,。而當OE為高電平,,且G由高電平跳變?yōu)榈碗娖胶螅亩溯斎霐?shù)據(jù)被D鎖存器鎖存,,之后即使D端(P0口)輸入數(shù)據(jù)再發(fā)生變化,,也不會影響已鎖存的數(shù)據(jù)。如果OE為低電平,,系統(tǒng)將輸出原先鎖存的數(shù)據(jù),。為了鎖存低8位數(shù)據(jù),需要由U1的WR和地址選通信號Y7(由譯碼器U7譯出)經(jīng)或非門U8去控制U3的G端,。實際上,,只有U1在執(zhí)行寫操作時,WR和Y7才同時為低電平,,而此時低8位數(shù)據(jù)才能被U3暫時鎖存,。高8位數(shù)據(jù)的鎖存與此類似M,U1的P3.4由高變低可打開U3,、U4的輸出門,,從而使U3、U4把數(shù)據(jù)送至U2的數(shù)據(jù)總線,當U1的P1.3或P1.4由高變低以把16位數(shù)據(jù)裝入發(fā)送存儲器后,,P3.4會由低變高,,此時U3、U4輸出為高阻抗狀態(tài),,但不會影響U2的數(shù)據(jù)輸出狀態(tài),。其發(fā)送程序如下:

mov dptr,#e000h

mov a,,#d1l,;取字1的低8位

movx @dptr,a,;把字1的低8位鎖入U3

mov dptr,,#c000h

mov a,#d1h,;取字1的高8位

movx @dptr,,a;把字1的高8位鎖入U4

clr p3.4,;打開U3,、U4的輸出

nop

clr p1.3,;字1數(shù)據(jù)裝入DEI1016

nop

setb p3.4,;關閉U3、U4的輸出

setb p1.3

mov dptr,,#e000h

mov a,,#d2l;取字2的低8位

movx@dptr,,a,;把字2的低8位鎖入U3

mov dptr,#c000h

mova,,#d2h,;取字2的高8位

movx@dptr,a,;把字2的高8位鎖入U3

clrp3.4,;打開U3、U4的輸出

nop

clrp1.4,;字2數(shù)據(jù)裝入DEI1016

nop

setbp3.4

setbp1.4

用U1接收數(shù)據(jù),,應將DR1、DR2及TXR經(jīng)與門U13接至U1的INT0,,在INT0口產(chǎn)生中斷后,,U1便執(zhí)行讀操作,并通過RD和Y5控制U14、U15以讀入DR1,、DR2及TXR的狀態(tài),。U2接收到數(shù)據(jù)或發(fā)送數(shù)據(jù)完畢后,即向U1的INT0口申請中斷,,并在中斷程序中判斷DR1,、DR2及TXR的狀態(tài)。TXR為低表明發(fā)送完畢,,而DR1或DR2為低則表明已收到數(shù)據(jù),。此時可置P1.2(SEL)為低電平,同時也置P1.0(接DEI1016的OE1)或P1.1接DEI1016的OE2為低電平,,以使字1的數(shù)據(jù)出現(xiàn)在數(shù)據(jù)總線上,,而使P1.0、P1.1經(jīng)U11異或后輸出以使U5,、U6的G端為高電平,,從而把數(shù)據(jù)鎖入U5、U6,。由于RD分別與Y7,、Y6相或后的輸出是與U5、U6的OE門相連接的,,因此,,U1執(zhí)行讀操作時,應先后打開U5,、U6的OE門來把數(shù)據(jù)讀入,。其接收程序如下:(以接收器1為例)。

clrp1.2,;置DEI1016的SEL=0,,讀字1

clrp1.0;置DEI1016的/OE1=0

setbp1.1,;置DEI1016的/OE2=1

nop

movdptr,,#e000h

movxa,@dptr,;把字1的低8位讀入

mov10h,,a

movdptr,#c000h

movxa,,@dptr,;把字1的高8位讀入

mov11h,a

setbp1.2,;置DEI1016的SEL=1,,讀字2

nop

movdptr,,#e000h

movxa,@dptr,;把字2的低8位讀入

mov12h,,a

movdptr,#c000h

movxa,,@dptr,;把字2的高8位讀入

mov13h,a

setbp1.0,;置DEI1016的/OE1=1

setbp1.1,;置DEI1016的/OE2=1

setbp1.2;置DEI1016的SEL=1

DEI1016的兩路接收可能產(chǎn)生同時接收的現(xiàn)象,。即在上述兩路共用一個中斷源時,,如果某一路申請中斷已進入接收程序,那么另一路同時接收的數(shù)據(jù)就可能被屏蔽,。解決方法是:進入中斷程序后,,在接收數(shù)據(jù)過程中再查詢另一路DR的狀態(tài)。當然,,如果每路單獨使用一個中斷源,,效果將會更好。

4 結束語

實際上,,上述AT89C52與DEI1016的接口電路經(jīng)改進也可以應用到其它16位數(shù)據(jù)總線接口的電路中,,而如果用ISP器件替代鎖存器及其門電路,還可大大減小電路板的面積,。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權禁止轉載。