新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 一种单片机控制的指令转换器的设计

一种单片机控制的指令转换器的设计

作者:时间:2012-03-22来源:网络收藏

1 引言

本文引用地址:http://www.eepw.com.cn/article/171804.htm

在某大型指挥系统中,由于发送装置与接收装置的格式有很大的区别,两者不能直接通信。而更换其中之一都会造成巨大的资金浪费,的目的就是在不改变发送和接收装置的情况下对发送装置所产生的指令进行格式转换,使产生的指令格式与接收装置所能接收的指令格式一致,实现整个系统的顺利通信。

2 硬件

2.1 总体结构

指令的硬件总体结构如图2-1所示。所有电路模块集中在一块印刷电路板上,主要有89C51、串口扩展电路、中断扩展电路、监测电路、静态存贮器扩展电路、输出电路及分频电路等几个部分,下面将对各部分进行详细介绍。

2.2 中央单元

2.2.1时钟电路

89C51的内部有一个用于构成振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是此放大器的输入端和输出端,这个放大器与作为反馈元件的片外谐振器一起构成一个自激振荡器。89C51有内部和外部两种时钟方式,本系统采用外部时钟方式。

2.2.2复位电路

复位电路的核心是:在振荡器运行时,保证89C51的RST引脚上出现10ms以上稳定的高电平,这样可以使89C51可靠地复位。常用的复位电路有上电复位、电平开关复位、两种复位电路相结合的电路等,本系统采用上电复位电路。

24.gif

2.3 串口扩展电路

89C51仅有一个异步串行通信接口,而指令需要同时与指令发送装置、指令接收装置进行通信,需要两个专用的串行口,利用Intel 8251扩展串行口,可有效解决问题。8251可用于同步和异步传输。异步传送时,可传送5-8bits字符,时钟速率为通信波特率的1、16或64倍;可产生1、1.5或2位的停止位,可检查假启动位,自动监测和处理终止字符;完全双工,具有双缓冲器发送和接收器;具有奇偶、溢出和帧错误检测电路。本系统用两片8251进行扩展串口,其片选地址分别为#1FFFH、#3FFFH。

2.4 外部数据存储器扩展电路

89C51内部有128个字节RAM存储器。CPU对内部RAM具有丰富的操作指令。但在用于实时数据采集和处理时,仅靠内部的128个字节的数据存储器是远远不够的,在这种情况下,可以利用89C51的扩展功能,扩展外部存储器。

2.5 中断扩展电路

89C51单片机仅提供了两个外部中断源,而指令格式转换器需要四个中断源,为了解决此问题,利用能够管理多级中断请求Intel 8259A来进行中断扩展是一个有效的办法。

由于8259A与 89C51的接口并不完全兼容,因此必须对89C51输出的控制信号进行相应的变换后再对8259A进行控制。这需要解决硬件与软件两个问题,下面先给出硬件解决方案。

硬件方面,当8259A发出中断请求信号INT=1后,要求CPU返回一个中断应答信号 送至8259A,以控制8259A调用机器指令码的发送,但89C51不会自动发 =0的信号,可以通过对89C51的 信号与INT信号相结合,如图2-2所示,通过CPU连续执行三条指令MOVX A,@R0指令可产生8259A的 所需要的中断应答信号。

25.gif

2.6 输出电路

为了使信号转换器和指令发送装置之间能够通信,本系统采用标准异步通信接口RS-232作为输出端口。

RS-232电路采用MAXIM公司的232专用接口芯片MAX238DIP,该芯片单5V供电,包含4路收,4路发,可以全双工方式工作,MAX238DIP引脚定义及典型应用电路如图2-3所示,引脚定义见表2-1,T1IN、T2IN、T3IN、T4IN到T1OUT、T2OUT、 T3OUT、T4OUT实现驱动输入到232转换,R1IN、R2IN、R3IN、R4IN到R1OUT、R2OUT、R3OUT、R4OUT实现232 到驱动输出转换。

表2-1 MAX238DIP引脚定义
26.gif


上一页 1 2 3 4 下一页

评论


相关推荐

技术专区

关闭