gd32f10x_bkp.h 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  1. /**
  2. ******************************************************************************
  3. * @brief BKP header file of the firmware library.
  4. ******************************************************************************
  5. */
  6. /* Define to prevent recursive inclusion -------------------------------------*/
  7. #ifndef __GD32F10X_BKP_H
  8. #define __GD32F10X_BKP_H
  9. #ifdef __cplusplus
  10. extern "C" {
  11. #endif
  12. /* Includes ------------------------------------------------------------------*/
  13. #include "gd32f10x.h"
  14. /** @addtogroup GD32F10x_Firmware
  15. * @{
  16. */
  17. /** @addtogroup BKP
  18. * @{
  19. */
  20. /** @defgroup BKP_Exported_Constants
  21. * @{
  22. */
  23. /** @defgroup TAMPER_pin_active_level
  24. * @{
  25. */
  26. #define BKP_TPAL_HIGH ((uint16_t)0x0000)
  27. #define BKP_TPAL_LOW ((uint16_t)0x0002)
  28. /**
  29. * @}
  30. */
  31. /** @defgroup RTC_output_on_the_TAMPER_pin
  32. * @{
  33. */
  34. #define BKP_RTCOUTPUT_NULL ((uint16_t)0x0000)
  35. #define BKP_RTCOUTPUT_CLKCAL ((uint16_t)0x0080)
  36. #define BKP_RTCOUTPUT_ALARM ((uint16_t)0x0100)
  37. #define BKP_RTCOUTPUT_SECOND ((uint16_t)0x0300)
  38. /**
  39. * @}
  40. */
  41. /** @defgroup Backup_Data_Register
  42. * @{
  43. */
  44. #define BKP_DR1 ((uint16_t)0x0004)
  45. #define BKP_DR2 ((uint16_t)0x0008)
  46. #define BKP_DR3 ((uint16_t)0x000C)
  47. #define BKP_DR4 ((uint16_t)0x0010)
  48. #define BKP_DR5 ((uint16_t)0x0014)
  49. #define BKP_DR6 ((uint16_t)0x0018)
  50. #define BKP_DR7 ((uint16_t)0x001C)
  51. #define BKP_DR8 ((uint16_t)0x0020)
  52. #define BKP_DR9 ((uint16_t)0x0024)
  53. #define BKP_DR10 ((uint16_t)0x0028)
  54. #define BKP_DR11 ((uint16_t)0x0040)
  55. #define BKP_DR12 ((uint16_t)0x0044)
  56. #define BKP_DR13 ((uint16_t)0x0048)
  57. #define BKP_DR14 ((uint16_t)0x004C)
  58. #define BKP_DR15 ((uint16_t)0x0050)
  59. #define BKP_DR16 ((uint16_t)0x0054)
  60. #define BKP_DR17 ((uint16_t)0x0058)
  61. #define BKP_DR18 ((uint16_t)0x005C)
  62. #define BKP_DR19 ((uint16_t)0x0060)
  63. #define BKP_DR20 ((uint16_t)0x0064)
  64. #define BKP_DR21 ((uint16_t)0x0068)
  65. #define BKP_DR22 ((uint16_t)0x006C)
  66. #define BKP_DR23 ((uint16_t)0x0070)
  67. #define BKP_DR24 ((uint16_t)0x0074)
  68. #define BKP_DR25 ((uint16_t)0x0078)
  69. #define BKP_DR26 ((uint16_t)0x007C)
  70. #define BKP_DR27 ((uint16_t)0x0080)
  71. #define BKP_DR28 ((uint16_t)0x0084)
  72. #define BKP_DR29 ((uint16_t)0x0088)
  73. #define BKP_DR30 ((uint16_t)0x008C)
  74. #define BKP_DR31 ((uint16_t)0x0090)
  75. #define BKP_DR32 ((uint16_t)0x0094)
  76. #define BKP_DR33 ((uint16_t)0x0098)
  77. #define BKP_DR34 ((uint16_t)0x009C)
  78. #define BKP_DR35 ((uint16_t)0x00A0)
  79. #define BKP_DR36 ((uint16_t)0x00A4)
  80. #define BKP_DR37 ((uint16_t)0x00A8)
  81. #define BKP_DR38 ((uint16_t)0x00AC)
  82. #define BKP_DR39 ((uint16_t)0x00B0)
  83. #define BKP_DR40 ((uint16_t)0x00B4)
  84. #define BKP_DR41 ((uint16_t)0x00B8)
  85. #define BKP_DR42 ((uint16_t)0x00BC)
  86. /**
  87. * @}
  88. */
  89. /**
  90. * @}
  91. */
  92. /** @defgroup BKP_Exported_Functions
  93. * @{
  94. */
  95. void BKP_DeInit(void);
  96. void BKP_WriteBackupRegister(uint16_t BKP_DR, uint16_t Data);
  97. uint16_t BKP_ReadBackupRegister(uint16_t BKP_DR);
  98. void BKP_RTCOutputConfig(uint16_t BKP_RTCOUTPUT);
  99. void BKP_SetRTCCalibrationValue(uint8_t CalibrationValue);
  100. void BKP_TamperPinConfig(uint16_t BKP_TPAL, TypeState NewValue);
  101. void BKP_TamperINT_Enable(TypeState NewValue);
  102. TypeState BKP_GetBitState(void);
  103. void BKP_ClearBitState(void);
  104. TypeState BKP_GetIntBitState(void);
  105. void BKP_ClearIntBitState(void);
  106. #ifdef __cplusplus
  107. }
  108. #endif
  109. #endif /* __GD32F10X_BKP_H */
  110. /**
  111. * @}
  112. */
  113. /**
  114. * @}
  115. */
  116. /**
  117. * @}
  118. */