微机原理课程设计——发光二极管显示设计电路设计

上传人:新** 文档编号:564876931 上传时间:2022-10-04 格式:DOC 页数:13 大小:556KB
返回 下载 相关 举报
微机原理课程设计——发光二极管显示设计电路设计_第1页
第1页 / 共13页
微机原理课程设计——发光二极管显示设计电路设计_第2页
第2页 / 共13页
微机原理课程设计——发光二极管显示设计电路设计_第3页
第3页 / 共13页
微机原理课程设计——发光二极管显示设计电路设计_第4页
第4页 / 共13页
微机原理课程设计——发光二极管显示设计电路设计_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《微机原理课程设计——发光二极管显示设计电路设计》由会员分享,可在线阅读,更多相关《微机原理课程设计——发光二极管显示设计电路设计(13页珍藏版)》请在金锄头文库上搜索。

1、微机原理课程设计一、设计题目:设计内容:以8088cpu为核心设计一个发光二极管显示控制电路,该电路可对16个发光二极管的亮灭进行控制,并有一个具有8个按键的键盘。设计要求:画出电路原理图,说明工作原理,编写当任意按键按下后,相应发光二极管发光的程序。二、主要元件:RESET:复位输入线,当该输入端处于高电平时,所有内部寄存器(包括控制寄存器)均被清除,所有I/O口均被置成输入方式。CS:片选信号线,当这个输入引脚为低电平时,表示芯片被选中,允许8255与CPU进行通讯。 RD:读信号线,当这个输入引脚为低电平时,允许8255通过数据总线向CPU发送数据或状态信息,即CPU从8255读取信息或

2、数据。WR:写入信号,当这个输入引脚为低电平时,允许CPU将数据或控制字写入8255。D0D7:三态双向数据总线,8255与CPU数据传送的通道,当CPU 执行输入输出指令时,通过它实现位数据的读/写操作,控制字和状态信息也通过数据总线传送。PA0PA7:端口A输入输出线,一个位的数据输出锁存器/缓冲器, 一个位的数据输入锁存器。PB0PB7:端口B输入输出线,一个位的I/O锁存器, 一个位的输入输出缓冲器。PC0PC7:端口C输入输出线,一个位的数据输出锁存器/缓冲器, 一个位的数据输入缓冲器。端口C可以通过工作方式设定而分成个位的端口, 每个位的端口包含一个位的锁存器,分别与端口A和端口B

3、配合使用,可作为控制信号输入或状态信号输入端口。A1、A0:端口地址总线,8255中有端口A、B、C和一个内部控制字寄存器,共个端口,由A0、A1输入地址信号来寻址2.8088cpu总线形成原理:1979年,INTEL公司推出了8088芯片,它仍旧是属于16位微处理器,内含29000个晶体管,时钟频率为4.77MHz,地址总线为20位,可使用1MB内存。8088内部数据总线都是16位,外部数据总线是8位,而它的兄弟8086是16位。在最大模式下,需要用外加电路来对CPU发出的控制信号进行变换和组合,以得到对存储器和I/O端口的读/写信号和对锁存器8282及对总线收发器8286的控制信号。 当系

4、统总线形成后,内存及各种接口就可以直接与系统总线相连接,从而构成所需微机系统。系统总线的作用及它们相互之间的定时关系: 地址线:A0A19。 数据信号线:D0D7。 控制信号线:MEMR MEMW IOR IOW 。三、设计思路:1.硬件设计:本设计题目要求输入数据由C端口由八个键盘输入,A和B端口接LED灯作为输出,这一要求可以通过编程实现。输入设备使用8个按键输入,按键的一头接高电平,另一头接地,通过按键控制高低电平来输入到A和B端口的相应的位置,8个按键分别接至8255A的PC0PC7的8个引脚上,PA口和PB口接16个发光二极管,当C端口输入低电平时,通过编程实现将低电平送到A和B端口

5、,驱动发光二极管发光。由于该设计的CPU总线扩展,8088工作在最大模式下,处于多处理器系统。其中8255A 8位数据线D7D0接至8286引脚提供数据信号传输;8255A 第7引脚GND,8255A第5引脚(RD),第36引脚(WR)分别接至8088最大模式下总线的第B14引脚(IOR)和第B13(IOW)。此外8088最大模式下总线的A15A2经过译码电路为8255A提供片选信号,配合D0D7数据线对8255A进行控制。8088最大模式下总线的A1,A0分别接至8255A的,A0,A1引脚。8255A工作需+5V电压,因此8255A第26引脚(VCC)。四 硬件设计框图1总线与8255A端

6、口连接部分: 3发光二极管部分限流电阻R=2874最大模式下的8088总线4.实验电路连接图: 五 .软件方面: 流程图: 8255端口地址:寄 存 器编 址 A口0FF00H B口 0FF01H C口 0FF02H 控制寄存器 0FF03H8255A作为一个可编程器件,其绝大部分功能需要程序的支持,本设计亦不例外。要对8255A编程首先了解它的控制字和工作方式。根据题目要求A端口作为输出端口,B端口作为输出端口,C端口输入端口。本设计A,B,C端口工作在方式O下即基本输入输出方式既可满足要求,因此,控制字可为10001001,用十六进制表示为89H,假设在该系统中8255A的各端口地址为:A

7、:ff00H B:ff01H C:ff02H控制口:ff03H 则相应的汇编程序为;STACK SEGMENT ;定义堆栈段 DW 64 DUP(?)STACK ENDSCODE SEGMENT ;定义代码段ASSUME CS: CODE,SS:STACKSTART: MOV AX , STACKMOV SS , AXMOV DX , 0FF03H ;8255初始化 MOV AL , 89H OUT DX , AL MOV DX , 0FF02H ;读C口按键信息WAIT: IN AL, DX CMP AL, 0FFH ;判断有无按键按下 JZ WAIT ;无按键按下继续等待MOV BL, A

8、L ;AA: MOV DX, 0FF00H OUT DX, AL ;A口亮一灯 MOV BX, 0A00H ;延时程序开始 CC: MOV CX, 1000HNEXT: LOOP NEXT DEC BX JNZ CC ;延时程序结束 MOV BL ,AL ;判断此时是否又有按键按下MOV DX, 0FF03H IN AL, DX CMP AL, 0FFH JNZ AA ;判断结束 ROL AL , 1 JC AABB: MOV DX, 0FF01H OUT DX, BL ;B口亮灯MOV BX, 0A00H ;延时开始CC: MOV CX, 1000HNEXT: LOOP NEXT DEC B

9、X JNZ CC ;延时结束MOV BL, AL ;判断此时是否有按键按下 MOV DX, 0FF03H IN AL, DX CMP AL, 0FFH JNZ AA ;判断结束MOV AL , BLROL AL 1JC BBJMP AAMOV AH,4CHINT 21HCODE ENDSEND START六、设计心得:这次设计任务不仅要求我们掌握硬件和软件方面的运用,还要求我们对整个设计思路有紧密的考虑,这使我们的理论和实践能力都有了一定程度的提升。在设计过程中,我们对8255的控制字,初始化和工作方式有了更深的了解。本设计还要求我们掌握的一些实际应用功能,因为此设计的另一个重要部分是8255A与总线的连接问题。在整个设计过程中,我们成员们精诚配合,查阅了一些相关的资料,得到了老师和同学们的帮助,无论在理论和实践能力都得到了很大锻炼。但仍会有设计不当之处。还请老师指正。七、参考文件1、冯博琴主编,微型计算机原理与接口技术,第一版,北京:清华大学出版社,20052、 王远主编,模拟电子技术,第二版,北京:机械工业出版社,19993、 阎石主编,数字电子技术基础,第四版,北京:高等教育出版社,19984、尹建华主编,微型计算机原理与接口技术,第二版,北京:高等教育出版社,2008

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 商业计划书

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号