宿迁学院《微机原理与接口技术》课程设计题目:交通灯系统设计学院(系):三系年级专业:学号:学生姓名:指导教师:张兵一、设计条件:1.运用所学的微机原理和接口技术知识;2.微机原理和接口技术实验室的实验箱设备。
二、设计思路:该课程设计采用8255A和8253进行控制,对两个方向车辆的通行时间分别计时,可随意进行更改双向的通行时间。
具体要求如下:1.东西方向车辆放行15秒钟。
即东西方向绿灯和南北方向的红灯同时点亮15秒;2.15秒后,东西方向的黄灯闪烁3秒钟,以警示车辆将切换红绿灯。
此时南北方向仍维持红灯点亮。
3.东西方向的黄闪烁3秒钟后,转为南北方向放行15秒钟。
即东西方向的红灯和南北方向的绿灯同时点亮15秒钟;4.南北方向放行15秒钟后,转为南北方向的黄灯闪烁3秒钟,以警示将切换红绿灯。
此时东西方向仍维持红灯点亮。
5.南北方向的黄灯闪烁3秒钟后转为东西方向放行15秒。
如此循环重复。
6.严格按照课程设计说明书要求撰写课程设计说明书。
三、时间安排:指导教师签名:年月日目录摘要........................................ 错误!未定义书签。
第一部分概论............................... 错误!未定义书签。
1.1课题:交通灯设计........................ 错误!未定义书签。
1.2课题介绍................................ 错误!未定义书签。
1.3实验目的................................ 错误!未定义书签。
1.4实验内容................................ 错误!未定义书签。
1.5交通信号灯实时控制和管理的总体设计.. (2)第二部分硬件设计........................... 错误!未定义书签。
2.1硬件原理及线路示意图.................... 错误!未定义书签。
2.2硬件连接图:............................ 错误!未定义书签。
第三部分软件设计........................... 错误!未定义书签。
3.1流程如下................................ 错误!未定义书签。
3.2实验环境及条件.......................... 错误!未定义书签。
3.3程序清单. (6)3.4 分工详情 (7)第四部分调试记录及结果分析 (7)4.1调试记录 (7)4.2结果分析 (8)第五部分芯片资料 (8)5.1 8255的内部结构 (8)5.1.1 口电路 (9)5.1.2总线接口电路 (9)5.2 8255A的工作方式 (10)5.2.1方式0 基本输入/输出方式 (10)5.2.2 方式1 选通输入/输出方式.......... 错误!未定义书签。
5.2.3 方式2 双向数据传送方式........... 错误!未定义书签。
5.3 8253定时计数器......................... 错误!未定义书签。
5.3.1控制字寄存器...................... 错误!未定义书签。
5.3.2 8253有6种工作方式,由方式控制字确定错误!未定义书签。
第六部分总结 (13)第七部分参考资料 (13)摘要随着电子技术的发展,计算机在现代科学技术的发展中起着越来越重的作用。
多媒体技术、网络技术、智能信息处理技术、自适用控制技术、数据挖掘与处理技术等都离不开计算机。
而十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊,井然秩序的实现,靠的是交通信号灯的自动指挥系统。
交通信号灯控制方式有很多。
本系统采用8255A芯片实现了A口设置红、绿、黄灯点亮时间的功能,从而控制LED发光二极管实现红、黄、绿灯循环点亮。
另外结合日常生活经验,并且从亚残会中对残疾人的生活不便中得出感悟,采用8253进行控制时间间隔。
整个系统具有固定的“红灯—黄灯—绿灯”转换间隔,并自动切换,对东西南北方向的道路进行“自动”的控制。
通过8255并口控制,可以达到更加人性化的效果从而方便各种人群。
第一部分概论1.1课题:交通灯设计1.2课题介绍十字道口的红绿灯是交通法规的无声命令,是司机和行人的行为准则。
十字道口的交通红绿灯控制是保证交通安全和道路畅通的关键。
当前,国内大多数城市正在采用“自动”红绿交通灯,它具有固定的“红灯—绿灯”转换间隔,并自动切换。
它们一般由“通行与禁止时间控制显示、红黄绿三色信号灯和方向指示灯”三部分组成。
在交通灯的通行与禁止时间控制显示中,通常要么东西、南北两方向各50秒;要么根据交通规律,东西方向60秒,南北方向40秒,时间控制都是固定的。
交通灯的时间控制显示,以固定时间值预先“固化”在单片机中,每次只是以一定周期交替变化。
但是,实际上不同时刻的车辆流通状况是十分复杂的,是高度非线性的、随机的,还经常受认为因素的影响。
采用定时控制经常造成道路有效应用时间的浪费,出现绿灯方向车辆较少,红灯方向车辆积压。
它不顾当前道路上交通车辆数的实际情况变化,其最大的缺陷就在于当路况发生变化时,不能满足司机与路人的实际需要,轻者造成时间上的浪费,重者直接导致交通堵塞,导致城市交通效率的下降。
目前,有一种使用“模糊控制”技术控制交通灯的方法。
能够根据十字路口两个方向上车辆动态状况,自动判断红绿灯时间间隔,以保证最大车流量,减少道口的交通堵塞。
但是却不像定时控制,能用数字显示器显示当前灯色剩余时间,以便于驾驶员随时掌握自己的驾驶动作,及时停车或启动。
该实验我们用了8255A和8253进行控制实现,红绿灯和黄灯之间时间间隔控制在15秒,黄灯闪烁3秒,虽然在加8253时遇到了很多问题,但是经过多次试验与改进,终于是把8253加了进去,但最终还是有些问题,不过是通过查资料与书本和同伴一起解决问题,还是收获良多。
1.3实验目的1.了解交通灯管理的基本工作原理2.熟悉8259A中断控制器的工作原理和应用编程3.熟悉8255A并行接口的各种工作方式和应用4.熟悉8253计数器/定时器的工作方式及应用编程,掌握利用软硬件相结合定时的方法5.掌握多位LED显示问题的解决1.4实验内容该课程设计采用8255A和8253进行控制,对两个方向车辆的通行时间分别计时,可随意进行更改双向的通行时间。
具体要求如下:1.东西方向车辆放行15秒钟。
即东西方向绿灯和南北方向的红灯同时点亮15秒;2.15秒后,东西方向的黄灯闪烁3秒钟,以警示车辆将切换红绿灯。
此时南北方向仍维持红灯点亮。
3.东西方向的黄闪烁3秒钟后,转为南北方向放行15秒钟。
即东西方向的红灯和南北方向的绿灯同时点亮15秒钟;4.南北方向放行15秒钟后,转为南北方向的黄灯闪烁3秒钟,以警示将切换红绿灯。
此时东西方向仍维持红灯点亮。
5.南北方向的黄灯闪烁3秒钟后转为东西方向放行15秒。
如此循环重复。
1.5交通信号灯实时控制和管理的总体设计芯片选择及端口选择:1.用实验系统8255A实现对信号灯的控制(所用端口自定);2. 用实验系统8253的计数器0方式3控制时间间隔;注:8255A的端口地址为:端口A-288H、端口B-289H、端口C-28aH、控制端口k-28bH.8253的端口地址为:端口A-280H、控制口k-283H第二部分硬件设计2.1硬件原理及线路示意图此方案是通过并行接口芯片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接由分频器产生的T7的时钟脉冲。
红绿灯的转换由软件编程实现。
此为最小模式系统,除了8086CPU,I/O接口芯片8255A,定时计数芯片8353外,其它配置如下:1片8284A,作为时钟发生器;2片8282,作为地址锁存器;2片74LS138,作为地址选通译码器;1个二输入或非门;1个4输入或非门;1个二输入与非门;4个或门12个发光二极管;12个限流电阻;1个复位信号开关。
8255连接图:2.2硬件连接图:第三部分软件设计3.1流程如下主程序中主要是通过初始化8255,然后将PA口设置成为输出口,将PA口与LED灯连接起来3.2实验环境及条件1.PC机器2.导线3.微机原理及接口技术试验箱3.3程序清单本次设计中我们使用了实验系统8255A实现对信号灯的控制(所用端口自定);使用实验系统8253的计数器0方式3控制时间间隔。
data segmentioport equ 0ff00h-0280hio8255a equ ioport+288hio8255k equ ioport+28bhio8253a equ ioport+280hio8253k equ ioport+283hportc1 db 24h,24h,24h,24h,24h,44h,04h,44h,04h,44h,04h ;六个灯可能 db 81h,81h,81h,81h,81h,82h,80h,82h,80h,82h,80h ;的状态数据 db 0ffh ;结束标志data endscode segmentassume cs:code,ds:datastart: mov cx,3000delay: loop delaymov ax,datamov ds,axmov dx,io8255kmov al,80hout dx,al ;设置8255为A口输出mov dx,io8255are_on: mov bx,0on: mov al,portc1[bx]cmp al,0ffhjz re_onout dx,al ;点亮相应的灯inc bxmov cx,5000h ;参数改变test al,21h ;是否有绿灯亮jz de1 ;没有,短延时mov cx,0ffffh ;有,长延时de1: mov di,0ffffh ;di赋初值0ffffhde0: dec di ;减1计数jnz de0 ;di不为0loop de1push dxmov ah,06hmov dl,0ffhint 21hpop dxjz on ;没有,转到onexit: mov ah,4ch ;返回int 21hmov dx,io8253k ;设置8253计时器0方式3mov al,00110110Bout dx,almov dx,io8253amov ax,50000out dx,al ;写计数初值低字节mov al,ahout dx,al ;写计数初值高字节code endsend start3.4 分工详情交通灯控制系统由5255A和8253构成。