51单片机汇编语言-延时程序的延时时间

电子元件 1年前 (2022) aysz01
0

请高手帮我分析以下延时程序所占的时钟周期。

求解释:

DELAY: MOV R6, #13

DELAY1: MOV R5, #250

DELAY2: NOP

DJNZ R5, DELAY2

DJNZ R6, DELAY1

RET

问题补充:晶振为12MHz,机器周期即是1us。

;-----------------------------------------------------

最佳答案:

DELAY: MOV R6,#13 ;1

DELAY1: MOV R5,#250 ;1

DELAY2: NOP ;1

DJNZ R5,DELAY2 ;2 250 * (1 + 2) = 750

DJNZ R6,DELAY1 ;2 13 * (1 + 750 + 2) = 9789

RET ;2 1 + 9789 + 2 = 9792

加上调用指令,共用 9794 个机器周期。

当晶振频率为 12MHz,则延时时间为 9794 us。

版权声明:aysz01 发表于 2022-08-06 15:05:03。
转载请注明:51单片机汇编语言-延时程序的延时时间 | 鳌游电工

暂无评论

暂无评论...