单片机流水灯汇编程序 其中延时的计算方法

来源:百度知道 编辑:UC知道 时间:2024/09/23 14:39:38
本人单片机的晶振频率为22.1184
P1出口的 程序为:

DL: MOV R5,#20
XH: MOV R6,#50
XM: MOV R7,#250
XN: DJNZ R7,XN
DJNZ R6,XM
DJNZ R5,XH
RET
这个延时程序怎么计算它的延时???

80c51单片机的晶体振荡周期等于振荡频率的倒数, 单片机的晶振频率为22.1184 MHZ。 则振荡周期为 1/22.11848 .80c51单片机中有一个机器周期,它有12个振荡周期组成。 它的振荡周期=12*(1/22.11848)us。
一般延时指令DJNZ为双周期指令。所以执行一次=2*【12*(1/22.11848)】us。
最后你看你执行延时的次数*2*【12*(1/22.11848)】us。
就是最后延时的时间。 一般实际大于你计算的时间。

一个机器周期为12个时钟周期,你的可以认为是24MHz,即0.5us,指令为1个或2个周期,就是0.5us或者1us

1+1=2