单片机程序注释

来源:百度知道 编辑:UC知道 时间:2024/06/04 01:28:46
ORG 10000H

MOV R6,#50
DLP2: MOV R7,#125
DLP1: nop
nop
DJNZ R7,DLP1
DJNZ R6,DLP2

END

ORG 10000H ;伪指令,不参与汇编,告诉程序编辑器从10000H开始放程序代码

MOV R6,#50 ;对R6赋初值
DLP2: MOV R7,#125 ;对R7赋初值

DLP1: nop ;空操作
nop
DJNZ R7,DLP1 ;R7自减 1,判断是否为零,不为零咋跳到 DLP1标号处
DJNZ R6,DLP2 ;R6自减 1,判断是否为零,不为零咋跳到 DLP2标号处
END ;伪指令,结束汇编
如果单片机的晶振是12MHz 的话上面的延时为
125x2+2=252
(252+2)x50+1=12701 相当于12.7ms

这是一个两层循环延时程序

ORG 10000H 开辟起始地址

MOV R6,#50 计数器初始值
DLP2: MOV R7,#125 计数器初始值

DLP1: nop 自减循环
nop
DJNZ R7,DLP1 R7的值不为0的话跳到DLP1 为零向下行
DJNZ R6,DLP2 外循环 直到R6为0

END