本帖最后由 FSL_TICS_Jeremy 于 2014-8-15 16:35 编辑
Kinetis 实时时钟模块(RTC)培训材料
RTC即实时时钟模块。
RTC振荡器框图,提供可配置的负载电容,提供反馈电阻以及振幅增益控制。
RTC振荡器提供RTC模块参考时钟。
RTC模块主要特性:
独立供电系统,通过VBAT管脚提供RTC模块和外部32.768KHz晶振电源,芯片主电源掉电后,RTC模块可以正常工作。
RTC模块使用32位的计数器。
提供闹钟功能(以秒为单位)。
RTC振荡器提供内部反馈电阻,可配置的反馈电容,不需要再外接电容和电阻。
自动增益控制,可以有效降低功耗。
提供.12ppm到3906ppm时钟补偿功能。
寄存器提供写保护机制。
RTC模块寄存器配置首先需要SIM模块使能模块时钟,RTC模块产生中断需要配置NVIC相应寄存器。
RTC模块寄存器配置顺序:
RTC模块具有两种操作模式,系统加电和系统掉电。系统加电时RTC模块由VBAT供电,所有的RTC寄存器在SIM模块RTC时钟使能后可以访问。
VBAT上电后或者RTC模块软件复位后(请注意是RTC模块软复位,而不是芯片软复位),需要重新使能RTC振荡器,并且清除时钟无效标志位,写入正确的秒数。秒和预分频寄存器必须在计数器未工作之前配置,RTC振荡器需要在RTC模块开始工作前开启。
在系统掉电模式下,RTC可以继续工作,RTC寄存器无法访问。
通过设置RTC_TCR寄存器来配置实时时钟补偿值,[CIR]控制补偿间隔,[TCR]设置补偿值。
RTC状态,控制,补偿寄存器可以被保护(lock),一旦lock之后必须要通过VBAT上电复位或者RTC软复位来解除lock。
读写存储寄存器可以控制RTC寄存器的读写属性。
RTC控制寄存器
[OTE]位配置RTC振荡器处于测试模式;
[SCxP]选择负载电容值;
[CLKO]使能其他模块可以使用RTC振荡器产生时钟,例如MCG要工作于FEE模式时,需要使能这一位;
[OSCE]使能RTC振荡器;
[UM]允许TSR和TPR寄存器在RTC计数器不工作时可以更改;
[SUP]设定RTC寄存器可以在用户模式下被访问;
[WPE]使能RTC唤醒功能;
[SWR]产生RTC模块软复位。
RTC模块只对应一个中断服务向量,所以在产生中断时要轮询中断状态位,确定什么原因产生的中断。
闹钟标准,TSR溢出,时钟无效或者VBAT掉电均可产生中断。
可以在任何低功耗模式下唤醒内核。
可以通过RTC外部唤醒管脚唤醒外围设备。
提供32字节VBAT存储空间,可以在任何低功耗模式下保留数据。
硬件电路设计,RTC需要选用32.768KHz晶振。
不需要外部负载电容和反馈电阻。
内部提供负载电容和反馈电阻。
kinetis内部培训模块RTC.pdf
(398.29 KB)
|