交通灯设计.docx

上传人:b****5 文档编号:4666273 上传时间:2022-12-07 格式:DOCX 页数:12 大小:191.18KB
下载 相关 举报
交通灯设计.docx_第1页
第1页 / 共12页
交通灯设计.docx_第2页
第2页 / 共12页
交通灯设计.docx_第3页
第3页 / 共12页
交通灯设计.docx_第4页
第4页 / 共12页
交通灯设计.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

交通灯设计.docx

《交通灯设计.docx》由会员分享,可在线阅读,更多相关《交通灯设计.docx(12页珍藏版)》请在冰豆网上搜索。

交通灯设计.docx

交通灯设计

实验名称:

交通灯的设计

实验时间:

2010/12/26

小组合作:

是□否☑

小组成员:

1、实验目的:

分析实际的十字路口交通灯的亮灭过程,用实验箱上的8255实现交通灯的控制。

(红,黄,绿三色灯)

2、实验设备及材料:

微机原理和接口技术实验室的实验箱和电脑设备等。

3、理论依据:

此设计是通过并行接口芯片8255A和8086计算机的硬件连接,以及通过8253延时的方法,来实现十字路口交通灯的模拟控制。

如硬件连接图所示(在后),红灯(RLED),黄灯(YLEDD)和绿灯(GLED)分别接在8255的A,B,C口的低四位端口,PA0,PA1,PA2,PA3分别接1,2,3,4(南东北西)路口的红灯,B,C口类推。

8086工作在最小模式,低八位端口AD0~AD7接到8255和8253的D0~D7,AD8~AD15通过地址锁存器8282,接到三八译码器,译码后分别连到8255和8253的CS片选端。

8253的三个门控端接+5V,CLOCK0接由分频器产生的1MHZ的时钟脉冲,OUT0接到CLOCK1和CLOCK2,OUT1接到8086的AD18,8086通过检测此端口是否有高电平来判断是否30s定时到。

OUT2产生1MHZ方波通过或门和8255的B口共同控制黄灯的闪烁。

8255三个口全部工作在方式0既基本输入输出方式,红绿灯的转换由软件编程实现。

一、实验设计方案

4、实验方法步骤及注意事项:

设计思路

红,黄,绿灯可分别接在8255的A口,B口和C口上,灯的亮灭可直接由8086输出0,1控制。

设8253各口地址分别为:

设8253基地址即通道0地址为04A0H,通道1为04A2H,通道2为04A4H,命令控制口为04A6H。

黄灯闪烁的频率为1HZ,所以想到由8253产生一个1HZ的方波,8255控制或门打开的时间,在或门打开的时间内,8253将方波信号输入或门使黄灯闪烁。

由于计数值最大为65535,1MHZ/65536的值远大于2HZ,所以采用两个计数器级联的方式,8253通道0的clock0输入由分频器产生的1MHZ时钟脉冲,工作在方式3即方波发生器方式,理论设计输出周期为0.01s的方波。

1MHZ的时钟脉冲其重复周期为T=1/1MHZ=1

s,因此通道0的计数初值为10000=2710H。

由此方波分别作为clock1和clock2的输入时钟脉冲,所以通道1和通道2的输入时钟频率为100HZ,通道1作计数器工作在方式1,计数初值3000=BB8H既30s,计数到则输出一个高电平到8255的PA7口,8255将A口数据输入到8086,8086检测到高电平既完成30s定时。

通道2工作在方式3需输出一个1HZ的方波,通过一个或门和8086共同控制黄灯的闪烁,因此也是工作在方波发生器方式,其计数初值为100=64H,将黄灯的状态反馈到8055的端口PB7和PC7,同样输入到8086,8086通过两次检测端口状态可知黄灯的状态变化,计9次状态变化可完成5次闪烁。

三个通道的门控信号都未用,均接+5V即可。

硬件原理及电路图

由于8255A与8086CPU是以低八位数据线相连接的,所以应该是8255A的

线分别与8086CPU的

线相连,而将8086的

线作为选通信号。

如果是按8255A内部地址来看,则在图中它的地址是PA口地址即(CS+000H),PB口地址为(CS+001H),PC口地址为(CS+002H),

命令控制口地址为(CS+003H),其中,CS为8255片选信号

的首地址;若是按8086CPU地址来看,则8255A的地址是PA口地址即(CS+000H),PB口地址为(CS+002H),PC口地址为(CS+004H),命令控制口地址为(CS+006H)。

当CS=0288H,则PA口地址为0288H,PB口地址为028AH,PC口地址为028CH,命令控制口地址为028EH。

电路图如下所示:

程序流程图

程序清单

DATASEGMENT;设置数据段,以及端口地址分配

PORTAEQU218H

PORTBEQU219H

PORTCEQU21AH

PTCON8255EQU21BH

PORT0EQU238H

PORT1EQU239H

PORT2EQU240H

PTCON8253EQU241H

DATAENDS

CODESEGMENT

ASSUMEDS:

DATA,CS:

CODE

INIT:

MOVAX,DATA

MOVDS,AX

MOVDX,PTCON8253

MOVAL,36H

OUTDX,AL

MOVDX,PORT0

MOVAX,2710h

OUTDX,AL

MOVAL,AH

OUTDX,AL;通道0工作方式3周期0.01s

MOVDX,PTCON8253

MOVAL,72H

OUTDX,AL;通道1工作方式1

MOVDX,PTCON8253

MOVAL,96H

OUTDX,AL

MOVDX,PORT2

MOVAL,64H

OUTDX,AL;通道2工作方式3周期1s8253初始化完成

MOVDX,PTCON8255

MOVAL,80H

OUTDX,AL;8255初始化A,B,C口均工作在方式0

MOVDX,PORTA

MOVAL,0

OUTDX,AL

MOVDX,PORTB

MOVAL,0FH

OUTDX,AL

MOVDX,PORTC

MOVAL,0FH

OUTDX,AL;灯初始化完成

STA:

MOVDX,PORTA

MOVAL,0A0H

OUTDX,AL

MOVDX,PORTB

MOVAL,0F0H

OUTDX,AL

MOVDX,PORTC

MOVAL,50H

OUTDX,AL;南北绿灯亮,东西红灯亮

MOVDX,PORT1

MOVAX,11f8

OUTDX,AL

MOVAL,AH

OUTDX,AL;8253通道1赋值开始计时

SCAN1:

MOVAL,0

MOVDX,PTCON8255

MOVAL,90H

OUTDX,AL

MOVDX,PORTA

INAL,DX

ANDAL,0FH

CMPAL,1

JNZSCAN1;扫描PA7口

FLA1:

MOVDX,PTCON8255

MOVAL,80H

OUTDX,AL

MOVDX,PORTC

MOVAL,0F0H

OUTDX,AL

MOVDX,PORTB

MOVAL,50H

OUTDX,AL

MOVCX,0

TEST1:

MOVDX,PTCON8255;检测PB7

MOVAL,82H

OUTDX,AL

MOVDX,PORTB

INAL,DX

ANDAL,0FH

MOVAH,AL

MOVDX,PTCON8255

MOVAL,82H

OUTDX,AL

MOVDX,PORTB

INAL,DX

ANDAL,0FH

XORAL,AH

ADDCL,AL

CMPCL,7

JNZTEST1;闪烁4次

MOVDX,PTCON8255

MOVAL,80H

OUTDX,AL

MOVDX,PORTA

MOVAL,50H

OUTDX,AL

MOVDX,PORTB

MOVAL,0F0H

OUTDX,AL

MOVDX,PORTC

MOVAL,0A0H;南北红灯亮,东西绿灯亮

MOVDX,PORT1

MOVAX,11f8H

OUTDX,AL

MOVAL,AH

OUTDX,AL;8253通道1赋值开始计时

SCAN2:

MOVAL,0

MOVDX,PTCON8255

MOVAL,90H

OUTDX,AL

MOVDX,PORTA

INAL,DX

ANDAL,0FH

CMPAL,1

JNZSCAN2

FLA2:

MOVDX,PTCON8255

MOVAL,80H

OUTDX,AL

MOVDX,PORTC

MOVAL,0F0H

OUTDX,AL

MOVDX,PORTB

MOVAL,0A0H

OUTDX,AL

TEST2:

MOVDX,PTCON8255

MOVAL,88H

OUTDX,AL

MOVDX,PORTC

INAL,DX

ANDAL,0FH

MOVAH,AL

MOVDX,PTCON8255

MOVAL,88H

OUTDX,AL

MOVDX,PORTC

INAL,DX

ANDAL,0FH

XORAL,AH

ADDCL,AL

CMPCL,7

JNZTEST2;闪烁4次

CODEENDS

ENDSTA

连接实验箱电路,上机调试并对实验现象进行分析,完成实验报告。

5.实验数据处理方法:

计算或查阅相关资料

请教老师和同学

6.参考文献:

[1]杨立.微型计算机原理与接口技术.北京:

中国水利水电出版社,2005

[2]卜艳萍等.汇编语言程序设计教程.北京:

清华大学出版社,2007

[3]蔡启先等.汇编语言程序设计实验指导.北京:

清华大学出版社,2008

指导老师对实验设计方案的意见:

 

指导老师签名:

年月日

二、实验报告

1、实验目的、设备与材料、理论依据、实验方法步骤见实验设方案

2、实验现象、数据及结果

初始态为4个路口的红灯全亮。

之后,南北路口的绿灯亮,东西路口的红灯亮,南北路口方向通车。

延迟30秒后,南北路口的绿灯熄灭,而南北路口的黄灯开始闪烁(1HZ)。

闪烁5次后,南北路口的红灯亮,同时东西路口的绿灯亮,东西路口方向开始通车。

延迟30秒时间后,东西路口的绿灯熄灭,而黄灯开始闪烁。

闪烁5次后,再切换到南北路口方向。

之后,重复上述过程。

3、对实验现象、数据及观察结果的分析与讨论:

在上机调试中发现,由于此软件延时的时间均为估算时间,不是特别准确,对于交通要求特别高的地方不宜采用。

如果是放到一个大的交通灯系统中,会影响到各个交通灯的运行时间,可能整个系统对交通的指挥调度会大大偏离理论计算,不能有效地防止和消除交通堵塞现象。

4、结论:

经过这次的课程设计,做关于交通灯的设计,我认真查阅资料,学习关于这方面的知识,比如说要了解8086芯片中各个引脚的功能,怎么样去使用8255这个可编程并行接口芯片,怎么样使用8253来定时及输出一定频率的脉冲,怎么样用8282这个地址锁存器来存储高位地址和低位地址以及交通有哪些规则。

在理论学习的基础上,又下了一次苦工夫,算是明白了设计一个系统的过程。

也让我体会到要想成功地设计某个东西,光学好专业知识是不够的,必须要系统的知识,无论在哪方面都要有个明白的概念,只有这样才不至于在设计过程中摸不着头脑,知道去哪些是需要查的资料,还有一点,我觉得我在芯片编程方面,特别是在初始化方面是我最大的困难,或许是我的汇编语言学得不够好,我只能借助参考资料,查每一条指令的作用与功能,这样一来又巩固了我的对汇编语言的了解。

如此,我体会到学习理论知识固然重要,但在你学完了之后,你不在实践中运用你所学的知识,我想学是白学了,过一段时间后,你可能什么都记不起来了,或许在学的时候心里有一个概念,认为这个知识我曾经学得不错,我现在怎么想不起来了,一心想依赖课本,如果我们用实践来学习知识,你会努力地去搜索你想要需要的东西,即使是过了一段时间后,你也会记得你曾经对这点不明白认真地查阅过,所以你不容易忘记。

5、实验总结

1)、本次实验成败之处及其原因分析:

本次实验的成败之处在充分了解8255以及8253等和8086计算机的硬件连接。

原因分析:

之前的实验中很多同学对硬件连接不是很清楚,往往程序编写出来了,但不知道怎么连接各个模块,看着复杂的连接电路不知道如何下手,以至于不能有效的完成实验。

2)、本实验的关键环节及改进措施:

做好本实验需要把握的关键环节:

我觉得做好本次实验的关键是编写程序,而编写程序的关键在于各个状态之间的转换和进行适当的时间延时。

若重做本实验,为实现预期效果,仪器操作和实验步骤应如何改善:

本次实验没有设置显示倒计时的七段LED数码管,如果应用到街道上,不利于司机、行人把握。

所以为了增加实用性需要考虑增加两个显示红绿灯倒计时的数码管,在计时的同时也显示倒计时以方便司机行人的通行。

3)、对实验的自我评价:

通过本次课程设计我学到了很多新的东西,极大地拓宽了我的知识面,锻炼了能力,综合素质得到较大提高,我感到收获不小。

也发现了大量问题,有些在设计过程中已经解决,有些还要待今后慢慢学习,只要学习就会有更多的问题,有更多的难点,但也会有更多的收获。

指导老师评语及得分:

签名:

年月日

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 高中教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1