全部学习汇总: GreyZhang/g_TC275: happy hacking for TC275! (github.com)
继续SCU模块的学习,这一次主要是看一下锁相环的操作。锁相环之前接触的不少了,其实主要的一个功能就是提升单片机的时钟主频。
1. 备份时钟其实也是稳定可靠的,但是这个备份时钟的精准度不是很好。
2. 正常使用,MCU的主频会比晶振高很多,这时候需要用锁相环来提升时钟速度。
3. 锁相环是可以检测外部时钟的退化的,如果异常则执行紧急措施。
1. 这里猜测锁相环的丢失可能是这个模块的看门狗检测的,这个理解是理解错误的,后面出现了具体的佐证。
2. 单片机的锁相环的一个特性:可以进行无波动的切换。
1. 前面所说的时钟丢失检测不是看门狗检测的一个佐证就是上面的拓扑图,这里面的时钟丢失检测是一个单独的模块。
2. 这几个公式给出来了正常模式的主频提升的规律逻辑。
1. 这一页给出来了预分频模式以及自由运行模式的锁相环的速度计算逻辑。
2. 每次系统复位之后会进入到自由运行的模式。
1. 如何进入自由运行的模式,这里给出来了软件设置的步骤。
2. PLL丢锁之后的安全保障就是进入自由运行模式,在这个模式下可以继续处理一些关键的信息。
1. 如果配置影响了PLL2可能会导致很多外部通信异常,这么看,很多外部通信模块的时钟源应该是来自于PLL2。
2. 与前面的输入时钟过低的检查类似,时钟过高也有一个合理性检查。
1. PLL1设置稳定成功之后,有状态位给出指示。
2. 锁相环的设置对于功耗的影响可能会比较大。
3. 继续往下,给出了如何退出分频模式的方法。
1. 这里给出了进入到正常模式的软件配置方法。
2. 正常模式下也应该检查时钟输入的合理性。
1. 相比于其他的模式的配置,比如说预分频模式的配置,正常模式多了两个配置参数。
2. VCO的锁定丢失,会产生alarm报告给SMU。
3. 一般来说,P、N的数值设置的低一些,功耗相对来说就低一些。反之也是这样,当数值越大的时候功耗就越高。
1. 默认的运行过程中可能会有SMU的报错,初始化的时候应该考虑清除掉。
2. 从这里看,PLL丢锁的一个故障注入方式其实是可以通过屏蔽外部的晶振信号来实现的。
3. VCO功率降低的模式,本质上是限制了一些功能。而PLL的功率降低模式则是直接关闭了PLL。
这就是这一次看的锁相环的操作的部分,说起来还是很有收获的,也获知了一些之前没有注意到的概念信息。