单片机(交通灯程序).doc

上传人:人*** 文档编号:547907671 上传时间:2023-06-14 格式:DOC 页数:6 大小:48.04KB
返回 下载 相关 举报
单片机(交通灯程序).doc_第1页
第1页 / 共6页
单片机(交通灯程序).doc_第2页
第2页 / 共6页
单片机(交通灯程序).doc_第3页
第3页 / 共6页
单片机(交通灯程序).doc_第4页
第4页 / 共6页
单片机(交通灯程序).doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《单片机(交通灯程序).doc》由会员分享,可在线阅读,更多相关《单片机(交通灯程序).doc(6页珍藏版)》请在金锄头文库上搜索。

1、单片机课程设计基于单片机的交通灯设计 一设计要求:交通信号灯模拟控制系统设计利用单片机的定时器定时,令十字路口的红绿灯交替点亮和熄灭,并且用LED数码管显示时间。用8051做输出口,控制十二个发光二极管燃灭,模拟交通灯管理。在一个交通十字路口有一条主干道(东西方向),一条从干道(南北方向),主干道的通行时间比从干道通行时间长,四个路口安装红,黄,蓝,灯各一盏; 1、设计一个十字路口的交通灯控制电路,要求南北方向(主干道)车道和东西方向(支干道)车道两条交叉道路上的车辆交替运行,时间可设置修改。2、在绿灯转为红灯时,要求黄灯先亮,才能变换运行车道3、黄灯亮时,要求每秒闪亮一次。4、东西方向、南北

2、方向车道除了有红、黄、绿灯指示外,每一种灯亮的时间都用显示器进行显示(采用计时的方法)。5、同步设置人行横道红、绿灯指示。二设计任务和内容:任务:设计一个能够控制十二盏交通信号灯的模拟系统。并且要求交通信号灯按照交通规则的模试来运行。内容:因为本课程设计是交通灯的控制设计,所以要了解实际交通灯的变化情况和规律。假设一个十字路口为东西南北走向。初始状态0为东西红灯,南北红灯。然后转状态1东西红灯,南北绿灯通车,。过一段时间转状态2南北绿灯灭,黄灯闪烁几次,东西仍然红灯。再转状态3,东西绿灯通车,南北红灯。过一段时间转状态4,东西绿灯灭,闪几次黄灯,南北仍然红灯。最后循环至状态1。三控制系统的总体

3、要求: 1.执行程序时,初始态为四个路口的红灯全亮之后; 2东西路口的绿灯亮,南北路口的红灯亮,东西路口方向通车; 3.延时一段时间后,东西路口的绿灯熄灭,黄灯开始延时并且开始闪烁,闪烁5次后,东西路口红灯亮,而同时南北路口的绿灯亮,南北路口方向开始通车; 4.延时一段时间之后,南北路口的绿灯熄灭,黄灯开始延时并且开始闪烁,闪烁3次之后,再切换到东西路口方向; 之后重复2到4过程。 四交通信号灯模拟控制系统设计程序流程图:东西黄灯闪烁,南北红灯亮,延时东西绿灯亮,南北红灯亮,延时东西红灯亮,南北黄灯闪烁,延时东西红灯亮,南北绿灯亮,延时8255初始化四个路口红灯亮开始 五交通信号灯控制程序代码

4、:(汇编语言版本)编程提示:(1) 通过8255控制发光二极管PB3 PB0 PA5 PA2对应黄灯,PB1 PA6 PA3 PA0对应红灯,PB2 PA7 PA4 PA1对应绿灯,以模拟交通灯的管理.(2) 程序中设定好8255A的工作方式,三个端口均工作在方式0处于输出状态。(3) 各发光二极管共阳极,使其点亮应使对应的端口输出低电平ORG 0BB0HJOD0: MOV SP, #60H MOV DPTR,#0FF2BH ; 指向8255控制寄存器地址 MOV A,#88H ; 设置控制字(方式字送A、B、C口) MOVX DPTR,A ;8255初始化,写入控制字 MOV DPTR,#0

5、FF28H ;指向PA口地址 MOV A , #0B6H ;A的内容为10110110 MOVX DPTR,A ;从PA 口输出 ,即PA6、PA3、PA0分别为0,表明与这些端口相联的(发光二极管)红灯点亮 INC DPTR ;指向PB口地址 MOV A ,#0DH ;A的内容为00001101 MOVX DPTR,A ;从PB口输出,即PB1为0,表明与该端口相联的(发光二极管)红灯点亮,因此4个红灯 MOV R2,#25H ;延时 LCALL DELYJOD3: MOV DPTR, #0FF28H MOV A, #75H MOVX DPTR, A ;PA口为01110101,即与PA7东

6、绿、PA3北红、PA1西绿相联的灯 INC DPTR MOV A, #0DH ;A为00001101 MOVX DPTR,A ;PB口的PB1南红灯亮,因此东西绿灯亮,南北红灯亮 MOV R2, # 55H LCALL DELY ;延时 MOV R7,#05H ;闪烁次数JOD1: MOV DPTR, #0FF28H MOV A, #0F3H MOVX DPTR, A ;PA为11110011,即PA3北红、PA2西黄灯亮 INC DPTR MOV A, #0CH MOVX DPTR,A ;PB为00001100,即PB1南红、PB0东黄亮,因此东西黄灯亮,南北红灯亮 MOV R2, #20H

7、 LCALL DELY ;延时 MOV DPTR, #0FF28H MOV A, #0F7H MOVX DPTR, A ;PA为11110111,即PA3北红亮 INC DPTR MOV A , # 0DH MOVX DPTR,A ;PB为00001101,即PB1南红亮,因此南北红灯亮 ,此时黄灯灭了 MOV R2, #20H LCALL DELY ;延时 DJNZ R7,JOD1 ;闪烁次数未到继续 MOV DPTR, #0FF28H MOV A, #0AEH MOVX DPTR, A INC DPTR MOV A, #0BH MOVX DPTR,A ;东西红灯亮,南北绿灯亮 MOV R2

8、, #55H LCALL DELY ;延时 MOV R7,#05H ;闪烁次数JOD2: MOV DPTR, #0FF28H MOV A, #9EH MOVX DPTR, A INC DPTR MOV A, #07H MOVX DPTR,A ;东西红灯亮,南北黄灯亮 MOV R2, #20H LCALL DELY ;延时 MOV DPTR, #0FF28H MOV A, #0BEH MOVX DPTR, A INC DPTR MOV A, #0FH MOVX DPTR,A ;东西红灯亮,南北黄灯灭了 MOV R2, #20H LCALL DELY ;延时 DJNZ R7,JOD2 ;闪烁次数未

9、到继续 LJMP JOD3 ;循环 ORG 0C30HDELY: PUSH 02HDEL2: PUSH 02HDEL3: PUSH 02H ;延时DEL4: DJNZ R2, DEL4 POP 02H DJNZ R2, DEL3 POP 02H DJNZ R2, DEL2 POP 02H DJNZ R2, DELY RET END运行实验程序编译程序时,在系统“P.”状态后,运行程序时 L1L12发光二极管模拟交通灯显示。六程序运行后状态表:其中0代表灯灭,1代表灯亮。状态南东北西黄绿红黄绿红黄绿红黄绿红PB3PB2PB1PB0PA7PA6PA5PA4PA3PA2PA1PA0开始4个红灯亮00

10、1001011001该四个工作状态按此次序将重复出现南北红灯亮,东西绿灯亮001010001010南北红灯亮,东西黄灯亮001100001100南北绿灯亮,东西红灯亮010001010001南北黄灯亮,东西红灯亮100001100001七调试与检测:1.硬件检测:硬件检测又分为,静态检测和动态检测,静态检测为: 第一步:目测,检查外部的各种元件或则电路是否有断点; 第二步:用万用表测试。先用万用表复核目测中有疑问的连接点,再检测各种电源线与地线之间是否有短路现象; 第三步:加电检测。给板加电,检测所有的插座或是器件的电源端是否符合要求的值; 第四步:是联机检查。因为只有用单片机开发系统才能完成

11、对用户系统的调试。动态检测为: 动态检测是在用户系统工作的情况下发现和排除用户系统硬件中存在的器件内部故障、器件连接逻辑错误等的一种硬件检查。动态调试的一般方法是由近及远、由分到合。由分到合是指首先按逻辑功能将用户系统硬件电路分为若干块,当调试电路时,与该元件无关的 器件全部从用户系统中去掉,这样可以将故障范围限定在某个局部的电路上。当各块电路无故障后,将各电路逐块加入系统中,在对各块电路功能及各电路间可能存在的相互联系进行调试。由分到合的调试既告完成。由近及远是将信号流经的各器件按照距离单片机的逻辑距离进行由近及远的分层,然后分层调试。调试时,仍采用去掉无关元件的方法,逐层调试下去,就会定位故障元件了。2.软件调试:软件调试是通过对拥护程序的汇编、连接、执行来发现程序中存在的语法错误与逻辑错误并加以排除纠正的过程。程序后,编辑,查看程序是否有逻辑的错误。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号