BKP.H
#ifndef _BKP_H_
#define _BKP_H_
#include "DataType.h"
void InitBKP(void);
void WriteBKP(u8 DRNumber, u16 Data);
void ReadBKP(u8 DRNumber, u16* Data);
void PrintBKP(void);
u8 CheckBKP(void);
#endif
BKP.C
#include "BKP.h"
#include <stm32f10x_conf.h>
#include <stm32f10x_bkp.h> //或者到<stm32f10x_conf.h>里加上
#include <stm32f10x_pwr.h>
#include "stdio.h"
#define CHECK_CODE 0xAE86
void InitBKP(void)
{
PWR_BackupAccessCmd(ENABLE);
BKP_ClearFlag();
BKP_TamperPinLevelConfig(BKP_TamperPinLevel_Low);
BKP_ITConfig(ENABLE);
BKP_TamperPinCmd(ENABLE);
}
void ReadBKP(u8 DRNumber, u16 Data)
{
switch (DRNumber)
{
case 0x01: BKP_WriteBackupRegister(BKP_DR1, Data); break;
case 0x02: BKP_WriteBackupRegister(BKP_DR2, Data); break;
case 0x03: BKP_WriteBackupRegister(BKP_DR3, Data); break;
case 0x04: B