T2KxKdXM8aXXXXXXXX_!!42880929.jpg (307.99 KB, 下載次數: 203)
下載附件
2016-1-14 15:05 上傳
c語言程序和仿真文件請下載壓縮包:
diy交通燈.rar
(99.95 KB, 下載次數: 38)
2016-1-14 15:04 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
下面是匯編語言的程序:
- FMQ EQU P1.0 ;???
- QR EQU P1.3 ;???
- QY EQU P1.1 ;???
- QG EQU P1.2 ;???
- HR EQU P2.2 ;???
- HY EQU P2.0 ;???
- HG EQU P2.1 ;???
- ZR EQU P1.4 ;???
- ZY EQU P1.5 ;???
- ZG EQU P1.6 ;???
- YR EQU P2.5 ;???
- YY EQU P2.4 ;???
- YG EQU P2.3 ;???
- SWITCH1 EQU P2.6 ;
- SWITCH2 EQU P2.7 ;
-
- DAT EQU 60H ;??
-
- ORG 0000H
- LJMP START
- ORG 0003H
- LJMP D_X ;????0,???????
- ORG 000BH
- RETI ;
- ORG 0013H
- LJMP N_B ;????1,???????
- ORG 001BH
- RETI
- ORG 0023H
- RETI
- ORG 0040H ;??
- START:
-
- MOV TCON, #5H ;??????????
- SETB EX0 ;
- SETB EX1 ;?????
- SETB EA ;????
- ;IO????
- MOV P0,#0FFH
- MOV P1,#0FFH ;
- MOV P2,#0FFH ;
- MOV P3,#0FFH ;
- MOV DAT, #25H ;
-
-
- AUTCLK:
- MOV P1, #0FFH ;
- MOV P2, #0FFH ;
- MOV DAT, #30H ;???????????
- CLR QG ;??????
- CLR HG ;
- CLR ZR ;??????
- CLR YR ;
- MOV A, DAT ;
- MOV R2, #25 ;?????
- A1:
- MOV R1, #220 ;
- A2:
- ACALL BCD ;BCD??
- ACALL DISPCLK ;??
- ACALL DEL1MS ;??
- ACALL DEL1MS ;
- ACALL DEL1MS ;
- DJNZ R1, A2 ;
- SETB FMQ ;
- MOV A, DAT ;??????1??
- ADD A, #99H ;
- DA A ;
- MOV DAT, A ;?????????
- DJNZ R2, A1 ;
- ;??5????
- MOV P1, #0FFH ;
- MOV P2, #0FFH ;????
- CLR ZY ;???
- CLR YY ;
- CLR QY ;
- CLR HY ;
- MOV R2, #5 ;
- A3:
- MOV R1, #220 ;
- A4:
- ACALL BCD ;
- ACALL DISPCLK ;
- ACALL DEL1MS ;
- ACALL DEL1MS ;
- ACALL DEL1MS ;
- DJNZ R1, A4 ;
- CPL QY ;??????
- CPL HY ;
- CPL ZY ;??????
- CPL YY ;
- CPL FMQ ;?????????
- MOV A, DAT ;
- ADD A, #99H ;
- DA A ;
- MOV DAT, A ;
- DJNZ R2, A3 ;
- ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
- MOV P1, #0FFH ;
- MOV P2, #0FFH ;
- MOV DAT, #20H ;
- CLR ZG ;??????
- CLR YG ;
- CLR QR ;??????
- CLR HR ;
- MOV A, DAT ;
- MOV R2, #15 ;??15?
- A5:
- MOV R1, #220 ;
- A6:
- ACALL BCD ;BCD??
- ACALL DISPCLK ;??
- ACALL DEL1MS ;
- ACALL DEL1MS ;
- ACALL DEL1MS ;
- DJNZ R1, A6 ;
- SETB FMQ ;
- MOV A, DAT ;
- ADD A, #99H ;?1??
- DA A ;
- MOV DAT, A ;
- DJNZ R2, A5 ;
- ;??5????
- MOV P1, #0FFH ;
- MOV P2, #0FFH ;????
- CLR ZY ;???
- CLR YY ;
- CLR QY ;
- CLR HY ;
- MOV R2, #5 ;
- A7:
- MOV R1, #220 ;
- A8:
- ACALL BCD ;
- ACALL DISPCLK ;
- ACALL DEL1MS ;
- ACALL DEL1MS ;
- ACALL DEL1MS ;
- DJNZ R1, A8 ;
- CPL QY ;??????
- CPL HY ;
- CPL ZY ;??????
- CPL YY ;
- CPL FMQ ;?????????
- MOV A, DAT ;
- ADD A, #99H ;
- DA A ;
- MOV DAT, A ;
- DJNZ R2, A7 ;
- AJMP AUTCLK ;
- NOP ;
- NOP ;
- NOP ;
- LJMP START
- ;;*********************************
- ;;?????
- ;;**********************************
- DISPCLK:
- MOV DPTR, #TAB ;????
- ;????
- MOV A, 50H ;
- MOVC A, @A+DPTR ;
- MOV P0, A ;
- CLR SWITCH2 ;
- LCALL DEL1MS ;
- SETB SWITCH2 ;
- ;????
- MOV A, 51H ;
- MOVC A, @A+DPTR ;
- MOV P0, A ;
- CLR SWITCH1 ;
- LCALL DEL1MS ;
- SETB SWITCH1 ;
- RET ;
- NOP ;
- NOP ;
- NOP ;
- LJMP START
- ;************************************************************
- ;??????????
- ;************************************************************
- D_X:
- CLR EA ;????
- JNB P3.2, $ ;
- MOV A, DAT ;??????
- MOV 20H, A ;
- MOV DAT, #50H ;
- MOV 21H, P1 ;
- MOV 22H, P2 ;
- MOV P1, #0FFH ;
- MOV P2, #0FFH ;
- CLR ZG ;??????
- CLR YG ;
- CLR QR ;??????
- CLR HR ;
- MOV R4, #50 ;
- D1:
- MOV R3, #220 ;
- D2:
- ACALL BCD ;
- ACALL DISPCLK ;
- ACALL DEL1MS ;
- ACALL DEL1MS ;
- ACALL DEL1MS ;
- DJNZ R3, D2 ;
- MOV A, DAT ;
- ADD A, #99H ;
- DA A ;
- MOV DAT, A ;
- DJNZ R4, D1 ;
- MOV A, 20H ;??????
- MOV DAT, A ;
- MOV P2, 22H ;
- MOV P1, 21H ;
- CLR IE0 ;
- CLR IE1 ;
- SETB EA ;????
- RETI ;????
-
- ;************************************************************
- ;??????????
- ;************************************************************
- N_B:
- CLR EA ;????
- JNB P3.3, $ ;
- MOV A, DAT ;??????
- MOV 20H, A ;
- MOV DAT, #50H ;
- MOV 21H, P1 ;
- MOV 22H, P2 ;
- MOV P1, #0FFH ;
- MOV P2, #0FFH ;
- CLR QG ;??????
- CLR HG ;
- CLR ZR ;??????
- CLR YR ;
- MOV R4, #50 ;
- N1:
- MOV R3, #220 ;
- N2:
- ACALL BCD ;
- ACALL DISPCLK ;
- ACALL DEL1MS ;
- ACALL DEL1MS ;
- ACALL DEL1MS ;
- DJNZ R3, N2 ;
- MOV A, DAT ;
- ADD A, #99H ;
- DA A ;
- MOV DAT, A ;
- DJNZ R4, N1 ;
- MOV A, 20H ;??????
- MOV DAT, A ;
- MOV P2, 22H ;
- MOV P1, 21H ;
- CLR IE0 ;
- CLR IE1 ;
- SETB EA ;????
- RETI ;????
-
- ;********************************************************
- BCD:
- ;???????????BCD???50H?51H???,?????????
- MOV A, DAT ;
- MOV B,#10H
- DIV AB
- MOV 51H,A ;?????
- MOV A,B
- MOV 50H,A ;?????
- RET
- NOP
- NOP
- NOP
- LJMP START
- ;???
- TAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0FFH
- RET
- NOP
- NOP
- NOP
- LJMP START
- ;*****************************
- ;?????
- ;12M??
- ;*****************************
- DEL1MS: MOV R6,#28
- DEL1MS1:MOV R7,#19
- DEL1MS2:DJNZ R7,DEL1MS2
- DJNZ R6,DEL1MS1
- RET
- NOP
- NOP
- NOP
- LJMP START
- DEL5MS: MOV R7,#90
- DEL5MS1:MOV R6,#54
- DEL5MS2:
- DJNZ R6,DEL5MS2
- DJNZ R7,DEL5MS1
- RET
- NOP
- NOP
- NOP
- LJMP START
- DEL250MS: MOV R5,#50
- DEL250MS1:LCALL DEL5MS
- DJNZ R5,DEL250MS1
- RET
- NOP
- NOP
- NOP
- LJMP START
- DEL500MS: MOV R4,#100
- DEL500MS1:LCALL DEL5MS
- DJNZ R4,DEL500MS1
- RET ;
- NOP
- NOP
- NOP
- LJMP START
- END
復制代碼 |