全部学习汇总: GreyZhang/g_TC275: happy hacking for TC275! (github.com)
从这一份笔记开始看一下SCU系统,其实这个是一个功能组合,其中的一个小模块又叫做SCU。因此,在名称上可能会有一点点绕。近段时间看相关的资料比较多,有点疲惫。因为所有的文档章节内容看上去都是很绵长,时间久了让人的心理产生一些倦怠。我给自己找了一个小方法,那就是每次看有限的页数。因此,后面的笔记我尽量一次只看10页,这样把学习任务拆分成比较容易完成的小任务。问题自然是以后的学习笔记完整性会有些影响,但是学习效率以及质量应该会有提升。
1. 这里的CCU以及CCU6应该不是同一个东西,不同的缩写,印象中之前是看到过的但是有些没记住。
2. RCU是复位控制单元,在嵌入式的软件设计中应该是一个很常用的功能。
3. SCU应该是后者的缩写,主要是系统个控制单元的意思。
1. 理解时钟一般来说要有一个时钟树的模型,这里提出来了两个概念,一个是时钟链,另一个是时钟树。
2. 运行中的系统时钟树只能够修改局部不能进行完整的修改。
3. 时钟源的选择有多种方式。
1. 虽然时钟源的选择有多种方式,但是如果外设功能定了之后,选择其实只能够选择一个。
2. OSC,内部是一个皮尔斯电路,带有一个反向的放大器。可以配合外面的晶振或者时钟来使用。
3. 如果采用旁通的模式,直接使用外部的时钟信号。那么输入时钟的频率必须大于等于PLL VCO的输入频率。
1. 看到这里很容易疑问为什么有了内部的阻容还得用外部的,其实答案是在后面。
2. 内部阻容其实是有多种选择的,主要是电容,电阻其实是恒定的,处理虚线的测试电阻。电容,从开关的示意就可以看出来。
1. 为什么不用内部的电阻电容呢?其实按照这里的说法,这种设计不能够用于产品化的设计,只能够用作功能评估。
2. 最终的设计强烈建议去做一下晶振幅值的测试,看一下是否满足晶振设计的要求。
1. 输入的时钟的频率是否会过低,是有这方面的一个合理性检查的。
2. 晶振看门狗的复位,写入不同会有不同的效果,但是回读的数值一直为0。
1.增益的选择一般不用选择,默认是最合理的配置。
2. 前面看到了输入时钟的多低合理性检查,这里是另一个边界,过高的检查。
1. 晶振看门狗的监控有一个期待的时钟频率,通过分频器的配置设置。
2. 前面框图中看到的电容的选择使能描述,这里有相应的寄存器配置支持。
1. 电容的使能配置有两种方式,一种是在启动软件中配置,另一种是在启动软件之后。如果是在启动软件中修改,需要修改UCB。
2. 如果使用了内部电容,幅值调整的配置必须要用。
1. 启动代码过后的修改,有ENDINIT的保护。
2. 如果晶振输入的两个PIN不用,那么XLAT1是可以用作输入的,但是XLAT2不支持。
3. 晶振时钟的看门狗监控,必须有一个稳定时钟为前提。输入监控的配置,前面看寄存器的时候看到了。
1. 分频器的配置需要让看门狗的期望时钟为2.5M或者接近2.5M。
2. 使能这个看门狗需要先关闭SMU的警报,不然可能会触发非期待的trap。
这样,这一次的SCU中CCU模块的一部分功能就结束了,下一次看看能不能把这个模块看完。