上一篇最后的部分我们用一个例程来对时钟系统的设置有了个正面的认识,只给出了程序没有仿真图示,原因是我所使用的仿真环境下对时钟系统的设置是无效的,选择时钟源没有效果,设置通过指定的引脚同步输出波形也没有效果,只有在通过外部时钟源输入时钟信号才可以设置,这个的使用我们将在定时器的说明时给出。其实还是用块板子比较踏实,仿真和实际有时候真是搞笑,那天他们用单片机做个东西,仿真可以过的在板子上就没反应。倒是仿真没反应的到了板子上竟然很随意的样子,搞不懂。
寄存器 符号 寄存器类型 地址 初始化状态 DCO控制寄存器 DCOCTL 读/写 056H 带PUC的060H 基础时钟系统控制寄存器1 BCSCTL1 读/写 057H 带POR的087H 基础时钟系统控制寄存器2 BCSCTL2 读/写 058H 带PUC的复位 基础时钟系统控制寄存器3 BCSCTL3 读/写 053H 带PUC的005H SFR中断使能寄存器1 IE1 读/写 000H 带PUC的复位 SFR中断标志寄存器 IFG1 读/写 002H 带PUC的复位
上表给出了设置时钟模块时需要操作到的寄存器,下面让我们去这些寄存器的内部去游览一番。
DCOx:DCO频率选择。这几位选择由RSELx设置位已经选定的REL基础上的8个离散的DCO频率。
MODx:调节器选择。这几位决定在32个DCOCLK周期内频率出现的次数。
XT2OFF7位关闭XT2。
XT2打开 XT2不用于SMCLK或MCLK则关闭
XTS 6位LFXT1模式选择
低频模式 高频模式
DIVAx 5-4位ACLK分频
/1 /2 /4 /8
XT5V 3位 未使用
RSELx 2-0位 范围选择。通过内部寄存器来8种频率阶次。
SELMxBits 7-6选择MCLK的时钟源
DCOCLK DCOCLK 当有XT2时选择XT2CLK,否则选择LFXT1CLK LFXT1CLK
DIVMxBits5-4 MCLK的分频系数
/1 /2 /4 /8
SELS Bit 3 选择SMCLK的时钟源
DCOCLK 当有XT2时选择XT2CLK,否则选择LFXT1CLK
DIVSxBit2-1 SMCLk分频系数
/1 /2 /4 /8
DCORBit0 DCO电阻选择
内部电阻 外部电阻
Bits7-2 这些位被其他模块使用。
IFIE Bit1 振荡器失效中断使能。此位使能OFIFG中断。
0 禁止中断
1 使能中断
Bit0 该位可用于其他模块。
Bits7-2这些位被其他模块使用。
OFIFGBit1 振荡器失效中断标志位。
0 没有未相应的中断
1 有未被相应的中断
Bit0 该位可用于其他模块。
当然这些寄存器、标志位不需要过分记忆。不用的话记住也没用,用的话自然而然的就能想起,大不了查找下手册看看而已。
下面我们来看一个比较特别的模块。作为一款优秀的MCU,MSP430可谓为用户使用考虑到了极致,对于基础时钟模块而言,不仅提供了灵感便捷色时钟模块,而且还提供了一个时钟模块自动放故障操作。
在基础时钟模块中整合了一个振荡器失效保护自动防故障模块。通过一个振荡器失效检测器的模拟电路来监视LFXT1CLK(in HF mode)和XT2CLK。当任意的这两个时钟源信号失效后50us内振荡器失效保护模块就会自动工作。如果这个时候MCLK的时钟源选自失效振荡器,那么就会自动转到DCO作为其时钟源,这样就可以在晶体振荡器失效的情况下仍然能够保证代码的执行。
上图是其运行的时序图。
当OFIFG和OFIE标志位被置位时将产生一个NMI请求。NMI中断服务程序将检测OFIFG标志位来决定是否有振荡器失效发生。OFIFG标志位必须由软件清除。
当产生振荡器失效信号时OFIFG被置位。当LFXT1(in HF mode)产生振荡器失效或者当XT2产生振荡器失效时,在POR中XT_OscFault将被置位。也就是当XT2或者LFXT1 在高频模式下因为软件原因停止后XT_OscFault信号将立即有效,并且持续有效直到振荡器重启。
设计资源 培训 开发板 精华推荐
- 使用 LTC1863CGN 12 位、8 通道、200Ksps ADC 实现差分输入的典型应用电路
- 2019电赛A题-无线充电小车设计方案及报告(国二,南航)
- DEV-ADC34J22 是一款四通道 ADC 子卡,具有 ADC34J22 四通道、12 位、50Msps、符合 JESD204B 的模数转换器
- 使用 ROHM Semiconductor 的 BD45281 的参考设计
- USB延长转接头
- LT4276CIUFD 25.5W(类型 2)PoE+ 电源在反激模式下的典型应用电路,具有 12V、1.9A 输出
- 使用符合 EN55022 B 类(24Vin 和 48Vin,单输出)具有 EMC 滤波的 RP40-483.3SFR DC/DC 转换器的典型应用
- AN1335,使用 dsPIC DSC 的相移全桥 (PSFB) 四分之一砖 DC/DC 转换器
- ADP2114-EVALZ,评估板双输出,2 A 时为 3.3 V,2 A 时为 1.8 V,600 kHz 开关频率,脉冲跳跃使能
- 16X16点阵模块+STC8G主控(共阳点阵)