📄 1.asm
字号:
LOOP: ; 标号
CLR P2.0 ;选中p2.0 数码管左边的8字使能
CLR P2.1 ;选中p2.1 数码管左边的8字使能
SETB P2.2 ;选中p2.2 不使能。 右边的数码管消隐
SETB P2.3 ;选中p2.3 不使能。 右边的数码管消隐
MOV P0,#0c0h ;把0c0h送p0口;数码管显示 0
LCALL DELAY ;延时
MOV P0,#0FFH ;0ffh 送p0口,数码管清除
CLR P1.0 ;点亮p1.0发光管
MOV P0,#0f9h ;把0f9h送p0口;数码管显示 1
LCALL DELAY
MOV P0,#0FFH
CLR P1.1 ;点亮p1.0发光管
CLR P1.0 ;点亮p1.0发光管
MOV P0,#0a4h ;数码管显示 2
LCALL DELAY
MOV P0,#0FFH
CLR P1.2
CLR P1.1
CLR P1.0
MOV P0,#0b0h ;数码管显示 3
LCALL DELAY
MOV P0,#0FFH
CLR P1.3
CLR P1.2
CLR P1.1
CLR P1.0
MOV P0,#99H ;数码管显示 4
LCALL DELAY
MOV P0,#0FFH
CLR P1.4
CLR P1.3
CLR P1.2
CLR P1.1
CLR P1.0
MOV P0,#92H ;数码管显示 5;
LCALL DELAY
MOV P0,#0FFH
CLR P1.5
CLR P1.4
CLR P1.3
CLR P1.2
CLR P1.1
CLR P1.0
MOV P0,#82H ; 数码管显示 6
LCALL DELAY
MOV P0,#0FFH
CLR P1.6
CLR P1.5
CLR P1.4
CLR P1.3
CLR P1.2
CLR P1.1
CLR P1.0
MOV P0,#0f8H ; 数码管显示 7
LCALL DELAY
MOV P0,#0FFH
CLR P1.7
CLR P1.6
CLR P1.5
CLR P1.4
CLR P1.3
CLR P1.2
CLR P1.1
CLR P1.0
MOV P0,#80H ; 数码管显示 8
LCALL DELAY
MOV P0,#0FFH
LCALL DELAY
MOV P0,#0FFH
MOV P1,#0FFH
;程序到此结果为左边的数码管显示0,1,2,3,4,5,6,7,8
;p1.0------------p1.7指示灯依次点亮
CLR P2.2 ;选中p2.2 数码管左边的8字使能
CLR P2.3 ;选中p2.3 数码管左边的8字使能
SETB P2.0 ;选中p2.0 不使能。 右边的数码管消隐
SETB P2.1 ;选中p2.1 不使能。 右边的数码管消隐
MOV P0,#0c0h ;把0c0h送p0口;数码管显示 0
LCALL DELAY
MOV P0,#0FFH
MOV P1,#0FFH
CLR P1.0
MOV P0,#0f9h ;把0f9h送p0口;数码管显示 1
LCALL DELAY
MOV P0,#0FFH
MOV P1,#0FFH
CLR P1.1
MOV P0,#0a4h ;数码管显示 2
LCALL DELAY
MOV P0,#0FFH
MOV P1,#0FFH
CLR P1.2
MOV P0,#0b0h ;数码管显示 3
LCALL DELAY
MOV P0,#0FFH
MOV P1,#0FFH
CLR P1.3
MOV P0,#99H ;数码管显示 4
LCALL DELAY
MOV P0,#0FFH
MOV P1,#0FFH
CLR P1.4
MOV P0,#92H ;数码管显示 5;
LCALL DELAY
MOV P0,#0FFH
MOV P1,#0FFH
CLR P1.5
MOV P0,#82H ; 数码管显示 6
LCALL DELAY
MOV P0,#0FFH
MOV P1,#0FFH
CLR P1.6
MOV P0,#0f8H ; 数码管显示 7
LCALL DELAY
MOV P0,#0FFH
MOV P1,#0FFH
CLR P1.7
MOV P0,#80H ; 数码管显示 8
LCALL DELAY
MOV P0,#0FFH
MOV P1,#0FFH
MOV P0,#0FFH
MOV P1,#0FFH
;这一段和上一段基本相同, 不同的是右边的数码管依次显示012345678,左边的不亮;
;同时p1口的灯流动显示,下面重新再来新的数字显示:
CLR P2.0 ;选中p2.0 数码管左边的8字使能
CLR P2.2 ;选中p2.2 数码管左边的8字使能
SETB P2.1 ;选中p2.1 不使能。 右边的数码管消隐
SETB P2.3 ;选中p2.3 不使能。 右边的数码管消隐
MOV P0,#0c0h ;把0c0h送p0口;数码管显示 0
LCALL DELAY ;延时
MOV P0,#0FFH ;0ffh 送p0口,数码管清除
CLR P1.0 ;点亮p1.0发光管
MOV P0,#0f9h ;把0f9h送p0口;数码管显示 1
LCALL DELAY
MOV P0,#0FFH
CLR P1.1 ;点亮p1.0发光管
CLR P1.0 ;点亮p1.0发光管
MOV P0,#0a4h ;数码管显示 2
LCALL DELAY
MOV P0,#0FFH
CLR P1.2
CLR P1.1
CLR P1.0
MOV P0,#0b0h ;数码管显示 3
LCALL DELAY
MOV P0,#0FFH
CLR P1.3
CLR P1.2
CLR P1.1
CLR P1.0
MOV P0,#99H ;数码管显示 4
LCALL DELAY
MOV P0,#0FFH
CLR P1.4
CLR P1.3
CLR P1.2
CLR P1.1
CLR P1.0
MOV P0,#92H ;数码管显示 5;
LCALL DELAY
MOV P0,#0FFH
CLR P1.5
CLR P1.4
CLR P1.3
CLR P1.2
CLR P1.1
CLR P1.0
MOV P0,#82H ; 数码管显示 6
LCALL DELAY
MOV P0,#0FFH
CLR P1.6
CLR P1.5
CLR P1.4
CLR P1.3
CLR P1.2
CLR P1.1
CLR P1.0
MOV P0,#0f8H ; 数码管显示 7
LCALL DELAY
MOV P0,#0FFH
CLR P1.7
CLR P1.6
CLR P1.5
CLR P1.4
CLR P1.3
CLR P1.2
CLR P1.1
CLR P1.0
MOV P0,#80H ; 数码管显示 8
LCALL DELAY
MOV P0,#0FFH
LCALL DELAY
MOV P0,#0FFH
MOV P1,#0FFH
;程序到此结果为左边的数码管显示0,1,2,3,4,5,6,7,8
;p1.0------------p1.7指示灯依次点亮
CLR P2.1 ;选中p2.2 数码管左边的8字使能
CLR P2.3 ;选中p2.3 数码管左边的8字使能
SETB P2.0 ;选中p2.0 不使能。 右边的数码管消隐
SETB P2.2 ;选中p2.1 不使能。 右边的数码管消隐
MOV P0,#0c0h ;把0c0h送p0口;数码管显示 0
LCALL DELAY
MOV P0,#0FFH
MOV P1,#0FFH
CLR P1.0
MOV P0,#0f9h ;把0f9h送p0口;数码管显示 1
LCALL DELAY
MOV P0,#0FFH
MOV P1,#0FFH
CLR P1.1
MOV P0,#0a4h ;数码管显示 2
LCALL DELAY
MOV P0,#0FFH
MOV P1,#0FFH
CLR P1.2
MOV P0,#0b0h ;数码管显示 3
LCALL DELAY
MOV P0,#0FFH
MOV P1,#0FFH
CLR P1.3
MOV P0,#99H ;数码管显示 4
LCALL DELAY
MOV P0,#0FFH
MOV P1,#0FFH
CLR P1.4
MOV P0,#92H ;数码管显示 5;
LCALL DELAY
MOV P0,#0FFH
MOV P1,#0FFH
CLR P1.5
MOV P0,#82H ; 数码管显示 6
LCALL DELAY
MOV P0,#0FFH
MOV P1,#0FFH
CLR P1.6
MOV P0,#0f8H ; 数码管显示 7
LCALL DELAY
MOV P0,#0FFH
MOV P1,#0FFH
CLR P1.7
MOV P0,#80H ; 数码管显示 8
LCALL DELAY
MOV P0,#0FFH
MOV P1,#0FFH
MOV P0,#0FFH
MOV P1,#0FFH
;这一段和上一段基本相同, 不同的是右边的数码管依次显示012345678,左边的不亮;
;同时p1口的灯流动显示:
CLR P1.0
CLR P1.1
CLR P1.2
CLR P1.3
CLR P1.4
CLR P1.5
CLR P1.6
CLR P1.7
LCALL DELAY ;延时
SETB P1.0
SETB P1.1
SETB P1.2
SETB P1.3
SETB P1.4
SETB P1.5
SETB P1.6
SETB P1.7
LCALL DELAY ;延时
CLR P1.0
CLR P1.1
CLR P1.2
CLR P1.3
CLR P1.4
CLR P1.5
CLR P1.6
CLR P1.7
LCALL DELAY ;延时
SETB P1.0
SETB P1.1
SETB P1.2
SETB P1.3
SETB P1.4
SETB P1.5
SETB P1.6
SETB P1.7
LCALL DELAY ;延时
CLR P1.0
CLR P1.1
CLR P1.2
CLR P1.3
CLR P1.4
CLR P1.5
CLR P1.6
CLR P1.7
LCALL DELAY ;延时
SETB P1.0
SETB P1.1
SETB P1.2
SETB P1.3
SETB P1.4
SETB P1.5
SETB P1.6
SETB P1.7
LCALL DELAY ;延时
CLR P1.0
CLR P1.1
CLR P1.2
CLR P1.3
CLR P1.4
CLR P1.5
CLR P1.6
CLR P1.7
LCALL DELAY ;延时
SETB P1.0
SETB P1.1
SETB P1.2
SETB P1.3
SETB P1.4
SETB P1.5
SETB P1.6
SETB P1.7
LCALL DELAY ;延时
CLR P2.0 ;选中p2.0 数码管左边的8字使能
CLR P2.1 ;选中p2.1 数码管左边的8字使能
CLR P2.2 ;选中p2.0 数码管左边的8字使能
CLR P2.3 ;选中p2.1 数码管左边的8字使能
MOV P0,#80H ; 数码管显示 8
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY ;延时
MOV P0,#0FFH ;0ffh 送p0口,数码管清除
CLR P1.7 ;点亮p1.0发光管
CLR P1.6 ;点亮p1.0发光管
MOV P0,#0f8H ; 数码管显示 7
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY
MOV P0,#0FFH
CLR P1.7
CLR P1.6
CLR P1.5
MOV P0,#82H ; 数码管显示 6
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY
MOV P0,#0FFH
CLR P1.7
CLR P1.6
CLR P1.5
CLR P1.4
MOV P0,#92H ;数码管显示 5;
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY
MOV P0,#0FFH
CLR P1.7
CLR P1.6
CLR P1.5
CLR P1.4
CLR P1.3
MOV P0,#99H ;数码管显示 4
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY
MOV P0,#0FFH
CLR P1.7
CLR P1.6
CLR P1.5
CLR P1.4
CLR P1.3
CLR P1.2
MOV P0,#0b0h ;数码管显示 3
LCALL DELAY
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY ;延时
MOV P0,#0FFH
CLR P1.7
CLR P1.6
CLR P1.5
CLR P1.4
CLR P1.3
CLR P1.2
CLR P1.1
MOV P0,#0a4h ;数码管显示 2
LCALL DELAY
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY ;延时
MOV P0,#0FFH
CLR P1.0 ;点亮p1.0发光管
MOV P0,#0f9h ;把0f9h送p0口;数码管显示 1
CLR P2.6
LCALL DELAY
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY ;延时
SETB P2.6
MOV P0,#0FFH
CLR P1.0
CLR P1.1
CLR P1.2
CLR P1.3
CLR P1.4
CLR P1.5
CLR P1.6
CLR P1.7
CLR P2.6
MOV P0,#0c0h ;把0c0h送p0口;数码管显示 0
LCALL DELAY
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY ;延时
LCALL DELAY ;延时
SETB P2.6
MOV P0,#0FFH
LCALL DELAY
MOV P0,#0FFH
MOV P1,#0FFH
AJMP LOOP; 注意: 程序运行到此跳转到开始标号,重复执行:
DELAY: ;延时子程序;参考前面的教程:
CLR P2.4 ;注意小喇叭在3.3口, 这里可以使小喇叭发出嗒,嗒声
MOV R7,#255
NOP
NOP
D1:MOV R6,#255
setb p2.4
D2: DJNZ R6,D2
clr p2.4
DJNZ R7,D1
SETB P2.4
RET
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -