1、交通灯的控制设计 一、设计题目:交通灯的控制 二、目的及基本要求 目的: 培养综合利用 MCS-51 单片机的软硬件知识进行程序设计的能力, 解决一些实际 问题;进一步加深对 MCS-51 单片机内部结构和程序设计方法的理解;提高建立程序文档、 归纳总结的能力。 基本要求:认真分析课程设计任务书,分析问题,解决问题;要求用 MCS-51 单片机知 识完成程序的设计;利用实验室现有设备在规定期限内完成实验。 三三 总体设计总体设计: 1.因为本实验是交通灯控制实验,所以要先了解实际交通灯的变化规律。假设一个十字路口 为东西南北走向。初始状态 0 为东西红灯,停。南北绿灯,黄灯闪,通车。过一段时间
2、转状 态 1,南北红灯,停。东西绿灯,黄灯闪,通车。最后循环至状态 0。实验以定时器实现。 2. 在实验四内容的基础上增加允许急救车优先通过的要求。当救车出现时,10 秒倒计时。 急救车通过路口时间为 10 秒,急救车通过后,交通灯恢复 0 状态。实验以按键为中断申请, 表示有急救车通过 四四 硬件系统电路硬件系统电路: L9 L10 L11 P1.7 P1.6 P1.5 P1.2 P1.1 P1.0 8031 7404 LED6 R6 5V P3.0 K1 五五 软件模块和流程图软件模块和流程图 六六 程序代码程序代码 ORG 8000H AJMP MAIN ORG 8003H AJMP L
3、5 ORG 800BH LJMP T0S ORG 8100H MAIN: MOV SP,#60H SETB EA SETB EX0 SETB PX0 SETB IT0 MOV P1,#01111110B MOV TMOD,#01H MOV TH0,#4CH MOV TL0,#00H SETB ET0 SETB EA SETB TR0 MOV R1,#0 MOV R2,#0 MOV R3,#0 MOV R4,#0 MOV R5,#0 MOV R6,#0 MOV R7,#0 MOV 30H,#0AH MOV 31H,#00H CLR A SJMP $ T0S: JNB P1.0,L1 JNB P1
4、.5,L2 L8: RETI L1: MOV TH0,#4CH MOV TL0,#00H INC R2 CJNE R2,#20,L8 CPL P1.1 MOV R2,#0 INC R3 CJNE R3,#10,L8 L3: MOV P1,#11011011B MOV R3,#0 SJMP L8 L2: MOV TH0,#4CH MOV TL0,#00H INC R4 CJNE R4,#20,L8 CPL P1.6 MOV R4,#0 INC R5 CJNE R5,#20,L8 L4: MOV P1,#01111110B MOV R5,#0 SJMP L8 L5: MOV A,30H CPL A MOV P1,A LCALL DELAY LCALL DELAY DEC 30H INC R6 CJNE R6,#10,L5 MOV R6,#0 CLR A MOV 30H,#0AH CLR P1.7 RETI DELAY:MOV R5,#05H DELAY1:MOV R1,#0AFH DELAY2:MOV R7,#0AFH DELAY3