微机原理交通信号灯控制系统设计报告_微机原理课程设计报告

其他范文 时间:2020-02-28 10:26:51 收藏本文下载本文
【www.daodoc.com - 其他范文】

微机原理交通信号灯控制系统设计报告由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“微机原理课程设计报告”。

HEFEI UNIVERSITY

微机原理设计报告

目 交通信号灯的控制 系

别 电子信息与电气工程系

班 级 11级电子信息工程(2)班 姓

名 钟文俊

学 号 1105012012 指导 老师 丁健

完成 时间 2013年5月28日

交通信号灯控制系统

摘要:本文介绍了以8086微处理器为核心.利用可编程并行接口芯片8255A的软硬件功能,实现对交通灯控制,主要是模拟十字路口的红绿灯,介绍了交通灯控制器的原理以及电路接线。在设计中所用到的编程语言是汇编语言,延时采用的是软件延时(即通过汇编指令)。关键词:8086微处理器;交通灯;8255A

一、课程设计任务

1.1 设计目标

利用ZY15MicInt12BB微机原理及接口实验箱上的8086微处理器模块、并行接口8255A模块,地址译码单元以及0—1LED灯显示等模块,根据所学的微机原理知识,按照实际交通情况设定一种交通灯规则,设计一个简单的交通信号灯控制系统。

1.2 设计要求

在一个十字路口,东西方向和南北方向各有两组交通指示灯,每组有红、黄绿三个灯。东西方向同色灯连在一起,南北方向同色灯连在一起。对各组的交通灯进行控制,以保证车辆在各道上通畅运行。

两组组的交通灯工作过程为:

1.南北方向亮绿灯允许通行,东西方向亮红灯禁止通行 2.当延时25秒后,南北方向的黄灯同时变亮,且延时5秒。3.延时后,东西方向转为绿灯,南北方向转为红灯,且延时25秒。

4.25秒后,转为东西方向黄灯亮,延时5秒后,回到第一步,以次重复进行,不断循环。5.当遇到道路障通,或紧急情况时,A、B道全为红灯。

二、原理说明与硬件设计

2.1原理说明 在本次课程设计当中,采用的是以8086微处理器为核心,以8255A芯片作为接口芯片,运用软件定时(即通过汇编指令)控制LDE灯(即交通灯)按照设定的交通规则显示。

2.2 8086简介

8086微处理器是Intel系列的第三代微处理器,拥有四个16位的通用寄存器,也能够当作八个8位寄存器来存取,以及四个16位索引寄存器,其主频为5MHz/10MHz,地址总线宽度为20位,可寻址的内存空间打1MB。

8086微处理器的内部功能结构由两个独立的工作部件——执行部件EU(Execution Unit)和总线接口部件BIU(Bus Interface Unit)构成。其中,(1)BIU和EU可以并行工作,提高CPU效率。BIU监视着指令队列。当指令队列中有2个空字节时,就自动把指令取到队列中。(2)EU执行指令时,从指令队列头部取指令,然后执行。如需访问存储器,则EU向BIU发出请求,由BIU访问存储器。(3)在执行转移、调用、返回指令时,需改变队列中的指令,要等新指令装入

队列中后,EU才继续执行指令。8086CPU的内部功能结构框图如图2-1所示。

图2-18086CPU的内部功能结构框图

8086微处理器采用40引脚的DIP封装,其引脚图如图2-2所示。8086 CPU到底可以工作在最大模式或最小模式两种工作模式下,这完全由硬件决定。处于不同工作模式时,其部分引脚的功能是不同的。

图2-2 8086的引脚

(1)两种工作方式下功能相同的引脚

MM/MX:最小/最大模式输入控制信号。引脚用来设置8086 CPU的工作模式。当为高电平(接+5V)时,CPU工作在最小模式;当为低电平(接地)时,CPU工作在最大模式。AD15 ~AD0:地址/数据总线,双向,三态。这是一组采用分时的方法传送地址或数据的复用引脚。根据不同时钟周期的要求,决定当前是传送要访问的存储单元或I/O端口的低16位地址,还是传送16位数据,或是处于高阻状态。

A19/S6~A16/S3:地址/状态信号,输出,三态。这是采用分时的方法传送地址或状态的复用引脚。

BHE(低)/S7:允许总线高8位数据传送/状态信号,输出,三态。为总线高8位数据允许信号,当低电平有效时,表明在高8位数据总线D15 ~D8上传送1个字节的数据。S7为设备的状态信号。

RD,WR:读信号和写信号,输出,三态,低电平有效。

READY:准备就绪信号,输入,高电平有效。READY信号用来实现CPU与存储器或I/O端口之间的时序匹配。

TEST:等待测试控制信号,输入,低电平有效。信号用来支持构成多处理器系统,实现8086 CPU与协处理器之间同步协调的功能,只有当CPU执行WAIT指令时才使用。NMI:非屏蔽中断请求信号,输入,高电平有效。

当NMI引脚上有一个上升沿有效的触发信号时,表明CPU内部或I/O设备提出了非屏蔽的中断请求,CPU会在结束当前所执行的指令后,立即响应中断请求。

RESET:复位信号,输入,高电平有效。

CLK:时钟信号,输入。

VCC,GND:电源输入引脚和接地引脚。8086 CPU采用单一+5V电源供电。(2)CPU工作于最小模式时使用的引脚信号

当MM/MX引脚接高电平时,CPU工作于最小模式。此时,引脚信号24~31的含义及其功能如下。

M/IO:存储器、I/O端口选择控制信号。信号指明当前CPU是选择访问存储器还是访问I/O端口。为高电平时,访问存储器,表示当前要进行CPU与存储器之间的数据传送。为低电平时,访问I/O端口,表示当前要进行CPU与I/O端口之间的数据传送。

INTR:可屏蔽中断响应信号,输出,低电平有效。CPU通过信号对外设提出的可屏蔽中断请求做出响应。为低电平时,表示CPU已经响应外设的中断请求,即将执行中断服务程序。

ALE:地址锁存允许信号,输出,高电平有效。CPU利用ALE信号可以把AD15 ~AD0地址/数据、A19/S6~A16/S3地址/状态线上的地址信息锁存在地址锁存器中。DT/R:数据发送/接收信号,输出,三态。DT/信号用来控制数据传送的方向。DT/为高电平时,CPU发送数据到存储器或I/O端口;DT/为低电平时,CPU接收来自存储器或I/O端口的数据。

DEN:数据允许控制信号,输出,三态,低电平有效。信号用作总线收发器的选通控制信号。当为低电平时,表明CPU进行数据的读/写操作。

HOLD:总线保持请求信号,输入,高电平有效。

HLDA:总线保持响应信号,输出,高电平有效。

2.3 8255简介

本次设计灯的亮与灭以及闪烁是用8255的A口和B口控制的,工作在方式0,A口和B口均为输出。并行接口是以数据的字节为单位与I/O设备或被控制对象之间传递信息。CPU和接口之间的数据传送总是并行的,即可以同时传递8位、16位、32位等。8255可编程外围接口芯片是Intel公司生产的通用并行I/O接口芯片,它具有A、B、C三个并行接口,用+5V单电源供电,能在以下三种方式下工作:方式0--基本输入/出方式、方式1--选通输入/出方式、方式2--双向选通工作方式。8255的内部结构及引脚如图2-3所示,8255工作方式控制字和C口按位置位/复位控制字格式如图2-4所示。

图2-3 8255的内部结构及引脚

图2-4 8255工作方式控制字和C口按位置位/复位控制字格式

三、流程图及电路接线图

1、软件流程图如下:

图3-1软件流程图

2系统汇编源程序

系统采用汇编程序,利用延时子程序实现定时,具体程序如下:

PORT_A EQU

2A0H

;声明8255A口地址 PORT_B EQU

2A1H

;声明8255B口地址 PORT_C EQU

2A2H

;声明8255C口地址

CMD_PORT EQU

2A3H

;声明8255A控制字寄存器端口地址 PORT_CS EQU

2A3H CODE SEGMENT

ASSUME CS:CODE START:

MOV AL,10000001B

;方式控制字:B口为输出

MOV DX,2A3H

OUT DX,AL

;写方式控制字到8255A控制字寄存器端口 SHOW:

NLDH: MOV DX,PORT_B

MOV AL,00101000B

;状态1:南北方向亮绿灯东西方向亮红灯

OUT DX,AL

MOV BL,0

;BL清0 YS1:

CALL DELAY

INC BL

CMP BL,500

JNG YS1

NHDH : MOV DX,PORT_B

MOV AL,00011000B

OUT DX,AL;

MOV BL,0 YS2:

CALL DELAY

INC

BL

CMP BL,100

JNG YS2

NHDL:

MOV DX,PORT_B

MOV AL,01000100B

OUT DX,AL

MOV BL,0 YS3:

CALL DELAY

INC BL

CMP BL,500

JNG YS3

NHDH:

MOV DX,PORT_B

MOV AL,01000010B

OUT DX,AL

MOV BL,0 YS4:

CALL DELAY

INC BL

CMP BL,100

;延时25秒;(BL)++;比较

;(BL)

;状态4:南北方向亮红灯东西方向黄灯;延时5秒

JNG YS4

JMP SHOW DELAY PROC

;50ms延时子程序

PUSH BX

;保护现场

PUSH CX

MOV BL,5

NEXT: MOV CX,2801

;内循环次数(实现延时10 ms)W10MS: LOOP W10MS

;

DEC BL

;修改外循环计数值

JNZ NEXT

;BX不等于0则进行外循环

POP CX

;恢复现场

POP BX

RET

;退出子程序,返回主程序 DELAY ENDP

;结束过程 CODE ENDS END START

四、总结

通过此次课程设计,结合所学的《微机原理与接口技术》这门课程的知识,对其应用之一——交通灯控制器进行设计与实现。总体感觉收获比较多,因为可以将书本上的知识应用到实践当中。刚开始的时候,翻阅了一些资料,还是没有什么头绪,后来在几个同学的帮助下,经过多次的上机练习和调试终于找到了入口点,接下来的事情就相对的容易一些了。首先,把握整个的设计的大概的流程,然后再对每一个分快进行设计,最后进行调试。在设计的过程中,很重要的一点是要熟悉可编程并行通信接口芯片8255A的初始化及其端口的使用。此次课程设计感觉收获很多,比如,翻阅资料提高了自学能力,和同学一起讨论汲取别人的长处。希望老师能够引导学生应该如何去把握、分析课程设计的主题,找出突破点,让学生积极主动进行课程设计,以使学生更好地提高自学的能力。

参考文献:

[1] 洪永泉.微型计算机原理与接口技术[M].合肥:中科大出版社,2008 [2] 徐泽明.利用微机控制交通指示灯[J] .软件导刊,2007(5)[3] 项新建.微机交通灯控制系统[J].ASPT来源刊,1997(09)

下载微机原理交通信号灯控制系统设计报告word格式文档
下载微机原理交通信号灯控制系统设计报告.doc
将本文档下载到自己电脑,方便修改和收藏。
点此处下载文档

文档为doc格式

    热门文章
      整站推荐
        点击下载本文