如何进行STM32 RTC的亚秒值精确校准?
- 内容介绍
- 文章标签
- 相关推荐
本文共计292个文字,预计阅读时间需要2分钟。
STM32学习笔记——RTC的亚秒值校准
1.使用GPS作为RTC+ gps模块配置使APP出现震荡,单片机使用pps中断作为RTC校准的标准时钟。解析GPS模块输出的RMC消息中的年月日时分秒的值,在pps中断发生时更新RTC。
STM32学习笔记——RTC的亚秒值校准 1. 使用GPS作为RTC gps模块配置出PPS脉冲,单片机使用pps中断作为RTC校准的标准时钟。解析GPS模块输出的RMC消息中的年月日时分秒的值,在pps中断发生时候默认是没秒的开始,也就是此时亚秒值应该为0。这时候和本地的RTC时钟做对比,进行后续的校准工作。
2. RTC亚秒校准的相关寄存器
校准亚秒时使用HAL_RTCEx_SetSynchroShift函数。
参数1:RTC_Handler:要校准的RTC
参数2:ShiftAdd1S:如果这个值置为RTC_SHIFTADD1S_SET将会在RTC的RTC_TR中加一秒。置为RTC_SHIFTADD1S_RESET不会更改秒值
参数3:ShiftSubFS:要调整的值占的RTC_SSR 的值。SSR寄存器是一个从256开始倒计时的寄存器。
本文共计292个文字,预计阅读时间需要2分钟。
STM32学习笔记——RTC的亚秒值校准
1.使用GPS作为RTC+ gps模块配置使APP出现震荡,单片机使用pps中断作为RTC校准的标准时钟。解析GPS模块输出的RMC消息中的年月日时分秒的值,在pps中断发生时更新RTC。
STM32学习笔记——RTC的亚秒值校准 1. 使用GPS作为RTC gps模块配置出PPS脉冲,单片机使用pps中断作为RTC校准的标准时钟。解析GPS模块输出的RMC消息中的年月日时分秒的值,在pps中断发生时候默认是没秒的开始,也就是此时亚秒值应该为0。这时候和本地的RTC时钟做对比,进行后续的校准工作。
2. RTC亚秒校准的相关寄存器
校准亚秒时使用HAL_RTCEx_SetSynchroShift函数。
参数1:RTC_Handler:要校准的RTC
参数2:ShiftAdd1S:如果这个值置为RTC_SHIFTADD1S_SET将会在RTC的RTC_TR中加一秒。置为RTC_SHIFTADD1S_RESET不会更改秒值
参数3:ShiftSubFS:要调整的值占的RTC_SSR 的值。SSR寄存器是一个从256开始倒计时的寄存器。

