HW RTC

来自拉普兰德Wiki
跳转至: 导航搜索

固件说明

HW_RTC.c和HW_RTC.h是RTC模块的固件驱动文件,这里定义了RTC初始化函数等相关函数。

结构体

RTC_InitTypeDef

RTC初始化结构体
变量 描述 取值 初始化
uint32 RTC_Seconds 设置RTC秒计数器起始值 如果计数器设置为0,在不复位的情况下可计数2的32次方秒,约136年 必须初始化
uint32 RTC_AlarmTime 设置报警值 当报警值等于RTC_TSR,设置TAF标志位,可触发中断 如果需要报警功能,必须初始化
boolean RTC_InvalidIntEnable 开启RTC 无效数据中断 TRUE - 使能

FALSE - 关闭

不必须初始化,默认值FLASE
boolean RTC_OverflowIntEnable 开启RTC 计数器溢出中断 TRUE - 使能

FALSE - 关闭

不必须初始化,默认值FLASE
boolean RTC_AlarmIntEnable 开启RTC 报警中断 TRUE - 使能

FALSE - 禁止

不必须初始化,默认禁止Rx FIFO方式
RTC_ISR_CALLBACK RTC_InvalidIsr 无效数据中断回调函数 函数必须为无返回值,无参数(eg. void isr(void);) 不必须初始化、如未初始化则不会触发中断
RTC_ISR_CALLBACK RTC_OverflowIsr 计数溢出中断回调函数 函数必须为无返回值,无参数(eg. void isr(void);) 不必须初始化、如未初始化则不会触发中断
RTC_ISR_CALLBACK RTC_AlarmIsr 报警中断回调函数 函数必须为无返回值,无参数(eg. void isr(void);) 不必须初始化、如未初始化则不会触发中断

变量

函数

LPLD_RTC_Init()

函数原型

uint8 LPLD_RTC_Init(RTC_InitTypeDef )

描述

RTC初始化函数

形参

类型 名称 描述 取值
RTC_InitTypeDef rtc_init_structure RTC初始化结构体 结构体定义见RTC_InitTypeDef

输出

0--配置错误
1--配置成功

LPLD_RTC_Deinit()

函数原型

void LPLD_RTC_Deinit(RTC_InitTypeDef )

描述

RTC反初始化函数

形参

类型 名称 描述 取值
RTC_InitTypeDef rtc_init_structure RTC初始化结构体 结构体定义见RTC_InitTypeDef

其他

LPLD_RTC_EnableIrq()

宏定义原型

#define LPLD_RTC_EnableIrq()    enable_irq(RTC_IRQn)

描述

RTC使能模块中断

LPLD_RTC_DisableIrq()

宏定义原型

#define LPLD_RTC_DisableIrq()   disable_irq(RTC_IRQn)

描述

RTC禁止模块中断

LPLD_RTC_GetRealTime()

宏定义原型

#define LPLD_RTC_GetRealTime()  (RTC->TSR)

描述

RTC获得实时秒计数函数

LPLD_RTC_SetRealTime()

宏定义原型

#define LPLD_RTC_SetRealTime(TIME)     (RTC->TSR=TIME)

描述

RTC重新设置秒计数器函数

LPLD_RTC_SetAlarmTime()

宏定义原型

#define LPLD_RTC_SetAlarmTime(TIME)    (RTC->TAR=TIME)

描述

RTC重新设置报警寄存器函数

LPLD_RTC_Stop()

宏定义原型

#define LPLD_RTC_Stop()         (RTC->SR&=(~RTC_SR_TCE_MASK))

描述

RTC关闭函数

RTC中断宏定义

该宏定义选择RTC中断方式。
宏定义名 描述
RTC_INT_DIS RTC中断禁止
RTC_INT_INVALID RTC无效数据中断
RTC_INT_OVERFLOW RTC计数器溢出中断
RTC_INT_ALARM RTC报警中断

wangsong