PLL知识简介
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
//************MC9S12XS128内部锁相环模块PLL************//
MC9S12XS128的时钟和复位发生器(Clocks and Reset Generator,CRG)模块,提供了锁相环(PLL)功能,单片机使用PLL功能能够获得更高的总线频率,这对于需要提高单片机运行速度的应用场合非常必要。如在智能车系统制作中,特别是使用摄像头作为路径识别传感器的组别,就需要更高的单片机总线工作频率。
内部锁相环(IPLL)具有以下基本特征:
•时钟参考分频器;
•时钟后分频器;
•可配置的内部滤波器(无外部引脚);
•减少抖动和降低辐射的可选频率调制模块;
•退出或进入锁定条件可产生中断请求;
•自时钟工作模式。
2.6.1 CRG时钟合成寄存器(SYNR)
读:任何时刻;写:除CLKSEL 寄存器中的PLLSEL=1时的任何时刻。
VCOFRQ1,VCOFRQ0:这2位用于确定压控振荡器VCO的增益以获得频率最佳稳定性并锁定。为了IPLL正常工作,必须根据表2-7中的实际VCO时钟频率配置这2位值。
PLL时钟频率以及由PLL产生的MCU总线时钟频率由下列公式计算:
式中,SYNDIV的值由SYNR寄存器中的BIT5~BIT0确定,REFDIV值由REFDV寄存器中的BIT5~BIT0确定,POSTDIV值由POSTDIV寄存器中的BIT4~BIT0确定
2.6.2 CRG时钟参考分频寄存器(REFDV)
读:任何时刻;写:除CLKSEL 寄存器中的PLLSEL=1时的任何时刻。
REFFRQ1,REFFRQ0:这2位用于配置PLL内部滤波器以获得频率最佳稳定性并锁定。为了IPLL 正常工作,必须根据表2-8中的实际REF时钟频率设置这2位值。
REFDV5~REFDV0:这6位用于确定前述公式中的REFDV值
2.6.3CRG时钟后分频寄存器(POSTDIV)
读:任何时刻;写:除CLKSEL寄存器中的PLLSEL=1时的任何时刻。
如果POSTDIV=0x00,则fPLL= fVCO。如果POSTDIV≠0,则PLLCLK频率fPLL和VCOCLK 频率fVCO之间关系由下列公式计算:
fPLL = fVCO/(2×POSTDIV)
POSTDIV4~POSTDIV0:这5位用于确定公式中的POSTDIV值。
2.6.4 CRG标志寄存器(CRGFLG)
读:任何时刻;写:参考每位各自的写条件。
RTIF:实时中断标志位。在实时时钟周期最后,置位RTIF。该位通过写1清除,写0无效。如果CRGINT寄存器中的实时中断使能(RTIE=1),则RTIF置位将产生中断请求。
•0表示未发生RTI超时;
•1表示已发生RTI超时。
PORF:上电复位标志位。当上电复位发生时,置位PORF。该位通过写1清除,写0无效。
•0表示上电复位未发生;
•1表示上电复位已发生。
LVRF:低电压复位标志位。当低电压复位发生时,置位LVRF。该位通过写1清除,写0无效。
•0表示低电压复位未发生;
•1表示低电压复位已发生。
LOCKIF:IPLL锁定中断标志位。当LOCK位改变时,置位LOCKIF。该位通过写1清除,写0无效。如果CRGINT寄存器中的锁定中断使能(LOCKIE=1),则LOCKIF置位将产生中断请求。
•0表示LOCK位未变化;
•1表示LOCK位已改变。
LOCK:锁定状态位。该位确定IPLL锁定条件的当前状态。该位在自时钟模式(SCM)下清除。该位写操作无效。
•0表示VCOCLK频率和目标频率的误差不在允许范围内;
•1表示VCOCLK频率和目标频率的误差已在允许范围内。
ILAF:非法地址复位标志位。当非法地址复位发生时,置位ILAF。该位通过写1清除,写0无效。
•0表示非法地址复位未发生;
•1表示非法地址复位已发生。
SCMIF:自时钟模式中断标志位。当SCM位改变时,置位SCMIF。该位通过写1清除,写0无效。如果CRGINT寄存器中的自时钟模式中断使能(SCMIE=1),则SCMIF置位将产生中断请求。
•0表示SCM位未变化;
•1表示SCM位已改变。
SCM:自时钟模式状态位。该位反映了MCU当前时钟模式。该位写操作无效。
•0表示MCU和OSCCLK处于正常工作状态,系统时钟由OSCCLK提供;
•1表示OSCCLK处于非正常工作状态,MCU在自时钟模式下工作,系统时钟频率为PLLCLK 最低频率fSCM。
2.6.5 CRG时钟选择寄存器(CLKSEL)
读:任何时刻;写:参考每位各自的写条件。
以下仅介绍和PLL相关位,其他位请读者参考MC9S12XS128数据手册。
PLLSEL:PLL选择位。任何时刻可写。当LOCK=0时,该位写1无效,这能够防止选择不稳定的PLLCLK作为系统时钟。当MCU进入自时钟模式、停止模式或者PLLWAI置位且进入等待模式时,则PLLSEL位清除。
•0表示系统时钟由OSCCLK分频(fBUS = fOSC/2);
•1表示系统时钟由PLLCLK分频(fBUS = fPLL/2)。
PLLWAI:等待模式下PLL停止控制位。任何时刻可写。如果PLLWAI置位,进入等待模式前,CRG将清除PLLSEL位;在等待模式期间,PLLON位保持置位,但IPLL模块断电。退出等待模式,如果使用PLL时钟,需要软件置位PLLSEL。
•0表示等待模式下IPLL继续工作;
•1表示等待模式下IPLL停止工作。
2.6.6 CRG IPLL控制寄存器(PLLCTL)
读:任何时刻;写:参考每位各自的写条件。
以下仅介绍和PLL相关位,其他位请读者参考MC9S12XS128数据手册。
CME:时钟监控使能位。除SCM=1时的任何时刻可写。