P2.0P1.1P1.28031P1.3P1.5 P2.5P1.6P1.7I01M8155CEMCS-51 单片机开放性设计实验交通灯的控制设计一 问题的提出: 设计一组交通灯使十字路口的交通快捷顺畅。二 总体设计:1 .设计题目的功能: 功能是利用两组交通灯,当南北向红灯时,东北向绿灯,当南北向绿灯时,东西向红灯,且有倒计时(期限为 30 秒)的独特设计。当红灯与绿灯转换时黄灯闪烁,历时 5 秒。2 总体方案设计: 利用定时器实现计时,用数码管显示数字,利用中断系统实行红绿灯的转换,利用硬件显示方案的功能。三 硬件系统电路: 黄 绿 红 黄 绿 红 PB0 PB7 接数码管 PA0 PA71开始(TIME3 ) 30(TIMEOUT) 0(P1) EW_G; 车辆方向,绿灯亮TL0,TH0是 否 溢出执行中断程序TIMEOUT 是 1 或 0(TIMES) 5; 黄灯亮 5 秒(P1 ) 东西黄灯亮EW_Y(LEDMASK) #80H; 用来使黄灯闪烁MCS-51 单片机开放性设计实验四 软件模块和流程图 ( SP) 50H (TH0) T8H;设置 TK0 初值,5 秒 (P1) 0FF; 灯均不亮 产生中断。 (DPTR) 0FF;传送命令寄存器地址 (ET0) 1(A)30H (EA) 1 (DPTR) (A);设置命令寄存器,使 (TR0) 1;使 T/CO 开始计时。 AO,BO 为输出口 (TMOD) 01H;T/CO 为计时器,且 为方式 1。 (TL0) 0FCH 溢出发生 中 断 中断返回 是 12MCS-51 单片机开放性设计实验 溢出发生 中 断 是 0 是 1 溢出发生 中 断 是 0 中断返回 溢出发生 中 断 是 0 中断返回 返回到开始 是 1 3TL0,TH0,是否溢出执行中断程序TIMEOUT 是 0,是 1? (TIMES) 30;绿灯亮 30 秒(P1) 3N_G;南北绿灯 亮TL0,TH0,是否溢出执行中断程序TIMEOUT 是 1 或 0 (TIMES) 5;黄灯亮 5 秒(P1) SN_Y;南北黄灯亮(LEDMASK) #08H,完成黄灯 闪烁TL0,TH0,是否溢出执行中断程序TIMEOUT 是 1 是 0 ? MCS-51 单片机开放性设计实验中断流程图: 亮了 没亮不为 0 到 100ms 为 0 至 100ms 不到 1s 到 1s 不为 0 4中断程序( TH0) 0EC(TL0) 078;为新中断赋 初值(DPTR) ZIXING;B 口作为字形输出口(A) #01H (DPTR) (A) 第一个数码管亮INC R0(01H)变为(02H);下次中断时第二个数码亮管第二十数码管是否亮了准备下次中断使第一个数码管亮TIME1 减 1 后判 0,使时间间隔为 5ms*20=100s如果是黄灯,使之闪烁TIME2 减 1 后判 0使时间间隔为 100MS*10=1sTIME3 减...