流水灯的制作
发布网友
发布时间:2022-04-22 10:15
我来回答
共1个回答
热心网友
时间:2023-06-30 10:06
1. 先做个AT89S51或AT89S52最小系统开发板;2. 写程序如下:它的效果是依次点亮32只LED,达到全亮后,再反向依次关闭32只LED。 谢谢采纳!
ORG 0
;依次清空P0.0~P0.7,顺次点亮P0口的8个LED========
LOOP: CLR P0.0
LCALL DELAY
CLR P0.1
LCALL DELAY
CLR P0.2
LCALL DELAY
CLR P0.3
LCALL DELAY
CLR P0.4
LCALL DELAY
CLR P0.5
LCALL DELAY
CLR P0.6
LCALL DELAY
CLR P0.7
LCALL DELAY
;依次清空P2.7~P2.0,顺次点亮P2口的8个LED========
CLR P2.7
LCALL DELAY
CLR P2.6
LCALL DELAY
CLR P2.5
LCALL DELAY
CLR P2.4
LCALL DELAY
CLR P2.3
LCALL DELAY
CLR P2.2
LCALL DELAY
CLR P2.1
LCALL DELAY
CLR P2.0
LCALL DELAY
;依次清空P3.7~P3.0,顺次点亮P3口的8个LED========
CLR P3.7
LCALL DELAY
CLR P3.6
LCALL DELAY
CLR P3.5
LCALL DELAY
CLR P3.4
LCALL DELAY
CLR P3.3
LCALL DELAY
CLR P3.2
LCALL DELAY
CLR P3.1
LCALL DELAY
CLR P3.0
LCALL DELAY
;依次清空P1.7~P1.0,顺次点亮P1口的8个LED========
CLR P1.7
LCALL DELAY
CLR P1.6
LCALL DELAY
CLR P1.5
LCALL DELAY
CLR P1.4
LCALL DELAY
CLR P1.3
LCALL DELAY
CLR P1.2
LCALL DELAY
CLR P1.1
LCALL DELAY
CLR P1.0
LCALL DELAY
LCALL DELAY
LCALL DELAY
LCALL DELAY
;依次置位P1.0~P1.7,顺次熄灭P1口的8个LED========
SETB P1.0
LCALL DELAY
SETB P1.1
LCALL DELAY
SETB P1.2
LCALL DELAY
SETB P1.3
LCALL DELAY
SETB P1.4
LCALL DELAY
SETB P1.5
LCALL DELAY
SETB P1.6
LCALL DELAY
SETB P1.7
LCALL DELAY
;依次置位P3.0~P3.7,顺次熄灭P3口的8个LED========
SETB P3.0
LCALL DELAY
SETB P3.1
LCALL DELAY
SETB P3.2
LCALL DELAY
SETB P3.3
LCALL DELAY
SETB P3.4
LCALL DELAY
SETB P3.5
LCALL DELAY
SETB P3.6
LCALL DELAY
SETB P3.7
LCALL DELAY
;依次置位P2.0~P2.7,顺次熄灭P2口的8个LED========
SETB P2.0
LCALL DELAY
SETB P2.1
LCALL DELAY
SETB P2.2
LCALL DELAY
SETB P2.3
LCALL DELAY
SETB P2.4
LCALL DELAY
SETB P2.5
LCALL DELAY
SETB P2.6
LCALL DELAY
SETB P2.7
LCALL DELAY
;依次置位P0.7~P0.0,顺次熄灭P0口的8个LED========
SETB P0.7
LCALL DELAY
SETB P0.6
LCALL DELAY
SETB P0.5
LCALL DELAY
SETB P0.4
LCALL DELAY
SETB P0.3
LCALL DELAY
SETB P0.2
LCALL DELAY
SETB P0.1
LCALL DELAY
SETB P0.0
LCALL DELAY
LCALL DELAY
LCALL DELAY
LCALL DELAY
;跳到LOOP处执行,死循环====================
LJMP LOOP
;延时子程序================================
DELAY: MOV R7,#50
D1: MOV R6,#255
DJNZ R6,$
DJNZ R7,D1
RET
END
3. 编译上面的源程序并下载到AT89单片机内运行即可。