Mul tipurpose Clock Generator (MCG)模块
MCG模块概览:提供两个内部参考时钟,内部慢速时钟为32KHz(31.25KHz ~ 38.2KHz),内部快速时钟为4MHz,片内时钟都具有自校准功能。
提供振荡器模块,可以外接晶振和外部时钟。
锁频环:提供四种频段配置,每个频段提供两个倍频系数,参考时钟源可以是片内慢速时钟也可以是片外晶振。
锁相环:必须由外部时钟作为参考源,提供参考时钟分频系数,提供倍频系数,可以独立于其他的时钟源同时使能。
外部时钟监控:当外部时钟消失时会产生复位。
自动校准机制:内部参考时钟都可以校准,内部快速时钟只能校准为4MHz,内部慢速时钟可以校准为设定频率。
所有的时钟源都可以作为MCG模块输出时钟。
MCG主要增加的功能组件:
片内快速时钟:时钟频率为4MHz,固定的两分频; 4位设定校准频率;可以作为MCG时钟输出或者MCG片内参考时钟;提供进入VLPR模式等低功耗模式的系统2MHz参考时钟。
内部时钟自动校准: 允许参考时钟(总线时钟)校准任何一个片内时钟;执行自动校准时,MCG工作模式不能使用做校准的片内时钟作为时钟源;参考时钟频率必须在8~16MHz之间;自动校准完成后,校准寄存器将会写入校准值。
独立的锁相环使能:即使MCG模块工作在非锁相环模式下,例如FEE模式,锁相环也可以继续工作;锁相环可以提供USB,I2S模块时钟。
系统振荡器可以接受高达50MHz外部时钟输入;内部提供晶振负载电容(最大30pF);内部提供晶振负载电阻,根据不同时钟配置,负载电阻阻值如下:
Feedback resistor — low-frequency, high-gain mode (HGO=1) 10MΩ
Feedback resistor — high-frequency, high-gain mode (HGO=1) 1MΩ
XTAL和EXTAL管脚在不使用时都可以用作GPIO功能。
锁频环参考时钟为31.25KHz~39.0625KHz,输出时钟频率范围为20MHz~100MHz;
锁相环参考时钟为2MHz~4MHz,输出时钟频率范围为48MHz~100MHz。
锁相环的参考时钟必须为片外时钟。
MCG模块输出时钟可以用作系统时钟;Kinetis振荡器模块包括系统振荡器和实时时钟振荡器两个模块;USB和I2S模块可以使用锁相环产生时钟;FlexTimer模块可以使用固定MCG固定频率时钟(MCGFFCLK)。
所有模块都是依靠MCG产生时钟作为时钟源;MCG模块可以配置振荡器模块;MCG模块一些工作模式需要首先正确配置振荡器模块;SIM模块时钟分频配置需要先于MCG输出频率产生,确保MCG输出时钟不能超过手册设定值;XTAL和EXTAL为对应管脚默认功能;MCG模块没有模块时钟使能控制(MCG模块一直使能)。
MCG模块提供八种不同的工作模式;上电复位工作模式为FEI;只能按照箭头的表示进行模式切换;模式切换之间需要检查某些特定状态位;退出低功耗stop模式时恢复进入低功耗模式前MCG工作模式,低功耗唤醒复位则进入FEI模式。
FEI(锁频环片内时钟模式):内部锁频环使用内部参考慢速时钟作为的参考输入 锁频环的输出作为芯片的工作时钟。FEI模式是时钟模块的缺省模式。
FBI(锁频环旁路片内时钟模式):内部锁频环使用内部参考慢速时钟作为的参考输入,但FLL的输出被旁路,而将内部慢速或者快速时钟作为芯片的工作时钟。
BLPI(低功耗旁路片内时钟模式):MCG模块输出时钟为内部系统时钟。MCG工作在BLPI模式下,锁相环和锁频环处于关闭状态。
FEE(锁频环片外时钟模式):内部锁频环使用外部振荡器作为的参考输入, 锁频环的输出作为芯片的工作时钟。
FBE(锁频环旁路片外时钟模式);内部锁频环使用外部振荡器作为的参考输入,但FLL的输出被旁路,而将外部振荡器输入作为芯片的工作时钟。
BLPE(低功耗旁路片外时钟模式):MCG模块输出时钟为内部系统的时钟。MCG工作在BLPE模式下,锁相环和锁频环处于关闭状态。
PBE(锁相环旁路片外时钟模式):MCG模块输出时钟为系统振荡器时钟。锁相环在PBE模式下处于工作状态,只是锁相环输出时钟未被使用。
PEE(锁相环片外时钟模式):MCG模块输出时钟为锁相环产生的时钟。锁相环通过系统振荡器模块获取外部参考时钟,通过锁相环产生设定频率的输出时钟。
芯片复位后MCG模块工作模式为FEI模式,系统时钟频率根据Flash选项寄存器的设定值(正常启动或低功耗启动)决定。正常启动模式下,系统和总线频率为20.97MHz;低功耗启动模式下,系统和总线频率为20.97/8 (2.62125)MHz.
片内慢速或快速时钟提供自校准功能,通过使能ATC[ATME]位开始自动校准,[ATME]位在校准过程中一直保持设置状态,当校准正常结束时或者异常发生时,[ATME]位才会清零。
自动校准使用 Successive approximation technique (逐次逼近技术)来调整IRC 校准值,直到获得需要的校准频率。
自动校准是从校准值寄存器最高位(MSB)开始,每设置校准值寄存器一位,ATM会产生一个脉冲,内部计数器会按照外部参考时钟频率计数,然后用这个计数值与自动校准比较寄存器所存值比较。通过比较结果,校准值寄存器这一位会保留或清除。这个过程将会持续直到遍历完校准值寄存器的每一位。
进行自动校准使能之前,需要设定比较寄存器的值。根据不同校准内部时钟,会用到两个不同的计算公式。
内部慢速时钟使用:
ATCV Expected counter value = 21*(Fe/Fr)
内部快速时钟(4MHz)使用:
ATCV Expected counter value = 21*(Fe/Fr)*(128)
• Fr = Target Internal Reference Clock (IRC) Trimmed Frequency
• Fe = External Clock Frequency
自动校准的参考时钟为总线时钟,频率在8MHz~16MHz之间。
片内慢速或快速时钟提供自校准功能,通过使能ATC[ATME]位开始自动校准,[ATME]位在校准过程中一直保持设置状态,当校准正常结束时或者异常发生时,[ATME]位才会清零。
自动校准使用 Successive approximation technique (逐次逼近技术)来调整IRC 校准值,直到获得需要的校准频率。
自动校准是从校准值寄存器最高位(MSB)开始,每设置校准值寄存器一位,ATM会产生一个脉冲,内部计数器会按照外部参考时钟频率计数,然后用这个计数值与自动校准比较寄存器所存值比较。通过比较结果,校准值寄存器这一位会保留或清除。这个过程将会持续直到遍历完校准值寄存器的每一位。
进行自动校准使能之前,需要设定比较寄存器的值。根据不同校准内部时钟,会用到两个不同的计算公式。
内部慢速时钟使用:
ATCV Expected counter value = 21*(Fe/Fr)
内部快速时钟(4MHz)使用:
ATCV Expected counter value = 21*(Fe/Fr)*(128)
• Fr = Target Internal Reference Clock (IRC) Trimmed Frequency
• Fe = External Clock Frequency
自动校准的参考时钟为总线时钟,频率在8MHz~16MHz之间。
|