澎湃微PT32x033系列 | 血糖仪专题技术文章连载_06

2022-08-23

 

 

 

丨  概 述  丨

 

常见的RTC芯片,大致可分为三类:

 

  • 非集成RTC:只有RTC计时电路,不集成晶体,不集成温度补偿电路,这类芯片的计时精度主要取决于外接晶体的精度,而且受温度影响大,通常在室温环境下才能够保持较高的精度。
  • 集成晶体的RTC:将RTC计时电路和晶体集成,但一般没有温度补偿电路,同样是只有在室温环境下才能够保持较高的精度。
  • 集成RTC:RTC计时电路、晶体、温度补偿电路(含温度传感器)都集成在一颗芯片中,出厂时进行调校。这类RTC的计时精度可以做的很高,由于温度补偿电路,其受温度的影响非常小。

PT32x033综合这三者的优势和应用场景,集成的RTC支持内部低速RC震荡时钟(LSI)或低速外部晶体或陶瓷谐振器时钟(LSE),一个内部的高精度补偿机制提供最大0.953ppm的补偿单元,可以为血糖仪应用提供高精度和高准度的实时时钟。

 

 

 

 

无需外部分立元件!集成振荡电路的LSE时钟

1.1   

 

图1.集成振荡电路的LSE时钟

 

仅需一个32.768Khz的晶振!即可实现LSE时钟。

PT32x033集成了片内的可变电容和可调电阻,作为振荡电路的负载电容和反馈电阻,可变电容支持2pF~30pF的调节,反馈电阻支持6~8MΩ的调节,降低了电容和电阻的成本,为PCB Layout提供更友好的支持。

 

两个寄存器被用于配置这些集成的分立器件:

外部低速时钟控制寄存器1(RCC_LSECR1)(地址0x4000_1828)

外部低速时钟控制寄存器2(RCC_LSECR2)(地址0x4000_182C)

 注  调整负载电容时,应当考虑数据手册中给出的引脚电容。

 

 

 

带补偿机制的RTC实时时钟

1.2   

 

 

实时时钟是一个独立的定时器,在系统复位时或低功耗模式下,RTC的设置不变,内部计数器仍旧计数。

 

RTC拥有一组日历寄存器组,一个连续计数的计数器用于更新这组寄存器,在相应软件配置下,可提供日历时钟的功能,修改这个日历寄存器组的值可以重新设置系统当前的时间和日期,计数器则从修改的时间点继续开始计数。

 

一组软件配置的闹钟寄存器组则用于支持RTC的闹钟功能,当闹钟发生时,中断或者标志置位。

 

内部的高精度补偿机制提供最大0.953ppm的补偿单元。

 

​图2.RTC的框图

 

 

 

RTC配置的例程

1.2.1   

 

 

RTC的基本配置在标准库函数钟,仅需几个简单的步骤,如下图所示。

 

图3.RTC配置例程

 

 注  

1. 默认的参数配置使用LSE作为RTC时钟源
2. 保障RTC正常运行,任何情况下,都应避免关闭RTC时钟源

 

 

 

使用RTC补偿机制补偿RTC

1.2.2   

 

 

通过设置RTC_CR寄存器(地址0x4001_3C00)的TME位为1以使能RTC补偿机制,通过配置RTC_TRIM寄存器的TRIM[8:0]位(地址0x4001_3C3C),以选择所要补偿的值,补偿机制公式如下:

 

其中:

  • TRTC_BEACON为1hz的时标信号周期值

  • T1hz为理论的1hz信号周期值

 

 

 注  

1. TRIM[8:0]为9位的有符号数
2. 补偿机制仅建议在MCU外部工作环境(温度、湿度)波动较小的场合使用
3. RTC补偿机制以时标信号为参考,使用时,需要使能时标信号输出