簡(jiǎn)單的單片機(jī)的流水燈程序
;----- 主程序開始 -----
START: CLR P1.0 ;P1.0輸出低電平,使LED1點(diǎn)亮
ACALL DELAY ;調(diào)用延時(shí)子程序
SETB P1.0 ;P1.0輸出高電平,使LED1熄滅
CLR P1.1 ;P1.1輸出低電平,使LED2點(diǎn)亮
ACALL DELAY ;調(diào)用延時(shí)子程序
SETB P1.1 ;P1.1輸出高電平,使LED2熄滅
CLR P1.2 ;P1.2輸出低電平,使LED3點(diǎn)亮
ACALL DELAY ;調(diào)用延時(shí)子程序
SETB P1.2 ;P1.2輸出高電平,使LED3熄滅
CLR P1.3 ;P1.3輸出低電平,使LED4點(diǎn)亮
ACALL DELAY ;調(diào)用延時(shí)子程序
SETB P1.3 ;P1.3輸出高電平,使LED4熄滅
CLR P1.4 ;P1.4輸出低電平,使LED5點(diǎn)亮
ACALL DELAY ;調(diào)用延時(shí)子程序
SETB P1.4 ;P1.4輸出高電平,使LED5熄滅
CLR P1.5 ;P1.5輸出低電平,使LED6點(diǎn)亮
ACALL DELAY ;調(diào)用延時(shí)子程序
SETB P1.5 ;P1.5輸出高電平,使LED6熄滅
CLR P1.6 ;P1.6輸出低電平,使LED7點(diǎn)亮
ACALL DELAY ;調(diào)用延時(shí)子程序
SETB P1.6 ;P1.6輸出高電平,使LED7熄滅
CLR P1.7 ;P1.7輸出低電平,使LED8點(diǎn)亮
ACALL DELAY ;調(diào)用延時(shí)子程序
SETB P1.7 ;P1.7輸出高電平,使LED8熄滅
ACALL DELAY ;調(diào)用延時(shí)子程序
AJMP START ;8個(gè)LED流了一遍后返回到標(biāo)號(hào)START處再循環(huán)
;----- 延時(shí)子程序 -----
DELAY: MOV R0,#255 ;延時(shí)一段時(shí)間
D1: MOV R1,#255
DJNZ R1,$
DJNZ R0,D1
RET ;子程序返回
END ;程序結(jié)束