在GD官网例程中没有给出GD32F407 BKP的示例代码,在网友提供的代码基础上重新使用了GD官网pmu库文件,按照流程重写了读和写的方法,供大家在使用中参考。。。#include "gd32f4xx_rtc.h"
<div class="blockcode"><blockquote><p></p><div><div>#include "gd32f4xx_pmu.h"</div></div><div></div>
//初始化
void BKPSRAM_int(void)
{
//BKPSRAM_BASE
//*(__IO uint16_t *) (BKPSRAM_BASE + offset) = 0
//RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE); //启用压水堆时钟
rcu_periph_clock_enable(RCU_BKPSRAM);
// PWR_BackupAccessCmd(ENABLE); //能够访问到备份域
pmu_backup_ldo_config( PMU_BLDOON_ON);
//RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_BKPSRAM, ENABLE); //启用备份SRAM时钟
pmu_backup_write_enable();
//PWR_BackupRegulatorCmd(ENABLE); //启用备份SRAM的低功耗稳压器,以保持它在VBAT模式的内容
pmu_low_driver_mode_enable(PMU_LOWDRIVER_ENABLE);
// while(PWR_GetFlagStatus(PWR_FLAG_BRR) == RESET) {} //等到备份SRAM的低 功耗稳压器已准备就绪
while(pmu_flag_get(PMU_FLAG_BLDORF)==RESET){}
}
|