外部高速时钟(HSE)支持两种工作模式:
• 石英晶体 / 陶瓷谐振器,设置外置高频晶体控制寄存器 SYSCTRL_HSE 的 MODE 位域为 0,同时须配置
OSC_IN、OSC_OUT 引脚为模拟功能。
• 外部时钟输入,设置外置高频晶体控制寄存器 SYSCTRL_HSE 的 MODE 位域为 1,同时须配置 OSC_IN 引脚
为数字输入功能。
石英晶体 / 陶瓷谐振器时钟模式外置石英晶体 / 陶瓷谐振器接在 OSC_IN 和 OSC_OUT 两个引脚之间,配合起振电容,产生稳定的 4~32MHz 时钟信号,电路连接如下图所示:
石英晶体 / 陶瓷谐振器和起振电容须尽可能靠近芯片振荡器引脚放置,使得振荡器输出失真和启动时间达到最小。起振电容取值大小须根据所选择的石英晶体 / 陶瓷谐振器进行调整,计算方法为:CL= ( CL1×CL2 ) / ( CL1 + CL2 ) + C0
其中,CL 为晶体标称负载电容值;C0 为杂散电容值,跟电路板设计相关,一般可取值 4pF ~ 6pF;CL1 和 CL2 为外接的 2 个起振电容,通常 CL1 和 CL2 相同。如用户采用标称负载电容值为 12.5pF 的晶体谐振器,则晶体外接的 2 个起振电容常见取值为 15pF。注:由于晶体厂家众多,各厂家晶体特性各不相同,如果 HSE 振荡器输出时钟信号不理想,可联系晶体供货厂家协调处理。
为保证 HSE 振荡器的性能,需要根据外接晶体的标称频率来设置外置高频晶体控制寄存器 SYSCTRL_HSE 的FREQRANGE 位域,如下表所示:
用户可以通过设置外置高频晶体控制寄存器 SYSCTRL_HSE 的 DRIVER 位域进行驱动能力调节,有四档驱动能力可选择,驱动能力越强功耗越大。用户可根据需要在时钟可靠性、启动时间以及低功率消耗三者之间取得平衡。
外部时钟输入模式
外部时钟输入模式下,外部时钟从 OSC_IN 引脚输入,OSC_OUT 引脚可以作为通用 GPIO 使用。输入的时钟信号可以是方波、正弦波或者三角波,占空比必须在 40% ~ 60% 之间,频率在 4 ~ 32MHz 之间。HSE 两种工作模式下,HSE 时钟振荡器上电后均默认处于关闭状态,通过设置系统控制寄存器 SYSCTRL_CR1 的HSEEN 位域为 1 启动。HSE 振荡器启动后,当芯片内部时钟监控模块检测到一定数量的 HSE 时钟信号,则认为 HSE 时钟已稳定。检测时钟数量可通过外置高频晶体控制寄存器 SYSCTRL_HSE 的 WAITCYCLE 位域进行设置,如下表所示:
通过外置高频晶体控制寄存器 SYSCTRL_HSE 的 STABLE 标志位,可确定 HSE 时钟的起振状态,STABLE 标志为1 则 HSE 时钟已稳定,为 0 则表示 HSE 时钟还未稳定。
注:HSE 振荡器应在启动前设置好所有参数,启动后禁止修改相关参数。
|