⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 00-59秒计时器.asm

📁 AT89S52单片机程序50例(00-50)
💻 ASM
字号:
Second EQU 30H  ;定义秒钟的内存地址为30H
              ORG 0000H  ;程序起始地址
START:MOV Second,#00H  ;秒钟内容初始化为0
 NEXT:MOV A,Second  ;秒钟内容给累加器A
             MOV B,#10  ;立即数10给B
             DIV AB  ;A的内容除以B的内容
             MOV DPTR,#TABLE  ;TABLE的地址给DPTR
             MOVC A,@A+DPTR  ;以DPTR的内容为基址传送给A
             MOV P0,A  ;把A的内容送P0口
             MOV A,B  ;把B的内容送A
             MOVC A,@A+DPTR  ;以DPTR的内容为基址传送给A
             MOV P2,A  ;把A的内容送P2口
             LCALL DELAY  ;调用1秒钟延时子程序
             INC Second  ;秒钟加1
             MOV A,Second  ;秒钟内容给A
             CJNE A,#60,NEXT  ;A的内容不等于60,则跳转至NEXT
             LJMP START  ;否则,跳转至START
;1秒钟延时子程序
DELAY:MOV R7,#0A7H
DL1:MOV R6,#0ABH
DL0:MOV R5,#10H
      DJNZ R5,$
      DJNZ R6,DL0
      DJNZ R7,DL1
      NOP
RET
;码段地址表
TABLE:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH
END

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -