商业联盟  用户: 密码: 注册  忘记密码
会员专区 会员手册 增值服务 帮助 商业论坛 “帖不够”广告信息


商业中国
博雅艺术
经营管理

专题
 
 您当前的位置:首页>>行业分类>>电子电气>>技术知识>>设计方案>>正文
AT89C52单片机 ARINC429航空总线接口设计
  发布时间:2006-1-28 15:22:34 阅读次数:
来源:《国外电子元器件》 作者:赵世强 赵 满 周义健
 

    关键词:DEI1016;接收;发送;接口设计;AT89C52

1 DEI1016的主要功能

DEI1016是Device Engineering Incorporated 生产的一种可支持ARINC429航空总线协议的串行接收、发送器件。该器件的主要功能如下:

●串行数据字长为32或25位;

●串行数据速率为100kbps或12.5kbps;

●具有独立的收、发电路;

●两个独立的接收器可直接与ARINC429总线接口;

●具有串/并接收数据转换,和并/串发送数据转换功能;

●对接收的数据可进行奇偶状态校验;并可对发送数据奇偶状态进行设置;

●可自动产生字与字之间的间隔;

●采用单一+5V供电。

2 DEI1016的工作原理

DEI1016的引脚功能及特点以前已有介绍,现仅对该器件的工作原理作以描述。

2.1 DEI1016的复位及初始化

电路上电后,首先在MR引脚施加200μs的低电平脉冲以使DEI1016复位,然后把控制字写到16位数据总线上,这样,在LDCW引脚施加低电平便可把控制字写入到控制字寄存器,尔后便可接收和发送数据。

1

2.2 DEI1016的数据发送过程

DEI1016的数据发送时序如图1所示。发送数据时,首先应查询TXR引脚是否为高电平,若是高电平,表明发送存储器已空;此时置ENTX引脚为低电平可停止发送数据,并把要发送的数据写到16位数据总线上。之后,若要发送数据字1,则置LD1为低,LD2为高;若发送数据字2,则置LD1为高,LD2为低此时再查询TXR引脚是否为低电平,若为低电平,表明发送数据已装载到存储器中,此时再置ENTX引脚为高电平即可发送数据。DEI1016的发送存储器最多可装载8个32位字长的数据,DEI1016采用的是先进先出的发送顺序。

2.3 DEI1016的数据接收过程

DEI1016的数据接收时序如图2所示。当接收器1接收到数据后,系统会置DR1为低电平;而当接收器2接收到数据后,系统将置DR2为低电平。欲使接收器1将接收数据的字1送至16位数据总线上,应先置SEL为低电平,再置OE1为低电平且置OE2为高。而后再置SEL为高电平,便可将字2送至16位数据总线。要使接收器2的数据送至16位数据总线上,则置OE2为低电平,OE1为高电平即可。

表1 74LS373功能表

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

3 AT89C52与DEI1016的接口设计

AT89C52(U1)8位微控器与DEI1016的16位数据总线进行数据交换时,必须先利用锁存器来锁存数据。其接口电路框图见图3。发送数据时,U1先把要发送的数据分成低8位和高8位送出,并进入U3、U4锁存,尔后再把16位数据一同送至DEI1016U2的数据总线上。U3、U4、U5、U6均选用74LS373芯片,它们的内部均由D锁存器和三态输出门组成,其功能表如表1所列。当OE为低电平,且G为高电平时,输出Q与输入D之间为直通方式。而当OE为高电平,且G由高电平跳变为低电平后,D端输入数据被D锁存器锁存,之后即使D端(P0口)输入数据再发生变化,也不会影响已锁存的数据。如果OE为低电平,系统将输出原先锁存的数据。为了锁存低8位数据,需要由U1的WR和地址选通信号Y7(由译码器U7译出)经或非门U8去控制U3的G端。实际上,只有U1在执行写操作时, WR和Y7才同时为低电平,而此时低8位数据才能被U3暂时锁存。高8位数据的锁存与此类似M,U1的P3.4由高变低可打开U3、U4的输出门,从而使U3、U4把数据送至U2的数据总线,当U1的P1.3或P1.4由高变低以把16位数据装入发送存储器后,P3.4会由低变高,此时U3、U4输出为高阻抗状态,但不会影响U2的数据输出状态。其发送程序如下:

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数据装入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

mov a,#d2h ;取字2的高8位

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

clr p3.4 ;打开U3、U4的输出

nop

clr p1.4 ;字2数据装入DEI1016

nop

setb p3.4

setb p1.4

2

    用U1接收数据,应将DR1、DR2及TXR经与门U13接至U1的INT0,在INT0口产生中断后,U1便执行读操作,并通过RD和Y5控制U14、U15以读入DR1、DR2及TXR的状态。U2接收到数据或发送数据完毕后,即向U1的INT0口申请中断,并在中断程序中判断DR1、DR2及TXR的状态。TXR为低表明发送完毕,而DR1或DR2为低则表明已收到数据。此时可置P1.2(SEL)为低电平,同时也置P1.0(接DEI1016的OE1)或P1.1 接DEI1016的OE2为低电平,以使字1的数据出现在数据总线上,而使P1.0、P1.1经U11异或后输出以使U5、U6的G端为高电平,从而把数据锁入U5、U6。由于RD分别与Y7、Y6相或后的输出是与U5、U6的OE门相连接的,因此,U1 执行读操作时,应先后打开U5、U6的OE门来把数据读入。其接收程序如下:(以接收器1为例)。

本新闻共2页,当前在第1页  1  2  

 
行业知识    
机械电子 能源化工 矿产物流 建材房产 纺织家电 手机通讯 医卫医改 财经商务 股票期货
媒体动漫 广告旅游 教育农业 餐饮娱乐 钢铁汽车 政策法律 碑帖青铜 书法国画 陶瓷收藏

相关新闻                    办公软件应用
·SAM8系列S3C825A型单片机及其软件设计
·AVR单片机捕获中断实现红外线解码
·PIC18FXX8单片机通用同步异步收发器编程
·C51系列单片机设计物体分级设备测量光幕
·LCD驱动器SD0432与嵌入式系统的接口设计
·用ZHX1010实现单片机之间的红外通信
·用LatticeXP FPGA桥接吉比特媒体独立接口
热点新闻
 
相关 连接  
 
 
站内搜索
    
最新新闻
·绿色能源的五种优势
·太阳能
·可燃冰
·氢能
·天然气
·乙醇汽油
·生物质能
·风能
·水能
·核能

热点话题         行行出状元!
 
Google
关键词导航
商业 机械 创业 车床 化工 期货 股票 财经
 
 
 
Google
 
Web www.Bizing.com