51单片机汇编语言-延时程序的延时时间
;-----------------------------------------------------最佳答案:DELAY:MOVR6,#13;1DELAY1:MOVR5,#250;1DELAY2:NOP;1DJNZR5,DELAY2;2250*(1+2)=750DJNZR6,DELAY1;213*(1+750+2)=9789RET;21+9789+2=9792加上调用指令,共用9794个机器周期。当...
请高手帮我分析以下延时程序所占的时钟周期 。
求解释:
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 。
【51单片机汇编语言-延时程序的延时时间】
推荐阅读
- 基于51单片机的简易数字频率计
- C51单片机的压缩BCD码相加程序
- 基于单片机的压力测量控制系统设计
- 6MHz时钟的单片机AT89C51系统时钟中断的应用分析
- 基于单片机应用于足浴器的自动控温系统的实现原理及方法
- MCS-51单片机的输入/输出口的P0并行扩展方法
- 单片机监控芯片X25043的功能介绍
- 基于AT89C52单片机对遥控电扇的改造
- 利用简单工具对单片机硬件调试的方法
- 基于AT89S52单片机的水位控制系统