By  eggs  behalf  pregnant Y

By  eggs  behalf  pregnant Y█ Micro Signal █: 138 • 0226 • 9370█ █ successful surrogacy package bag pack healthy sex surrogate █ ██ bag boy

RTC can not wake-up pin, and therefore not applicable related register bits (e.g. RTC_CR [WPS], RTC_CR [WPE], RTC_IER [WPON]).

Furthermore, the device is not integrated capacitor can not tunable capacitor (including the crystal oscillator) by a software configuration.

   

The device has no internal 32.768 kHz crystal oscillator. This chapter all to 32.768 kHz clock references are RTC_CLK. For available clock sources, see Table 27-9 RTC clocking in.

   

   

Screen capture time clip: 2019/3/9 10:19

   

   

RTC interrupt is enabled at reset, as the RTC_IER register. Once enabled interrupt in the NVIC, interrupted may occur.

Before enabling RTC, RTC should provide a software reset.

   

RTC can not be generated in the plurality of flip-flops and VLPS STOP (by TRIGMUX). For example, the trigger LPIT will not work in the accumulator mode because it requires multiple triggers. For other power mode, it may generate a plurality of triggers normally.

   

characteristic

RTC function module comprises:

• 32-bit second counter, having a rollover protection and alarm functions 32

• 16-bit pre-demodulator, with a compensation function, the correctable error between 0.12 ppm to 3906 ppm

• choosing 1khz LPO preconditioner is increased (an increase of 32 per clock edge of the pre-demodulator)

• Write protection register

• Lock POR or software reset registers need to enable write access

• Configurable 1,2,4,8,16,32,64 or 128 Hz square-wave output, selectable interrupt

   

Mode of operation

RTC can work in all low-power modes, and can generate an interrupt to exit any low-power mode.

   

   

   

Screen capture time clip: 2019/3/9 10:38

   

   

   

Register Definition

All registers must use the 32-bit write access, access to all registers will lead to three wait states.

Non-management software for any write access to the register, when managing access control register bit clear, it will terminate bus error.

Read access to non-management software completed normally.

Lock Register write protected by the register does not generate a bus error, but will not complete the writing.

   

   

   

   

Screen capture clip time: 2019/3/9 10:43

   

   

   

   

Power, clock and reset

RTC is always a power, remain available in all low-power mode.

RTC的时间计数器默认时钟是32.768 kHz。

或者,时间计数器可以由一个LPO 1khz时钟计时,预调器将为每个LPO时钟增加32。

上电复位信号初始化所有RTC寄存器到它们的默认状态。软件复位位也可以初始化所有的RTC寄存器。

   

振荡器控制

32.768kHZ的晶体振荡器在上电复位是禁用的,必须通过软件启用。

启用晶体振荡器后,设置SR[TCE]或使用RTC外部的振荡器时钟前等待振荡器启动时间。

该晶体振荡器包括可调谐电容器,可通过软件配置。除非振荡器被禁用,否则不要改变电容。

   

   

   

软件复位

将1写入CR[SWR]就相当于把RTC模块重新上电复位。

CR[SWR]不受软件复位的影响,必须由软件清除。

   

supervisor access

当the control bit 置0时,只有supervisor mode软件才能写入RTC寄存器,non-supervisor mode软件将产生总线错误。无论是管理员模式还是非管理员模式的软件都可以读取RTC寄存器。

   

   

   

Time counter

时间计数器由每秒钟递增一次的32位秒计数器和每32.768 kHz时钟周期递增一次的16位预分频寄存器组成。还可以选择使用一个1 kHz的LPO对预调度器进行计时,该LPO在每个时钟周期内将预调度器增加32。

   

在计时计数器(秒或预调器)递增时读取计时计数器可能会由于读取数据总线的同步而返回无效数据。如果软件需要在预调器或秒计数器可以递增时读取它们,建议执行两次读取访问,并且软件验证两次读取返回的数据是否相同。

   

只有当SR[TCE]置0,才可以写秒寄存器和时间预分频器。在写入秒寄存器之前,始终要先写入预计算寄存器,因为秒寄存器在预计算寄存器的第14位下降沿上递增。

   

如果设置了SR[TCE]置1、SR[TIF]置0、SR[TOF]置0和32.768 kHz(或1 kHz)时钟源,则时间预调寄存器增量。启用振荡器后,等待振荡器启动时间,然后再设置SR[TCE],使振荡器时钟输出的时间稳定下来。

   

如果时间秒寄存器溢出,那么SR[TOF]将被置1,时间预分配器寄存器将停止递增。通过初始化时间秒寄存器来清除SR[TOF]。当SR[TOF]为1时,时间秒寄存器和时间预估寄存器读取为零。SR[TIF]在POR和软件重置上设置,并通过初始化时间秒寄存器来清除。每当设置SR[TIF]时,时间秒寄存器和时间预调寄存器读取为零。

   

SR[TIF]在上电复位和软件复位会被置1,通过初始化时间秒寄存器来清0。当SR[TIF]为1,时间秒寄存器和时间预调寄存器读取为零。

   

补偿

补偿逻辑提供了一个准确和广泛的补偿范围,可以纠正高达3906 ppm和低至0.12 ppm的错误。补偿因子必须由外部计算到RTC,并由软件提供给补偿寄存器。RTC本身并不计算所需的补偿量,通过1hz时钟输出到外部引脚以支持外部校准逻辑。

   

晶体补偿可以通过使用固件和晶体特性来确定补偿量。温度补偿可以由固件支持,固件定期通过ADC测量外部温度,并根据指定晶体频率随温度变化的查找表更新补偿寄存器。

   

补偿逻辑改变了预分配器寄存器溢出和增加时间秒计数器所需的32.768 kHz时钟周期数。时间补偿值用于调整-127到+128之间的时钟周期数。

当预编程序寄存器等于0x3FFF时,从预编程序寄存器中添加或减去循环,然后递增。补偿区间用于调整使用时间补偿值的频率,即从每秒一次调整到每256秒一次。

   

如果上一个补偿间隔已经过期,则对时间补偿寄存器的更新将直到下一次时间秒寄存器增量时才生效。

当补偿间隔设置为每秒一次以外的时间间隔时,补偿应用于第一个秒间隔,其余秒间隔不接受补偿。

   

通过将时间补偿寄存器配置为零,可以禁用补偿。

当预调器配置为使用1 kHz LPO递增时,有效补偿值除以32,只能调整-4到+3之间的时钟周期数。

   

Time alarm

时间报警寄存器(TAR)、SR[TAF]和IER[TAIE]允许RTC在预定义的时间生成中断。32位TAR每次递增都会与32位时间秒寄存器(TSR)进行比较。SR[TAF]将在TAR = TSR和TSR增量时置1。

   

通过写TAR清除SR[TAF]。这通常是下一个报警值,尽管写一个小于TSR的值,比如0,将阻止SR[TAF]再次设置。否则不能禁用SR[TAF],尽管它生成的中断由IER[TAIE]启用或禁用。

   

更新模式

控制寄存器(CR[UM])中的更新模式字段配置对时间计数器Enable (SR[TCE])字段的软件写访问。当CR(嗯)是明确的,可以编写SR (TCE)只有当LR (SRL)。当CR(嗯),SR (TCE)也可以写当SR (TCE)是明确的或当SR (TIF)或SR (TOF)。这使得时间秒,预定标器寄存器初始化时时间是无效的,而防止时间秒,预定标器注册动态改变。当

设置LR[SRL], CR[UM]对SR[TCE]没有影响。

   

寄存器锁

锁寄存器(LR)可以用来阻止对某些寄存器的写访问,直到下一次POR或软件重置。锁定控制寄存器(CR)将禁用软件重置。锁定LR将阻止将来对LR的更新。

对锁定寄存器的写访问将被忽略,并且不会生成总线错误。

   

中断

RTC中断在状态标志和相应的中断启用位同时置1时被启用。它总是在POR和软件重置上被启用。通过启用特定于芯片的RTC时钟门控制位,可以在芯片级启用RTC中断。RTC中断可以用来唤醒芯片从任何低功耗模式。

RTC秒中断是一个边缘敏感的中断,它有一个专用的中断向量,每秒生成一次,不需要软件开销(没有相应的状态标志需要清除)。它在RTC中通过时间秒中断启用位启用,在芯片级通过设置芯片特定的RTC时钟门控制位启用。秒中断的频率默认为1hz,但是可以将其配置为每2、4、8、16、32、64或128 Hz触发一次。

   

   

   

Time Prescaler Register

当时间计数器启用时,只读取TPR,并且每32.768 kHz时钟周期递增一次。

当设置SR[TOF](Time Overflow Flag)或SR[TIF](Time Invalid Flag)时,时间计数器读取为零。当禁用时间计数器时,可以读取或写入TPR。当TPR的第14位(32767)从逻辑1转换到逻辑0时,TSR[TSR]递增。

   

由一组可编程计数器组成,分成两个模块。第一个模块是RTC的预分频模块,它可编程产生最长为1秒的RTC时间基准TR_CLK。RTC的预分频模块包含了一个20位的可编程分频器(RTC)TR_CLK 周期中RTC产生一个中断(秒中断)。第二个模块是一个32位的可编程计数器,可被初始化为当前的系统时间。系统时间按TR_CLK周期累加并与存储在RTC_ALR寄存器中的可编程时间相比较,如果RTC_CR控制寄存器中设置了相应允许位,比较匹配时,将产生一个闹钟中断。

Guess you like

Origin www.cnblogs.com/DENG012/p/10947763.html