MSP430F5438时钟系统
要了解一款芯片,最直观的就是官方给的芯片的特点(FEATURES);要用好一款芯片,就必须从数据手册了解芯片的各个功能;要开发一款芯片,我们就不许从最基本的时钟系统出发。本文着重介绍下MSP430F5438的时钟系统,也是整个5系列的时钟系统,这是我接触的第一款430芯片,如有错误,欢迎指正。
统一时钟系统( Unified Clock System (UCS) )为芯片提供不同的时钟,下图可以看出:5438有4个时钟系统,分别是辅助时钟(ACLK),主时钟(MCLK),子系统时钟(SMCLK),以及专用时钟(MODCLK)。
首先看看这些时钟的来源。
除了专用时钟外,他们都可以来至XT1CLK,VLOCLK,REFOCLK,DCOCLK,DCOCLKDIV,XT2CLK,只需要配置对应的寄存器即可应需选择。其中,XT1CLK来至外部的XIN和XOUT管脚通过OSC寄存器得到,通常用32768Hz晶振;VLO(Very-Low-Power Low-Frequency Oscillator)和REFO(Low-FrequencyReference Oscillator)直接由OSC寄存器产生(属于内部时钟);DCOCLK(Digitally-Controlled Oscillator)和DCOCLKDIV(DCO分频得到)来至FLL(FrequencyLocked Loop)寄存器(属于内部数字时钟);XT2CLK来至外部的XT2IN和XT2OUT管脚。
在5438芯片PUC(Power up clear)即上电清除过后,UCS(Unified Clock System)默认配置为:
1. • XT1 工作在 LF(Low-Frequency)模式 作为ACLK(与第5条冲突,但手册就是这么写的,我也不懂);
2. • DCOCLKDIV 作为 MCLK;
3. • DCOCLKDIV 作为 SMCLK;
4. • FLL 工作,而且 XT1CLK 作为FLL的参考时钟(FLLREFCLK);
5. •XTIN和XTOUT若不配置则作为通用I/O口,XT1禁止;配置后才作为XT1;
6. • XT2IN和XT2OUT作为通用I/O口,XT2禁止。
那么现在就开始配置时钟了。我就选其中一个时钟MCLK(主时钟)的配置讲解,其他的时钟大同小异。