本帖最后由 liang_ke 于 2014-8-2 16:06 编辑
我希望产品掉电以后,能**某些状态和数值.用到stm32的备份寄存器.
我在设计硬件的时候没有安装 32768的晶振,下载程序测试的时候发现不能保存数据.
我想请教一下,不装32768晶振是否影响备份寄存器工作,又或者是我程序方面有问题.求指点.
void BKP_Init(void)
{
RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR | RCC_APB1Periph_BKP, ENABLE);
PWR_BackupAccessCmd(ENABLE);
BKP_ClearFlag();
//BKP_DeInit();
}
void WriteBak(u32 dat)
{
u32 temp;
temp = dat;
temp >>= 16;
temp &= 0x0000ffff;
BKP_WriteBackupRegister(BKP_DR1, (u16)temp);
temp = dat;
temp &= 0x0000ffff;
BKP_WriteBackupRegister(BKP_DR2, (u16)temp);
}
u32 ReadBak(void)
{
u32 temp;
temp = BKP_ReadBackupRegister(BKP_DR1);
temp <<= 16;
temp &= 0xffff0000;
temp |= BKP_ReadBackupRegister(BKP_DR2);
return(temp);
}
|