您当前的位置:五五电子网电子知识单片机-工控设备51单片机利用51单片机设计的交通灯汇编原程序 正文
利用51单片机设计的交通灯汇编原程序

利用51单片机设计的交通灯汇编原程序

点击数:7167 次   录入时间:03-04 11:50:53   整理:http://www.55dianzi.com   51单片机

    用的是51系列的单片机
说一下,MARK标志位其关键作用,
需要的人自己想想,
 
下面是仿真图51单片机

LED0  EQU P1
 LED2  EQU P2
 LED1  EQU P0
 MARK  BIT 00H
 MARK1 BIT 01H
 TIME  EQU 30H;时间缓冲区
        SHI  EQU 31H ;时长数据缓冲区!
 KEY  EQU P3.2
 KEY1  EQU P3.3
 CTH EQU (65536-50000)/256
 CTL EQU (65536-50000) MOD 256
 ORG 0000H
 JMP START
 ORG 0003H
 JMP INT_0
 ORG 000BH
 JMP TIME0
 ORG 0030H
START:  MOV P1,#00H
        MOV P0,#0FFH
 MOV P2,#0FFH
 MOV DPTR,#ABC
 MOV SP,#5FH
 MOV SHI,#20
 MOV R0,SHI
 MOV R7,#20
 CLR MARK
 CLR MARK1
 MOV TMOD,#01H
        MOV TH0,#CTH;初始指针
 MOV TL0,#CTL
 SETB EA
 SETB IT0
 SETB EX0
 SETB ET0
 SETB TR0
 MOV TIME,R0
 CALL DISPLAY
MAIN: MOV LED0,#21H;北,红灯亮
        CJNE R0,#3,MAIN
 MOV SHI,#04
NEXT:  MOV R6,#3
A1:    MOV  LED0,#01H
 CALL DELAY_500MS
        MOV LED0,#21H
 CALL DELAY_500MS
 DJNZ R6,A1
S1: JBC MARK,A2
 SJMP S1 
A2: MOV LED0,#11H; BEI HUANG DENG LIANG
 MOV SHI,#20
 JBC MARK,MAIN1
 SJMP A2
MAIN1:  MOV LED0,#0CH ;XI HONG DENG LIANG
 CJNE R0,#3,MAIN1
 MOV SHI,#04
NEXT1:  MOV R6,#3
A3:    MOV LED0,#08H
        CALL DELAY_500MS
 MOV LED0,#0CH
 CALL DELAY_500MS
 DJNZ R6,A3
S2: JBC MARK,A4
 SJMP S2

    A4: MOV LED0,#0AH
 MOV SHI,#20
        JBC MARK,MAIN
        SJMP A4
DELAY_500MS:
        MOV R5,#20
K1: MOV R4,#50
K2: MOV R3,#250
 DJNZ R3,$
 DJNZ R4,K2
 DJNZ R5,K1
 RET
DISPLAY:MOV A,TIME
        MOV B,#10
 DIV AB
 MOVC A,@A+DPTR
 MOV LED2,A
        MOV A,B
 MOVC A,@A+DPTR
 MOV LED1,A
 RET
ABC:    DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H 
INT_0:  PUSH ACC
 PUSH PSW
 SETB RS1
 SETB RS0
 MOV R5,#70
K4: MOV R4,#250
      DJNZ R4,$
 DJNZ R5,K4
 JB KEY,ITT_2
 MOV TIME,#20
 CALL DISPLAY
ITT_1:  MOV LED0,#00010010B
 CALL DELAY_500MS
 MOV LED0,#00H
 JNB KEY,ITT_2
 CALL DELAY_500MS
        JB KEY,ITT_1
ITT_2:  JNB KEY ,$
 POP PSW
 POP ACC
 RETI             
TIME0: PUSH ACC
      PUSH PSW
      MOV TH0,#CTH;初始指针
      MOV TL0,#CTL
      DJNZ R7,TIME1
      MOV R7,#20
      DJNZ R0,TIME2
      SETB MARK
      MOV R0,SHI
TIME2: MOV TIME,R0
      CALL DISPLAY
TIME1: POP PSW
      POP ACC
      RETI
      END
 




本文关键字:单片机  程序  交通灯  51单片机单片机-工控设备 - 51单片机