1、单片机课程设计交通灯设计者:宋清华 崔程一实验要求:模拟交通灯使用绿色数码管,绿灯亮5秒,按下K键东西南北全红灯5秒二原理图三原理分析:根据交通灯情况,东西为红灯时南北为绿灯,南北车辆通行此时对应程序为东西红灯5秒南北绿灯3秒绿灯闪1秒黄灯一秒;南北红灯时东西绿灯,东西车辆通行对应程序南北红灯5秒东西绿灯3秒绿灯闪1秒黄灯一秒依上所述往复进行,如遇紧急情况按下K键东西南北全红灯5秒之后恢复正常。四设计 1硬件设计: 硬件主要由单片机 12个LED(红黄绿各4个) 一个绿色数码管 单片机最小系统(电源5V 振荡电路 晶振12MHZ 电容2个20UF 复位电路R为1K 电容22Uf/6V EA接5
2、V电压)组成。 LED灯与单片机I/O接口如下 红灯(南北)黄灯(南北)绿灯(南北)红灯(东西)黄灯(东西)绿灯(东西)P1.0P1.1P1.2P1.3P1.4P1.5 数码管中二极管采用共阳极对应P2口如下 01234567abcdefgdp 由于对控制要求不高所以采用单片机80C51即可 2软件设计 子程序:DLEAY DLY其对应延时为0.1秒 5秒,其中DLY在中断延时时使用。 中断程序:使用外部中断INTO,触发方式为T0下降沿触发,按下K键程序跳转到INTO中断此时东西南北全红灯,数码管不显示,5秒后恢复中断前程序。五程序流程 东西红5秒南北绿3秒闪1秒黄灯1秒数码管显示5秒倒计时
3、南北红5秒东西绿3秒闪1秒黄灯1秒数码管显示5秒倒计遇紧急情况按K东西南北全红灯延时5秒中断恢复开始开始六源程序 ORG 0000H LJMP MAIN ORG 0003H LJMP INT_0 ORG 0100H MAIN:MOV SP,#60H MOV IE,#81H SETB IT0 S1:MOV P1,#00110011B MOV P2,#92H MOV R2,#10 LCALL DELAY MOV P1,#00110011B MOV P2,#99H MOV R2,#10 LCALL DELAY MOV P1,#00110011B MOV P2,#0B0H MOV R2,#10 LCA
4、LL DELAY MOV P1,#00110111B MOV P2,#0A4H MOV R2,#1 LCALL DELAY MOV P1,#00110011B MOV P2,#0A4H MOV R2,#9 LCALL DELAY MOV P1,#00110101B MOV P2,#0F9H MOV R2,#10 LCALL DELAY MOV P1,#00011110B MOV P2,#92H MOV R2,#10 LCALL DELAY MOV P1,#00011110B MOV P2,#99H MOV R2,#10 LCALL DELAY MOV P1,#00011110B MOV P2,
5、#0B0H MOV R2,#10LCALL DELAY LCALL DELAY MOV P1,#00111110B MOV P2,#0A4H MOV R2,#1 LCALL DELAY MOV P1,#00011110B MOV P2,#0A4H MOV R2,#9 LCALL DELAY MOV P1,#00101110B MOV P2,#0F9H MOV R2,#10 LCALL DELAY RET DELAY: MOV R1,#200 D1:MOV R0,#248 DJNZ R0,$ DJNZ R1,D1 DJNZ R2,DELAY RET INT_0:PUSH PSW PUSH ACC MOV P1,#11110110B MOV P2,#0FFH LCALL DLY1 POP PSW POP ACC AJMP S1 DLY1:MOV R6,#200 D2:MOV R7,#250 D3:MOV R5,#30 DJNZ R5,$ DJNZ R7,D3 DJNZ R6,D2 RET END单片机程序设 计 班级:机电08302班 设计者:宋清华 班级:机电08302班 设计者:崔程