標(biāo)題: 單片機八個按鍵控制八個燈、流水燈、交通燈程序 [打印本頁]

作者: 葛生666    時間: 2019-9-1 21:59
標(biāo)題: 單片機八個按鍵控制八個燈、流水燈、交通燈程序
(一)八個按鍵控制八個燈原理圖



程序:
ORG 0000H
Ljmp main
ORG 0100H
main:mov sp,#40H
    mov A,#0FFH
               mov P1,A
               Loop:mov A,P1
                    mov P0,A;將P1口的數(shù)據(jù)通過A為媒介傳給P0
                                   sjmpLoop;短轉(zhuǎn)移
                                   END1
(二)流水燈
原理圖同上
程序:
ORG 0000H
Ljmp main
ORG 0100H
main:mov sp,#50H
    mov R1,#01H
               mov A,R1
               Loop:mov P0,A
                                   LCALLDELAY100;調(diào)用延時程序
                                   RLA;循環(huán)右移
                                   sjmpLoop
DELAY100: push PSW
          CLR RS0
                                    SETB RS1
                                    mov R7,#0C7H
                                    LOOP1:mov R6,#0FAH
                                    LOOP2:DJNZ R6,LOOP2
                                          DJNZ R7,LOOP1
                                                         POP PSW
                                                         RET

                                   END
仿真時的效果為,發(fā)光二極管從上到下依次亮起,不斷循環(huán)這個過程。
(三)交通燈
原理圖

程序:
org 0000h
ljmp main
org 0100H
main: mov SP,#50H
     mov R3,#0AH
                     MOVA,#00H
                     MOVP1,A
LOOP1: SETB P1.7
     SETB p1.0
LOOP2:LCALL DELAY100
                     DJNZR3,LOOP2;亮一秒
                     MOVR3,#0AH
                     CLRP1.0
LOOP3:SETB P1.1
                     LCALLDELAY100
                     CLRP1.1
                     LCALLDELAY100
                     DJNZR3,LOOP3;閃一秒
                     CLRP1.1
                     CLRP1.7
                     MOVR3,#0AH
                     SETBP1.2
                     SETBP1.5
LOOP4:LCALL DELAY100
     DJNZ R3,LOOP4;亮一秒
                     CLRP1.2
                     CLRP1.5
                     SETBP1.2
                     SETBP1.5
                     MOVR3,#0AH
LOOP5:LCALL DELAY100
                     DJNZR3,LOOP5;亮一秒
                     CLRP1.5
                     MOVR3,#0AH
LOOP6:CLR P1.6
                     LCALLDELAY100
                     SETBP1.6
                     LCALLDELAY100
                     DJNZR3,LOOP6;閃一秒
                     CLRP1.6
                     CLRP1.2
                     SETBP1.7
                     SETBP1.0
                     MOVR3,#0AH
LOOP7:LCALL DELAY100
                     DJNZR3,LOOP7;亮一秒
                     CLRP1.2
                     CLRP1.6
                     LJMPMAIN
DELAY100:PUSH PSW
        CLR RS0
                             SETB RS1
                             MOV R7,#0C7H
LOOP8:MOV R6,#0FAH
LOOP9:DJNZ R6,LOOP9
                             DJNZ R7,LOOP8
                             POP PSW
                             RET

                     END
功能:




2.png (161.14 KB, 下載次數(shù): 75)

2.png

作者: 凝香456\    時間: 2019-11-5 21:32
樓主 是51單片機么?
作者: 葛生666    時間: 2020-9-3 10:19
凝香456\ 發(fā)表于 2019-11-5 21:32
樓主 是51單片機么?

嗯80c51




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1