11 STM32标准库函数 之 备份寄存器(BKP)所有函数的介绍及使用
1 BKP库函数预览
函数名 描述 BKP_DeInit 将外设 BKP 的全部寄存器重设为缺省值 BKP_TamperPinLevelConfig 设置侵入检测管脚的有效电平 BKP_TamperPinCmd 使能或者失能管脚的侵入检测功能 BKP_ITConfig 使能或者失能侵入检测中断 BKP_RTCOutputConfig 选择在侵入检测管脚上输出的 RTC 时钟源 BKP_SetRTCCalibrationValue 设置 RTC 时钟校准值 BKP_WriteBackupRegister 向指定的后备寄存器中写入用户程序数据 BKP_ReadBackupRegister 从指定的后备寄存器中读出数据 BKP_GetFlagStatus 检查侵入检测管脚事件的标志位被设置与否 BKP_ClearFlag 清除侵入检测管脚事件的待处理标志位 BKP_GetITStatus 检查侵入检测中断发生与否 BKP_ClearITPendingBit 清除侵入检测中断的待处理位
1.1 函数 BKP_DeInit
函数名 BKP_DeInit 函数原形 void BKP_DeInit(void) 功能描述 将外设 BKP 的全部寄存器重设为缺省值 输入参数 无 输出参数 无 返回值 无 先决条件 无 被调用函数 RCC_BackupResetCmd
例: /* Reset the BKP registers */ BKP_DeInit();
1.2 函 数 BKP_TamperPinLevelConfig
函数名 BKP_TamperPinLevelConfig 函数原形 void BKP_TamperPinLevelConfig(u16 BKP_TamperPinLevel) 功能描述 设置侵入检测管脚的有效电平 输入参数 BKP_TamperPinLevel:侵入检测管脚的有效电平 参阅 Section BKP_TamperPinLevel 查阅更多该参数允许取值范围 输出参数 无 返回值 无 先决条件 无 被调用函数 无
BKP_TamperPinLevel 描述 BKP_TamperPinLevel_High 侵入检测管脚高电平有效 BKP_TamperPinLevel_Low 侵入检测管脚低电平有效
例: /* Configure Tamper pin to be active on high level*/ BKP_TamperPinLevelConfig(BKP_TamperPinLevel_High);
1.3 函 数 BKP_TamperPinCmd
函数名 BKP_TamperPinCmd 函数原形 void BKP_TamperPinCmd(FunctionalState NewState) 功能描述 使能或者失能管脚的侵入检测功能 输入参数 NewState:侵入检测功能的新状态 这个参数可以取:ENABLE 或者 DISABLE 输出参数 无 返回值 无 先决条件 无 被调用函数 无 例: /* Enable Tamper Pin functionality */ BKP_TamperPinCmd(ENABLE);
1.4 函数BKP_ITConfig
函数名 BKP_ITConfig 函数原形 void BKP_ITConfig(FunctionalState NewState) 功能描述 使能或者失能侵入检测中断 输入参数 NewState:侵入检测中断的新状态 这个参数可以取:ENABLE 或者 DISABLE 输出参数 无 返回值 无 先决条件 无 被调用函数 无
例: /* Enable Tamper Pin interrupt */ BKP_ITConfig(ENABLE);
1.5 函 数 BKP_RTCOutputConfig
函数名 BKP_RTCOutputConfig 函数原形 void BKP_RTCOutputConfig(u16 BKP_RTCOutputSource) 功能描述 选择在侵入检测管脚上输出的 RTC 时钟源 输入参数 BKP_RTCOutputSource:指定的 RTC 输出源 参阅 Section BKP_RTCOutputSource 查阅更多该参数允许取值范围 输出参数 无 返回值 无 先决条件 调用该函数前必须失能管脚的侵入检测功能 被调用函数 无
BKP_RTCOutputSource 描述 BKP_RTCOutputSource_None 侵入检测管脚上无 RTC 输出 BKP_RTCOutputSource_CalibClock 侵入检测管脚上输出,其时钟频率为 RTC 时钟除以 64 BKP_RTCOutputSource_Alarm 侵入检测管脚上输出 RTC 闹钟脉冲 BKP_RTCOutputSource_Second 侵入检测管脚上输出 RTC 秒脉冲
例: /* Output the RTC clock source with frequency divided by 64 on the Tamper pad(if the Tamper Pin functionality is disabled) */ BKP_RTCOutputConfig(BKP_RTCOutputSource_CalibClock);
1.6 函数 BKP_SetRTCCalibrationValue
函数名 BKP_SetRTCCalibrationValue 函数原形 void BKP_SetRTCCalibrationValue(u8 CalibrationValue) 功能描述 设置 RTC 时钟校准值 输入参数 CalibrationValue:RTC 时钟校准值 该参数允许取值范围为 0 到 0x7F 输出参数 无 返回值 无 先决条件 无 被调用函数 无
例: /* Set RTC clock calibration value to 0x7F (maximum) */ BKP_SetRTCCalibrationValue(0x7F);
1.7 函 数 BKP_WriteBackupRegister
函数名 BKP_WriteBackupRegister 函数原形 void BKP_WriteBackupRegister(u16 BKP_DR, u16 Data) 功能描述 向指定的后备寄存器中写入用户程序数据 输入参数 1 BKP_DR:数据后备寄存器 参阅 Section BKP_DR 查阅更多该参数允许取值范围 输入参数 2 Data:待写入的数据 输出参数 无 返回值 无 先决条件 无 被调用函数 无
BKP_DR 描述 BKP_DR1 选中数据寄存器 1 BKP_DR2 选中数据寄存器 2 BKP_DR3 选中数据寄存器 3 BKP_DR4 选中数据寄存器 4 BKP_DR5 选中数据寄存器 5 BKP_DR6 选中数据寄存器 6 BKP_DR7 选中数据寄存器 7 BKP_DR8 选中数据寄存器 8 BKP_DR9 选中数据寄存器 9 BKP_DR10 选中数据寄存器 10
例: /* Write 0xA587 to Data Backup Register1 */ BKP_WriteBackupRegister(BKP_DR1, 0xA587);
1.8 函 数 BKP_ReadBackupRegister
函数名 BKP_ReadBackupRegister 函数原形 u16 BKP_ReadBackupRegister(u16 BKP_DR) 功能描述 从指定的后备寄存器中读出数据 输入参数 BKP_DR:数据后备寄存器 参阅 Section BKP_DR 查阅更多该参数允许取值范围 输出参数 无 返回值 指定的后备寄存器中的数据 先决条件 无 被调用函数 无
例: /* Read Data Backup Register1 */ u16 Data; Data = BKP_ReadBackupRegister(BKP_DR1);
1.9 函数BKP_GetFlagStatus
函数名 BKP_GetFlagStatus 函数原形 FlagStatus BKP_GetFlagStatus(void) 功能描述 检查侵入检测管脚事件的标志位被设置与否 输入参数 无 输出参数 无 返回值 检查侵入检测管脚事件的标志位的新状态(SET 或者 RESET) 先决条件 无 被调用函数 无
例: /* Test if the Tamper Pin Event flag is set or not */ FlagStatus Status; Status = BKP_GetFlagStatus(); if(Status == RESET) { … } else { … }
1.10 函 数 BKP_ClearFlag
函数名 BKP_ClearFlag 函数原形 void BKP_ClearFlag(void) 功能描述 清除侵入检测管脚事件的待处理标志位 输入参数 无 输出参数 无 返回值 无 先决条件 无 被调用函数 无
例: /* Clear Tamper Pin Event pending flag */ BKP_ClearFlag();
1.11 函 数 BKP_GetITStatus
函数名 BKP_GetITStatus 函数原形 ITStatus BKP_GetITStatus(void) 功能描述 检查侵入检测中断发生与否 输入参数 无 输出参数 无 返回值 检查检查侵入检测中断标志位的新状态(SET 或者 RESET) 先决条件 无 被调用函数 无
例: /* Test if the Tamper Pin interrupt has occurred or not */ ITStatus Status; Status = BKP_GetITStatus(); if(Status == RESET) { … } else { … }
1.12 函 数 BKP_ClearITPendingBit
函数名 BKP_ClearITPendingBit 函数原形 void BKP_ClearITPendingBit(void) 功能描述 清除侵入检测中断的待处理位 输入参数 无 输出参数 无 返回值 无 先决条件 无 被调用函数 无
例: /* Clear Tamper Pin interrupt pending bit */ BKP_ClearITPendingBit();
该文档修改记录:
修改时间 修改说明 2024年1月19日 第一次发布,介绍了10 STM32标准库函数 之 DMA控制器(DMA)所有函数的介绍及使用
总结
以上就是11 STM32标准库函数 之 备份寄存器(BKP)所有函数的介绍及使用的内容。 有不明白的地方欢迎留言;有建议欢迎留言,我后面编写文档好改进。 创作不容,如果文档对您有帮助,记得给个赞。