单片机的组成与工作原理:单片机的时钟、时序与工作方式

来自:一无所有
4年前
已收藏
收藏
阅读数
158
回复数
0

单片机的时序就是CPU在执行指令时所需控制信号的时间顺序,为了保证各部件间的同步工作,单片机内部电路需要在时钟脉冲的触发下按时序进行工作。 1.时钟电路。 8051单片机内部有一个用于构成振荡器的高增益反相放大器,引脚 XTALI和XTAI2分别是此放大器的输入端和输出端。时钟脉冲的产生有内部方式和外部方式两种。 (1)内部时钟方式。 内部方式时钟电路如图3-10a所示。外接晶体以及电容C、C2构成并联谐振电路,接在放大器的反馈回路中。内部振荡器产生自激振荡,晶振频率fosc在2~12MHz之间任选。 外接晶体时,C1和C2通常选30pF左右;外接陶瓷谐振器时,Cl和C2的典型值为47pF。 (2)外部时钟方式。 外部方式时钟电路如图3-10b所示。当采用外部方式时钟电路时,外部信号接至XTAL2(内部时钟电路输入端),而 XTAL1接地。由于XTAL2端的逻辑电平不是TTL的,因而通常需要外接一个上拉电阻。


2.CPU的时序。 计算机在执行指令时,是将一条指令分解为若干基本的微操作。这些微操作所对应的脉冲信号在时间上的先后次序称为计算机时序。8051单片机的时序由下面四种周期构成振荡周期:振荡脉冲的周期,即节拍,用P表示。 时钟周期:两个振荡周期为一个状态周期,也称为时钟周期,用S表示,它是单片机的基本时间单位。 机器周期:CPU完成一个基本操作所需要的时间称为机器周期。一个机器周期包含12振荡周期,分为6个状态S1~S6,每个状态又分为两个节拍(P1、P2)。振荡周期、时钟周期和机器周期的关系如图3-11所示。
指令周期:执行一条指令所需的时间,它是以机器周期为单位。8051系列单片机除乘法、除法指令是4周期指令外,其余都是单周期指令和双周期指令。若用12MHz晶振,则单周期指令和双周期指令的指令周期分别为1us和2us。
3.单片机的工作方式。 8051单片机的工作方式有:程序执行方式、复位方式、待机运行方式、掉电工作方式以及EPROM编程和检验方式。
(1)程序执行方式。 程序执行方式是单片机的基本工作方式,CPU按照程序计数器(PC)所提供的地址从ROM中取指并执行。每取出一个字节,PC+1→PC,因而在一般的情况下CPU顺序执行程序。当调用子程序、中断或执行转移指令时,PC则会产生相应的地址码,使CPU根据PC新的地址从ROM中取指并执行。 (2)复位方式。 复位是单片机的一个重要工作状态。在单片机工作时,上电时要复位,断电后要复位,发生故障后要复位。因此,充分了解单片机的复位条件、复位电路及复位后的状态十分必要。 1)复位条件。8051单片机的复位操作是使RST引脚(9脚)保持高电平在两个机器周期以上。如果时钟频率为6MHz,机器周期就为2μs,则需要使RST引脚保持4μs以上的高电平。 2)复位后的状态。单片机复位操作不会改变片内RAM中低128B存储单元的内容,但特殊寄存器区中(高128B)SFR将被初始化。复位期间单片机的ALE、PSEN输出高电平复位后片内各寄存器的状态见表3-2。
单片机复位期间ALE、PSEN不输出信号,即单片机在复位期间不会有任何取指操作。 从单片机复位后各寄存器的状态,我们应该注意如下情况: ①程序计数器PC被清零,程序将从0000H地址开始执行。 ②SP值为07H,表明初始化的堆栈底为07H。若在程序中不重新设置SP值,堆栈操作时堆栈将占用原属于通用寄存器区的08H~1FH存储单元(共24B),20H以上为位寻址区。 若启动工作寄存器1~3区,或堆栈容量超出24B,就将出错。因此,系统若要求堆栈深度足够大或不占用部分工作寄存器区及位寻址区,就需要在程序初始化中重设SP值。通常置SP值为50H或60H,相应的堆栈深度为48B和32B。 ③P0~P3口值为FFH,即复位后已使P0~P3口每一端线均为高电平,为这些端线用作输入口做好了准备。 ④其余各寄存器复位后均为0,这些寄存器在使用时通常需要先赋值,因而无需记忆这些寄存器复位后的状态。 3)复位电路。单片机的复位电路通常采用上电自动复位和按键复位两种方式。最简单的上电自动复位电路和按钮复位电路如图3-12所示。
上电自动复位是通过外部复位电路的电容充电来实现的。RC构成微分电路,在接电瞬间产生微分脉冲,其宽度大于两个机器周期,因而单片机实现复位。 按键复位是通过手动按复位键( RESET)实现单片机的复位。按下 RESET键,单片机ST端线就通过RS接通电源VCC,使RST端线足以保持高电平两机器周期以上。 手动按键复位除了图3-12所示的按键电平方式外,还有按键脉冲方式,按下 RESET键后,通过RC微分电路产生的正脉冲来实现复位。 (3)待机运行方式。 将PCON寄存器的IDL位置1,即进入待机运行方式。在程序运行过程中,CPU没有工作要做(等待定时、中断请求等的到来)时,进入待机运行方式,可降低功耗。在待机运行方式下,时钟电路仍然工作,但不向CPU提供,只是向中断系统、定时/计数器和串行口等提供时钟脉冲。 单片机进入待机方式后,有两种退出方式:一种是中断系统发出了中断请求,响应中断(PCON的IDL位被清零)而中止待机方式;另一种是通过硬件复位。 (4)掉电工作方式。 掉电工作方式也是一种低功耗工作方式,将RCON寄存器的PD位置1,即进入掉电方式。在掉电工作方式下,片内时钟停振,仅保留RAM单元中的内容。退出掉电工作状态的唯一方法是硬件复位。

上一篇下一篇
参与回答(0条评论)
用户头像
上传
用户头像
{{item.nickname}}{{item.pubtime}}回复
回复图片
用户头像
上传
用户头像
{{item1.nickname}}回复 {{item1.othername}} {{item1.pubtime}} 回复
回复图片
用户头像
上传
查看全部回复{{item.replylist_count}}条 查看全部
收起回复 收起全部
{{isLoadList==1?'加载中...':(isLoadList==2&&(list.length <=3||(list.length>3&&!is_hidden))?'没有更多内容了':'查看更多回答')}}
返回顶部

返回顶部