微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 一种单片机控制的指令转换器的设计

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

时间:03-22 来源:互联网 点击:

必须经过初始化。本系统中,两片 8251都进行收发工作。

对于8251(Ⅰ),收发数据的速率为9600bps,接收器、发送器的时钟频率为153.6KHz,所以波特率系数为异步×16,字符长度为8位,无奇偶校验位,异步方式,一个起始位,一个停止位。8251(Ⅰ)的方式选择字、命令字分别为#4EH、#37H。

对于8251(Ⅱ),收发数据的速率为2400bps,接收器、发送器的时钟频率为153.6KHz,所以波特率系数为异步×64,字符长度为8位,无奇偶校验位,异步方式,一个停止位。8251(Ⅱ)的方式选择字、命令字分别为#4FH、#37H。

8251(Ⅰ)、8251(Ⅱ)的控制字和状态寄存器的地址分别为#1FFFH、#3FFFH,下面以8251(Ⅰ)为例给出初始化编程:
MOV DPTR,#1FFFH ;送方式控制字
MOV A,#4EH
MOV @DPTR,A ;送命令指令
MOV A,#37H
MOV @DPTR,A

3.2 8259A初始化编程

前面已经提过,由于8259A与89C51的接口信号不能完全兼容,因此必须对89C51输出的控制信号进行相应的变换后再对8259A进行控制。在软件方面需要解决的问题是:当CPU进入中断响应周期,送来第①个 应答负脉冲时,89C51不能接收8259A送来的CALL指令机器码(两者CALL指令机器码不兼容),在中断程序中将其废掉,然后在第②、③个 应答负脉冲期间,用2条MOVX A,@R0指令读出8259A中断矢量低8位送DPL,高8位送DPH,通过DPTR,再用跳转指令转至中断源对应的中断服务程序的入口执行,时序图见图3-1。

8259A中断控制程序包括:初始化主程序,解决89C51单片机中断初始化和8259A的初始化;中断服务程序以及为各个中断源服务的子程序,解决如何从8259A读入中断矢量地址并转中断处理程序,最后结束中断并返回,下面给出程序。

设8259A选择中断优先级固定,全嵌套工作方式,因此只需要填写ICW1、ICW2。IR0设定为边沿触发中断方式。中断源输入IR0的中断矢量为0260H,IR1以及以后的中断矢量依次加4。

8259A中断服务程序框图如图3-2所示:

8259A中断后进入中断程序清单如下:

对于每个中断申请,应有一段为IR0~IR4服务的中断子程序。但是,在8259A的ICW1中规定了IRi中断矢量间隔4个字节,不能存入一段实际的中断服务程序。故在8259A中断矢量0260H单元开始存放一个散转表,再转入实际的IRi的中断服务子程序执行。并在每个程序都要以执行指令LJMP RET04来结束,以便返回到8259A中断程序的模拟断点处RET04。

3.3 主程序

本程序主要用来接收指令发送装置发来的指令,并对指令格式进行转换。转换后的数据发送给指令接收装置。主要功能是设置89C51、8251、8259A的初始状态,开启中断,等待中断,根据不同的中断矢量转到相应的中断子程序。流程如下所示:


图3-3 主程序流程图

接收指令子程序主要用来接收由指令发送装置发送来的模拟指令,接收的指令数据由格式转换子程序进行格式转换;发送应答子程序根据接收子程序接收的数据正确与否向指令发送装置发送应答数据帧;发送指令子程序把转换后的指令发送到指令接收装置;接收应答子程序用来接收指令接收装置发送过来的应答数据帧。

4结束语

本文设计的指令转换器已与整个指挥控制系统进行了现场试验,结果表明,该指令转换器设计正确,实现了指令格式的转换,运行速度快,可靠性高。

参考文献
[1] 李华等编著:《MSC-51系列单片机实用接口技术》,北京航空航天大学出版社,2001.5
[2] (美)U.布莱克,《计算机网络—协议、标准与接口》,人民邮电出版社,1990
[3] 张毅刚等编著:《MCS-51单片机应用设计》,哈尔滨工业大学出版社,1990年。
[4] 孙涵芳、徐爱卿,MCS-51(96)系列单片机原理及应用,北京航空航天大学出版社,1997
[5] 李朝青编著:《PC机与单片机数据通信技术》,北京航空航天大学出版社,2000
[6] 王二乾等:《TTL集成电路设计和应用手册》,中国计算机技术服务公司,1984
[7] 颜欧:《单片微机实现远程数据传输的数据帧编码方法》,光电对抗与无源干扰,2002年第1期
[8] 公茂法、马宝甫、孙晨,《单片机人机接口实例集》,北京航空航天大学出版社,1998
[9] 董渭清、王换招,《高档微机接口技术及应用》,西安交通大学出版社,1995
[10] 陈建铎,《32位微型计算机原理与接口技术》,高等教育出版社,1998
[11] 史新福,金玉,冯萍,《32位微型计算机原理接口技术及其应用》,西北工业大学出版社,2000

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top