微机原理课程设计交通灯讲解.docx
- 文档编号:5206396
- 上传时间:2022-12-13
- 格式:DOCX
- 页数:20
- 大小:385.62KB
微机原理课程设计交通灯讲解.docx
《微机原理课程设计交通灯讲解.docx》由会员分享,可在线阅读,更多相关《微机原理课程设计交通灯讲解.docx(20页珍藏版)》请在冰豆网上搜索。
微机原理课程设计交通灯讲解
课程设计任务书
专业
自动化
班级
姓名
设计起止日期
2013.12.16~2013.12.20
设计题目:
交通灯控制设计
设计任务(主要技术参数):
交通灯控制系统
利用8086、8253定时器、8255等接口,设计一电路,模拟十字路口交通灯控制,并应用所设计的程序使连接好的线路工作正常。
指导教师评语:
成绩:
签字:
年月日
课程设计说明书NO.1
1引言
在车辆日渐增多的今天,人们也越来越关注交通问题,而交通灯在安全行车过程中无疑起着十分重要的作用。
现在交通灯一般都设在十字路口,用红、绿、黄三种颜色的指示灯和一个倒计时的显示计时器来控制行车, 对一般情况下的安全行车、车辆分流发挥着作用, 但根据实际行车过程中出现的情况, 主要有如下几个缺点:
1、车道轮流放行时间相对固定, 不能根据实际情况中两个车道的车辆多少来设置改变通行时间;2、 没有考虑紧急车辆通过时, 两车道应采取的措施。
譬如, 有消防车通过执行紧急任务时, 两个车道的车都应停止, 让紧急车辆通过。
因此如何合理高效地利用交通灯指示交通情况,是一个亟需解决的问题。
交通灯是采用计算机通过编写汇编语言程序控制的。
红灯停,绿灯行的交通规则。
广泛用于十字路口,车站, 码头等公共场所,成为人们出行生活中不可少的必需品,由于计算机技术的成熟与广泛应用,使得交通灯的功能多样化,远远超过老式交通灯, 交通灯的数字化给人们生产生活带来了极大的方便,而且大大地扩展了交通灯的功能。
诸如闪烁警示、鸣笛警示,时间程序自动控制、倒计时显示,所有这些,都是以计算机为基础的。
还可以根据主、次干道的交通状况的不同任意设置各自的不同的通行时间。
或者给红绿色盲声音警示的人性化设计。
现在的交通灯系统很多都增加了智能控制环节,比如对闯红灯的车辆进行拍照。
当某方向红灯亮时,此时相应的传感器开始工作,当有车辆通过时,照相机就把车辆拍下。
要将交通灯系统产品化,应该根据客户不同的需求进行不同的设计,应该在程序中增加一些可以人为改变的参数,以便客户根据不同的需要随时调节交通灯。
因此,研究交通灯及扩大其应用,有着非常现实的意义。
2设计方案论证
2.1设计原理
本次课程设计的内容为利用8086、8253定时器、8255等接口,实现控制十二个二极管亮灭的过程。
课程设计说明书NO.2
2.2设计环境及设备
PC机一台
8255并口:
用做接口芯片。
LED:
共阳12个LED灯。
2.3交通灯工作原理
(1) 初始状态都是红灯,延时1秒。
(2)南北绿灯,东西红灯,延时5秒。
(3)南北绿灯闪3次转黄灯,东西红灯。
(4)南北红灯,东西绿灯,延时5秒。
(5)东西绿灯闪3次转黄灯,南北红灯。
3系统硬件设计
3.18086简介
Intel8086是16位的微处理器(其内部总线为16位,外部总线为8位,故称为准16位微处理器),它采用HMOS工艺40条引脚封装。
8086工作时使用5V电源,时钟频率5MHz(8086-1为10MHz,8086-2为8MHz)它有20根地址线,故可寻址的内存空间为1MB【9】。
另外,Intel公司同期推出的Intel8088微处理器一种准16位微处理器,其内部寄存器,内部操作等均按16位处理器设计,与Intel8088微处理器基本上相同,不同的是其对外的数据线只有8位,目的是为了方便地与8位I/O接口芯片相兼容。
如图所示是8086CPU的内部功能结构。
从功能上来看,8086CPU可分为两部分,即总线接口部件BIU(Bus Interface Unit)和执行部件EU(Execution Unit)
课程设计说明书NO.3
图18086CPU的内部功能结构图
(1)8086的主要特性
Intel8086/8088CPU是Intel公司推出的高性能的微处理器,具体如下主要特性:
(a)8086CPU数据总线为16位,8088CUP数据总线为8位。
(b)地址总线都是20位,低16位用于数据总线复用,可直接寻址为1MB的存储空间。
(c)有16位的端口地址,可以寻址64KB的I/O端口。
(d)有99条基本指令,指令功能强大。
(e)有9种基本寻址方式。
(f)可以处理内部和外部中断,外部中断源多达256个。
(g)兼容性好,8086、8085在源程序一级兼容。
(h)8086/8088标准主频为5MHz,8086/8088-2主频为8MH【3】。
(i)支持单处理器或多处理器系统工作。
课程设计说明书NO.4
(2)8086CPU寄存器结构
8086CPU中有14个16位的寄存器,其中有4个16位的通用寄存器,2个16位指针寄存器,2个16位变址寄存器,1个16位指令指针及1个16位标志寄存器【8】。
通用寄存器包括累加器AX,基址寄存器BX,计数寄存器CX,数据寄存器DX四个寄存器,位于CPU的EU中,每个数据寄存器可存放16位操作数,也可拆成两个8位寄存器,用来存放8位操作数。
指针和变址寄存器包括:
堆栈指针SP、基址指针BP、源变址寄存器SI、和目的变址寄存器DI四个16位寄存器,可以来存放数据和地址。
段寄存器包括:
代码段寄存器CS,数据段寄存器DS,附加段寄存器ES,堆栈段寄存器SS【4】。
3.28255简介
8255是Intel公司生产的可编程并行I/O接口芯片,有3个8位并行I/O口。
具有3个通道3种工作方式的可编程并行接口芯片(40引脚)。
其各口功能可由软件选择,使用灵活,通用性强。
8255可作为单片机与多种外设连接时的中间接口电路。
8255作为主机与外设的连接芯片,必须提供与主机相连的3个总线接口,即数据线、地址线、控制线接口。
同时必须具有与外设连接的接口A、B、C口。
由于8255可编程,所以必须具有逻辑控制部分,因而8255内部结构分为3个部分:
与CPU连接部分、与外设连接部分、控制部分。
它具有A、B、C三个并行接口,并行接口是以数据的字节为单位与I/O设备或被控制对象之间传递信息。
CPU和接口之间的数据传送总是并行的,即可以同时传递8位、16位、32位等。
用+5V单电源供电,能在以下三种方式下工作:
方式0--基本输入/出方式、方式1--选通输入/出方式、方式2--双向选通工作方式【3】。
8255的内部结构及引脚图如图所示。
课程设计说明书NO.5
图48255内部结构及引脚
图8255内部结构及引脚图
具体的各引脚功能如下【3】:
D0~D7为双向数据信号线,用来传送数据和控制字。
RD为读信号线,与其它信号线一起实现对8255接口的读操作通常接系统总线的IOR信号。
WR为写信号线,与其它信号一起实现对8255的写操作,通常接系统总线的IOW。
课程设计说明书NO.6
CS为片选信号线,当它为低电平(有效)时,才能选中该8255芯片,也才能对8255进行操作【6】。
A0,A1为口地址选择信号线。
8255内部有3个口;A口,B口,C口,还有一个控
制寄存器,它们可由程序寻址。
A0,A1上的不同编码可分别寻址上述3个口和一个控制寄存器,具体规定如表1所示。
表18255的寻址方式
A1
A0
选择
0
0
A口
0
1
B口
1
0
C口
1
1
控制寄存器
通常A0,A1分别接系统总线A0和A1,它们与CS一起来决定8255的接口地址。
RESET为复位输入信号。
此端上的高电平可使8255复位。
复位后,8255的A口,B口,C口均被定为输入状态。
PA0~PA7为A口的8条输入输出信号线。
PB0~PB7为B口的8条输入输出信号线。
PC0~PC7,8条线根据其工作方式可作为数据的输入或输出线,也可以用作控制信号的输出或状态信号的输入线【7】。
8255工作方式控制字和C口按位置位/复位控制字格式如图3所示【4】。
课程设计说明书NO.7
图
图2置位/复位控制字格式
8255的寻址:
8255占外设编址的4个地址,即A口,B口,C口和控制寄存器各占一个外设接口地址。
对同一个地址分别可以进行读写操作。
例如,读A口可将A口的数据读出;写A口可将CPU的数据写入A口并输出【8】。
如表2为方式0下系统的输入输出组合,其中分为A,B组,A组分为A口和C口,B组分为B口和C口。
8255的工作方式主要有工作方式0、工作方式1和工作方式2。
其中端口A
可以工作在三种方式中的任一种;端口B只能工作在方式0和方式1;端口C通常作为控制信号使用,配合端口A和端口B的工作。
在交通灯控制的设计中只用到了工作方式0。
课程设计说明书NO.8
表2方式0下,8255的16种输入输出组合
A组
B组
A口(PA0---PA7)
C口(PC4---PC7)
B口(PB0---PB7)
C口(PC0---PC3)
入
入
入
入
入
入
入
出
入
入
出
入
入
入
出
出
入
出
入
入
入
出
入
出
入
出
出
入
入
出
出
出
出
入
入
入
出
入
入
出
出
入
出
入
出
入
出
出
出
出
入
入
出
出
入
出
出
出
出
入
出
出
出
出
工作方式0,又称为基本工作方式。
在此方式下,可分别将A口的8条线,B口的8条线,C口高4位对应的4条线和C口的低四位对应的四条线定义为输入或输出。
故它们的输入输出共有16种不同的组合。
工作方式1,既选通输入输出方式。
在这种方式下,A口和B口仍作为数据的输出口和输入口,同时还要利用C口的某些位作为控制和状态信号。
工作方式2,又称双向输入输出方式。
这种方式只有8255的口A才有。
在A口工作于双向输入输出方式时,要利用C口的5条线才能实现。
因此,B口只能工作在工作方式0或工作方式1,而C口剩下的3条线可以作为输入输出线使用或B口方式1下的控制线。
课程设计说明书NO.9
3.28253简介
intel8253是NMOS工艺制成的可编程计数器/定时器,有几种芯片型号,外形引脚及功能都是兼容的,只是工作的最高计数速率有所差异。
图38253内部结构及引脚图
8253内部可分为6个模块,每个模块的功能如下:
(1)数据总线缓冲器及数据总线D0~D7(如上图所示)
(2)读/写控制逻辑及控制引脚
(3)控制字寄存器
在初始化编程时,CPU写入方式控制字到控制字寄存器中,用以选择计数通道及其相应的工作方式。
8253的工作方式也是有控制字来决定。
(4)计数通道0、计数通道1、计数通道2
3个计数通道内部结构完全相同。
每个计数通道都由一个16位计数初值寄存器、一个16位减法计数器和一个16位计数值锁存器组成
计数初值存于预置寄存器,在计数过程中,减法计数器的值不断递减,而预置寄存器中的预置不变。
输出锁存器用于写入锁存命令时,锁定当前计数值。
课程设计说明书NO.10
计数器的3个引脚说明:
1.CLK时钟输入信号
在计数过程中,此引脚上每输入一个时钟信号(下降沿),计数器的计数值减
2.GATE门控输入信号控制计数器工作,可分成电平控制和上升沿控制两种类型。
3.OUT计数器输出信号当一次计数过程结束(计数值减为0),OUT引脚上将产生一个输出信号。
8253有6种工作方式,由方式控制字确定。
区分这6种工作方式的主要标志由3点:
一是输出波形不同;二是启动计数器的触发方式不同;三是计数过程中门控信号GATE对计数器操作的控制不同。
图48253控制字
课程设计说明书NO.11
1.方式0--低电平输出(GATE信号上升沿继续
2.方式1--低电平输出(GATE信号上升沿重新计数)
3.方式2--周期性脉冲输出
4.方式3--周期性方波输出OUT输出低电平,装入计数值n后,OUT立即跳变为高电平。
如果当前GATE为高电平,则立即开始减“1”计数,OUT保持为高电平,若n为偶数,则当计数值减到n/2时,OUT跳变为低电平,一直保持到计数值为“0”,系统才重新置入计数值n,实现循环计数。
这时OUT端输出周期为n×CLK周期,占空比为1:
1的方波序列:
若n为奇数,则OUT端输出周期为n×CLK周期,占空比(n+1)/2:
(n-1)/2的近似方波序列。
5.方式4--单次负脉冲输出(软件触发)
6.方式5--单次负脉冲输出(硬件触发)每种工作方式的设置过程类似:
⑴设定工作方式
⑵设定计数初值
〔⑶硬件启动〕
⑷计数初值进入减1计数器
⑸每输入一个时钟计数器减1的计数过程
⑹计数过程结束
3.3八个LED显示器及其接口
十二个LED小灯为共阳极,一端接高电平,一端接8255端口,当输出为0时,小灯才会亮。
LED技术参数说明:
发光二极管的压降一般为1.5-2.0V,即工作电压要求不高,而且构造简单,其工作电流一般取10-20mA为宜。
3.5模拟8086系统硬件接线图
课程设计说明书NO.12
图5系统硬件接线图
课程设计说明书NO.13
4交通灯软件设计
4.1主程序设计
图6系统硬件接线图
4.2软件编程实现
CS8253_T0EQU00010H
CS8253_CTLEQU01810H
CS8255_PAEQU00018H
CS8255_PBEQU00218H
CS8255_CTLEQU00618H
CODESEGMENT
ASSUMECS:
CODE,DS:
CODE
START:
课程设计说明书NO.14
PUSHCS
POPDS
CLI;关中断
MOVDX,CS8253_CTL;定时器0工作在方式3
MOVAL,00010000B
OUTDX,AL
MOVDX,CS8253_T0
MOVAL,01H;频率12hz,计时为1s
OUTDX,AL
MOVAL,10000000B
MOVDX,CS8255_CON
OUTDX,AL
CALLSTATUS0;初始状态(都是红灯)
MLOOP:
CALLSTATUS1;南北绿灯,东西红灯
CALLSTATUS2;南北绿灯闪转黄灯,东西红灯
CALLSTATUS3;南北红灯,东西绿灯
CALLSTATUS4;南北红灯,东西绿灯闪转黄灯
JMPMLOOP
STATUS0:
MOVAL,0F0H;南北红灯,东西红灯
MOVDX,CS8255_PA
OUTDX,AL
MOVBL,10
STI;开中断
课程设计说明书NO.15
LOOPA:
CMPCL,1;判断是否计时为1s
JNELOOPA;不到一s则回去
MOVCL,0
CLI;关中断
RET
STATUS1:
MOVAL,05AH;南北红灯,东西红灯
MOVDX,CS8255_PA
OUTDX,AL
MOVBL,50
STI;开中断
LOOPB:
CMPCL,5;判断是否计时为5s
JNELOOPB;不到一s则回去
MOVCL,0
CLI;关中断;延时5秒
RET
STATUS2:
MOVCX,3;绿灯闪3次
FLASH:
MOVAL,050H;南北红灯,东西红灯
MOVDX,CS8255_PA
OUTDX,AL
MOVBL,3
CALLDELAY;延时0.3秒
MOVAL,05AH;南北红灯,东西红灯
MOVDX,CS8255_PA
OUTDX,AL
课程设计说明书NO.16
MOVBL,3
CALLDELAY;延时0.3秒
LOOPFLASH
MOVAL,0FAH;南北红灯,东西红灯
MOVDX,CS8255_PA
OUTDX,AL
MOVBL,10
STI;开中断
LOOPC:
CMPCL,1;判断是否计时为1s
JNELOOPC;不到一s则回去
MOVCL,0
CLI;关中断;延时1秒
RET
STATUS3:
MOVAL,0A5H;南北红灯,东西绿灯
MOVDX,CS8255_PA
OUTDX,AL
MOVBL,50
STI;开中断
LOOPD:
CMPCL,5;判断是否计时为5s
JNELOOPD;不到一s则回去
MOVCL,0
CLI;关中断;延时5秒
RET
STATUS4:
;南北红灯,东西绿灯闪转黄灯
MOVCX,3;绿灯闪3次
课程设计说明书NO.17
FLASH1:
MOVAL,0A0H
MOVDX,CS8255_PA
OUTDX,AL
MOVBL,3
CALLDELAY;延时0.3秒
MOVAL,0A5H
MOVDX,CS8255_PA
OUTDX,AL
MOVBL,3
CALLDELAY;延时0.3秒
LOOPFLASH1
MOVAL,0F5H;南北红灯,东西黄灯
MOVDX,CS8255_PA
OUTDX,AL
MOVBL,10
STI;开中断
LOOPE:
CMPCL,1;判断是否计时为1s
JNELOOPE;不到一s则回去
MOVCL,0
CLI;关中断;延时1秒
RET
DELAYPROCNEAR
PUSHCX
DL1:
MOVCX,8000H
DL2:
LOOPDL2
课程设计说明书NO.18
DECBL
CMPBL,0JNEDL1
POPCX
RET
DELAYENDP
IRQ2:
CLI
MOVAL,BL
NOTAL
MOVBL,AL
ADDCL
STI
IRET
CODEENDS
ENDSTART
7设计体会
一周的微机课程设计很快就结束了,在课程设计的这段时间里,我不仅学到了许多新的知识,而且加深了我对以前学习的理论知识的掌握。
以前我们学的东西仅限于课本,对实实在在的应用还比较模糊,这次课程设计有利于同学们学习目的的明确性和主动性。
通过这次课程设计,我们知道了哪些东西是应该确实掌握的,在学校里,没有实实在在的实习,我们总以为学的东西没太多用,当我们在课程设计过程中了解到我们学的东西是如此重要时,我们学习的积极性有了,目的性提高了。
总之,经过这次课程设计,我对今后的专业学习所要注意的事项有了更深刻地了解,这对我以后的学习必将产生深远的影响。
课程设计说明书NO.19
参考文献
[1] 齐志儒、高福祥.汇编语言程序设计.沈阳:
东北大学出版,2008.2:
13-28
[2] 刘均、周苏、金海荣.汇编语言程序设计实验教程.北京:
科学出版社,2011.4:
286-318
[3] 周佩玲、彭虎、傅忠谦.微机原理与接口技术.北京:
电子工业出版社,2004.4:
213-258
[4] 方立友.微机原理与汇编语言实用教程.北京:
清华大学出版社,2008.5:
159-189
[5] 凌志浩.微机原理与接口技术.上海:
华东理工大学出版社,2006.3:
223-228
[6] 彭虎、周佩玲、傅忠谦.《微机原理里与接口技术》(第2版) [M] 北京:
电子工业出版社2007.1:
133-286
[7] 顾晖等.微机原理与接口技术-基于8086和Proteus仿真[M].电子工业出版社,2005.2:
187-258
[8]戴梅萼等.微型计算机技术及应用[M].北京:
清华大学出版社,2012.1:
12-54
[9]沈美明等.IBM-PC汇编语言程序设计 [M].北京:
清华大学出版社,2006.4:
113-228
[10]彭虎等. 微机原理与接口技术(第2版) [M].电子工业出版社,2003.1:
223-238
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 课程设计 交通灯 讲解