8086交通灯微机课程设计报告书
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
【摘要】
运用了8086 CPU芯片以及8255A芯片、8253芯片和数码管等辅助硬件电路,进行了数码管倒计时的设计。进行了软件设计并编写了源程序。交通在人们的日常生活中占有重要的地位,随着人们社会活动的日益频繁,这点更是体现的淋漓尽致。交通信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。本系统采用8086为中心器件来设计交通灯控制器,系统实用性强、操作简单、扩展强。本设计就是采用8086最小方式下在Protues7.8SP2软件下模拟十字路口交通灯的各种状态显示以及倒计时显示时间。
本设计系统由8255AI/O口扩展系统、交通灯状态显示系统、LED数码显示系统等几大部分组成。系统除基本的交通灯功能外,还具有倒计时、紧急情况处理等功能,较好的模拟实现了十字路口可能出现的状况。
本系统采用8086汇编语言编写,主要编写了主程序,LED数码管显示程序等。总体上完成了软件的编写。
关键词:带倒计时功能的交通灯;8255A;8086微机系统
目录
一、概述
1.1 课程设计的目的 (3)
1.2课程设计的要求 (3)
二、总体设计方案及说明
2.1 系统总体设计方案 (4)
2.2系统工作框图 (4)
三、系统硬件电路设计
3.1I n t e l8086微处理器的简介 (5)
3.2 8255A芯片的工作原理 (7)
3.3多位数码管的工作原理 (8)
3.474L S273芯片简介 (10)
3.5系统电路图设计········································1 1
3.5.1.系统总电路图设计································1 1
3.5.2.8086最小系统原理图设计 (12)
四、系统软件部分设计
4.1 系统流程图 (14)
4.2系统软件源程序 (15)
4.2.3汇编源程序及说明 (16)
五、总结
5.1系统调试 (18)
5.2心得与体会 (20)
六、参考文献 (22)
一、概述
通过本课程设计,使学生掌握控制系统设计的一般步骤,掌握系统总体控制方案的设计方法。使学生进一步掌握微型计算机应用系统的硬、软件开发方法,输入/输出(I/O)接口技术,应用程序设计技术,并能结合专业设计简单实用的微型计算机应用系统。针对课堂重点讲授容使学生加深对微型计算机硬件原理的理解及提高汇编语言程序设计的能力,为以后的毕业设计搭建了微机系统应用平台,提高学生的开发创新能力。
二、总体设计方案与说明
2.1 系统总体设计方案
本设计是基于Windows环境下,在其中进行硬件电路的的设计,汇编语言源程序的编写以及以上两部分工作完成后的软件系统的调试。本设计的处理控制系统由Intel 8086微处理器在最小模式下组成的单处理器系统构成,用来进行对外围硬件电路进行信息采集、数据处理和控制。
2.2系统工作框图
本课程设计使用8086CPU控制8255A和74273锁存器分别控制LED数码管和LED交通灯。
第一片8255A被选择后,从数据总线上写入数据到输出端,把LED数码管的待显示的字符对应是16进制数,即要7段数码管的对应位的LED置高电平(选择的是共阴极数码管)就可以显示对应的段码。
第二片8255A被选择后,从数据总线上写入的数据是指定哪一位数码管显示字符,低电平有效。
同时74273锁存器也要按程序设定点亮LED交通灯。
3.5系统电路图设计
3.5.1系统总电路图如下图所示:
3.5.2.8086最小系统原理图如下所示:
8086最小系统由Intel 8086微处理器、74273 TTL带公共时钟复位八D触发器、以及74154 TTL 4线—16线译码器等组成。
8086有20位地址线,其中高4位A19-A16与状态线S6-S3分时复用,低16位AD15-AD0与数据线分时复用。在总线周期的T1时将地址送出后,就必须用锁存器将它们锁存起来,以便在T2及以后搞死位地址线改为状态输出,低16位地址线该做数据线使用。另
外,表明八位数据线是否起作用的数据总线允许信号是与状态线S7分时复用的,故也需要锁存。21条线需采用3片8位地址锁存器,这里采用74273。与外围硬件电路的连接的I/O部分由4线-16线译码器74154组成,用来分配I/O硬件地址。
四、系统软件部分设计
.MODEL SMALL
.8086
.STACK
.CODE
.STARTUP
START:MOV DX,0406H
MOV AL,80H
OUT DX,AL
MOV DX,0606H
MOV AL,80H
OUT DX,AL
MOV AX,ALL_LIGHT ;数据的地址0
MOV DX,0200H
MOV DX,AX
AGAIN: MOV SI,OFFSET SITUATION;取得定义数据段的偏移地址EA MOV DX,0200H ;273地址
NEXT: MOV AX,[SI]
OUT DX,AX ;数据输出到交通LED灯上
PUSH SI
LEA SI,LED
LEA DI,TABLEONE
;DUAN0:
MOV AX,32 ;赋初值32
MOV CX,AX
PUSH CX
AB: CALL DISPLAY
POP CX
DEC CX
PUSH CX
MOV AX,CX