单片机周期
在使用STC15点亮WS2811之前,我们需要知道一个nop对应的时长。在单片机的运行过程中存在时钟周期、机器周期与指令周期,区别如下:
时钟周期
单片机的运行需要依靠固定的节奏,在PC的CPU上表现为主频,在单片机上表现为晶振频率。如使用一个12M的晶振,时钟周期固定为1/12us。在传统8051单片机上,晶振均为外置,在STC15上可以选用内部晶振,下文均使用12M晶振的配置。
机器周期
在单片机运行的过程中,一条指令需要拆分为多个步骤,完成一个基本操作的时间被称为机器周期。在传统的8051上,一个基本的的机器周期由6个S周期构成,每个S周期又有2个时钟周期构成。因此,一个机器周期=6个S周期=12个时钟周期,即1us。
指令周期
完成一条指令所需要的机器周期,根据指令不同其周期长度也不同。例如nop指令:
- 在8051上需要1个机器周期,即1us;
- 在STC15的12T模式下需要1个机器周期,即1us;
- 在STC15的1T模式下只需要1/12个机器周期,即1/12us。请注意,STC15上电AUXR默认复位为0x00,即12T模式。
其它不同的指令中,指令周期的长度会有所不同,可见STC-ISP的指令表。一般来说STC15的12T模式速度是传统8051的8~12倍,
本文标题:单片机周期
文章作者:Raincorn
发布时间:2020-09-05
最后更新:2020-09-05
原始链接:https://blog.raincorn.top/2020/09/05/8051_Cycle/
版权声明:本文采用知识共享署名-非商业性使用 4.0 国际许可协议进行许可