gd32f10x_bkp.h 4.0 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139
/**
  ******************************************************************************
  * @brief   BKP header file of the firmware library.
  ******************************************************************************
  */

/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef __GD32F10X_BKP_H
#define __GD32F10X_BKP_H

#ifdef __cplusplus
extern "C" {
#endif


/* Includes ------------------------------------------------------------------*/
#include "gd32f10x.h"

/** @addtogroup GD32F10x_Firmware
  * @{
  */

/** @addtogroup BKP
  * @{
  */

/** @defgroup BKP_Exported_Constants
  * @{
  */

/** @defgroup TAMPER_pin_active_level
  * @{
  */
#define BKP_TPAL_HIGH              ((uint16_t)0x0000)
#define BKP_TPAL_LOW               ((uint16_t)0x0002)

/**
  * @}
  */

/** @defgroup RTC_output_on_the_TAMPER_pin
  * @{
  */
#define BKP_RTCOUTPUT_NULL         ((uint16_t)0x0000)
#define BKP_RTCOUTPUT_CLKCAL       ((uint16_t)0x0080)
#define BKP_RTCOUTPUT_ALARM        ((uint16_t)0x0100)
#define BKP_RTCOUTPUT_SECOND       ((uint16_t)0x0300)

/**
  * @}
  */

/** @defgroup Backup_Data_Register
  * @{
  */
#define BKP_DR1                    ((uint16_t)0x0004)
#define BKP_DR2                    ((uint16_t)0x0008)
#define BKP_DR3                    ((uint16_t)0x000C)
#define BKP_DR4                    ((uint16_t)0x0010)
#define BKP_DR5                    ((uint16_t)0x0014)
#define BKP_DR6                    ((uint16_t)0x0018)
#define BKP_DR7                    ((uint16_t)0x001C)
#define BKP_DR8                    ((uint16_t)0x0020)
#define BKP_DR9                    ((uint16_t)0x0024)
#define BKP_DR10                   ((uint16_t)0x0028)
#define BKP_DR11                   ((uint16_t)0x0040)
#define BKP_DR12                   ((uint16_t)0x0044)
#define BKP_DR13                   ((uint16_t)0x0048)
#define BKP_DR14                   ((uint16_t)0x004C)
#define BKP_DR15                   ((uint16_t)0x0050)
#define BKP_DR16                   ((uint16_t)0x0054)
#define BKP_DR17                   ((uint16_t)0x0058)
#define BKP_DR18                   ((uint16_t)0x005C)
#define BKP_DR19                   ((uint16_t)0x0060)
#define BKP_DR20                   ((uint16_t)0x0064)
#define BKP_DR21                   ((uint16_t)0x0068)
#define BKP_DR22                   ((uint16_t)0x006C)
#define BKP_DR23                   ((uint16_t)0x0070)
#define BKP_DR24                   ((uint16_t)0x0074)
#define BKP_DR25                   ((uint16_t)0x0078)
#define BKP_DR26                   ((uint16_t)0x007C)
#define BKP_DR27                   ((uint16_t)0x0080)
#define BKP_DR28                   ((uint16_t)0x0084)
#define BKP_DR29                   ((uint16_t)0x0088)
#define BKP_DR30                   ((uint16_t)0x008C)
#define BKP_DR31                   ((uint16_t)0x0090)
#define BKP_DR32                   ((uint16_t)0x0094)
#define BKP_DR33                   ((uint16_t)0x0098)
#define BKP_DR34                   ((uint16_t)0x009C)
#define BKP_DR35                   ((uint16_t)0x00A0)
#define BKP_DR36                   ((uint16_t)0x00A4)
#define BKP_DR37                   ((uint16_t)0x00A8)
#define BKP_DR38                   ((uint16_t)0x00AC)
#define BKP_DR39                   ((uint16_t)0x00B0)
#define BKP_DR40                   ((uint16_t)0x00B4)
#define BKP_DR41                   ((uint16_t)0x00B8)
#define BKP_DR42                   ((uint16_t)0x00BC)

/**
  * @}
  */

/**
  * @}
  */

/** @defgroup BKP_Exported_Functions
  * @{
  */
void BKP_DeInit(void);
void BKP_WriteBackupRegister(uint16_t BKP_DR, uint16_t Data);
uint16_t BKP_ReadBackupRegister(uint16_t BKP_DR);
void BKP_RTCOutputConfig(uint16_t BKP_RTCOUTPUT);
void BKP_SetRTCCalibrationValue(uint8_t CalibrationValue);
void BKP_TamperPinConfig(uint16_t BKP_TPAL, TypeState NewValue);
void BKP_TamperINT_Enable(TypeState NewValue);
TypeState BKP_GetBitState(void);
void BKP_ClearBitState(void);
TypeState BKP_GetIntBitState(void);
void BKP_ClearIntBitState(void);

#ifdef __cplusplus
}
#endif

#endif /* __GD32F10X_BKP_H */

/**
  * @}
  */

/**
  * @}
  */

/**
  * @}
  */