单片机时钟周期、状态周期、机器周期、指令周期的理解

引言

在我们做学习单片机时,往往要用到延时程序,而要用汇编语言写出来,就必须对几个常见周期有所了解,这也算是学习单片机的基本知识。

时钟周期

时钟周期,又称为震荡周期,是为单片机提供定时信号的震荡源的周期,是单片机最基本的时间单位。谈到时钟周期就必须说晶体振荡器即即晶振,晶振可以说是单片机的心脏,它为单片机提供一个时钟频率 fosc(震荡频率)。
而所谓的震荡频率(时钟频率)自然是晶振一秒钟震荡的次数。时钟频率越高,单片机运行速度越快,就如电脑的CPU什么可以加速到多少GHz一样。自然时钟周期Tosc=1/fosc.
例如 震荡频率为12MHz的单片机即 fosc = 12MHz,那么震荡周期
Tosc = 1/fosc= 1/12 us。

状态周期

状态周期是CPU从一个状态转换到另一状态所需要的时间。简单地说每个状态周期
Ts 分为两个震荡周期(时钟周期),即Ts = 2Tosc。

机器周期

这里我们以MCS-51单片机为例,它有固定的机器周期,一个机器周期包含六个状态例如,取指令、存储器读、存储器写等。即机器周期等于6个状态周期,而一个状态周期是2个时钟周期,因此一个机器周期又等于12个时钟周期。那么晶振频率为12MHz的的单片机的机器周期 T = 12*Tosc = 1 us。

指令周期

顾名思义,指令周期就是执行一条指令所需的全部时间。MCS-51单片机的指令周期通常是 1 ~ 4 个机器周期组成。

MCS-51单片机常见指令的指令周期:

指令 周期 时间
MOV Rn,A 1 1 us
MOV Rn,#00H 2 2 us
ADD A,Rn 1 1 us
ADD A,#01H 2 2 us
DJNZ Rn,rel 2 2 us

比较详细的指令及其所需周期百度链接

你可能感兴趣的:(单片机)