温度补偿晶体振荡器参考设计程序员指南
相关设备:本应用笔记适用于以下设备:C8051F300,C8051F302
1.简介
实时时钟(RTC)用于许多需要跟踪时间和日期的应用中信息.将专用RTC器件添加到电路板的常见解决方案会增加BOM成本增加了电路板空间.更好,更具成本效益的替代方案是将RTC功能实现为微控制器也执行其他有用的任务.TCXO温补晶振,温度补偿实时时钟(TCRTC)参考设计是一个完整的RTC解决方案,包括所需的所有固件和硬件实现具有完整时钟和日历功能的RTC以及温度补偿.这个解决方案与涉及提供类似功能的专用RTC的解决方案相比,可显着节省成本.该设计采用Silicon Laboratories C8051F300混合信号MCU,采用3x3mm 11引脚QFN封装包.
TC-RTCRD固件实现以下功能:
实时时钟,以闰年计算秒,分钟,小时,日期,星期几,月份和年份赔偿有效期至2099年
温度引起的晶振晶体频率变化的自动时间补偿
56字节NVRAM,数据存储在内部闪存中
SMBus/I2C接口或UART接口,具体取决于加载的固件
1.5Hz速率的方波输出信号
本应用笔记介绍了TC-RTC硬件和温度补偿晶体振荡器参考设计程序员指南.
2.硬件概述
TC-RTC参考设计硬件实现为评估板,如图1所示Silicon Laboratories C8051F300MCU使用连接到定时器输入的外部32.768K晶振作为时钟源RTC.RTC评估板提供两个接口-UART和SMBus/I2C.
图1.TC-RTC C8051F300评估板
美国Silicon Crystal公司的C8051F300MCU是一款小型混合信号MCU,具有丰富的功能集,下面列出了本参考设计中使用的MCU的功能:
高速8051内核,25MHz贴片晶振,可提供高达25MIPS的吞吐量
8kB Flash存储器(系统内可编程)和256字节内部数据RAM
25MHz内部振荡器和外部晶振/振荡器输入
8位500 ksps ADC
片上温度传感器
硬件增强型UART和SMBus串行端口
三个通用16位计数器/定时器
使用定时器和外部时钟源的实时时钟模式
本设计中使用的C8051F300MCU的引脚连接如图2所示.
图2.TC-RTC C8051F300MCU引脚连接
3.温补晶振的补偿温度变化
本节介绍TC-RTCRD温度补偿功能背后的操作原理.
3.1、需要赔偿
导致石英晶体频率偏差的主要参数如下:环境温度、水晶的年龄、电源电压.
其中,影响石英晶振晶体频率的主要因素是环境温度.图3显示了一个图晶体频率随温度的变化.从抛物线曲线可以看出,RTC会如果温度从室温值(25℃)升高或降低,则会浪费时间.注意RTC由于最大频率,温度变化(即增益时间)不会产生正误差在室温下.
图3.抛物线温度曲线
最大频率变化约为-0.04ppm/ºC2.因此,可以表示频率偏差如下:
△f/△f=0.04ppmx(△T)2
△T=环境温度-25ºC
3.2、计算时间补偿
TC-RTC参考设计固件每分钟重复以下步骤一次以计算和累积失去的时间.
1.ADC用于测量片内温度传感器的芯片温度.“3.3、计算“环境温度”描述了所涉及的计算.
2.然后使用ADC测量的值计算以ppm为单位的石英晶体偏差,并将结果存储在记忆.这表示需要补偿的微秒数.
在24小时结束时,总累积误差被加到RTC时间以完成补偿处理.假设温度在一分钟内没有广泛变化.
3.3、计算环境温度
片上温度传感器产生的电压输出与绝对温度成正比F300模具如图4所示.显示了该电压与芯片温度之间的典型关系下面:
VTEMP是温度传感器电压输出(mV)
TEMPC是模具温度(℃)