我正在为定时函数配置RTC模块,
RTC_CLK_CONFIG(RTC_DIV_DEDOM_1024,32768);
我想知道rtc_div_denom_1024和rtc_div_denom_1000之间有什么区别,哪个配置更准确?
谢谢!
关键词:
设备:
我正在为定时函数配置RTC模块,
RTC_CLK_CONFIG(RTC_DIV_DEDOM_1024,32768);
我想知道rtc_div_denom_1024和rtc_div_denom_1000之间有什么区别,哪个配置更准确?
谢谢!
嗨Zyosintek,
RTC精度紧密依赖于时钟源,即低功耗时钟(LPC)。LPC可以是32768 Hz的外部晶体振荡器(XTAL32K)或内部RCX(从13kHz到15kHz)。
根据数据表,RTC块所需的100Hz,即标准时钟。对于100Hz生成,需要RTC_DIV_INT(0x147 = 327)LPC周期。
LPC是:1/32768 Hz = 0.000030517578125秒,100Hz为0.01秒。
所以,对于100Hz的一代,0.01 / 0.0030517578125 = 327.68LPC循环。
根据RTC_DIV_INT描述,整数部分(327)将用于时钟生成。
RTC 100Hz生成(RTC_DIV_FRAC)的分数部分为0x2A8 = 680.这将由RTC_DIV_DDDOM除以。默认值为1000(RTC_DIV_DED_1000),因此680/1000 = 0.68
该值将被添加到rtc_div_int的整数部分,因此该值变为327.68。
如果327.68由LPC(1/32768)除以,则RTC块将采用完全100Hz。
谢谢,PM_DIALOG.
谢谢你的答案,所以我应该选择这个配置(rtc_div_denom_1000)