3328 |
povik |
1 |
/** |
|
|
2 |
****************************************************************************** |
|
|
3 |
* @file stm32f10x_bkp.h |
|
|
4 |
* @author MCD Application Team |
|
|
5 |
* @version V3.1.0 |
|
|
6 |
* @date 06/19/2009 |
|
|
7 |
* @brief This file contains all the functions prototypes for the BKP firmware |
|
|
8 |
* library. |
|
|
9 |
****************************************************************************** |
|
|
10 |
* @copy |
|
|
11 |
* |
|
|
12 |
* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS |
|
|
13 |
* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE |
|
|
14 |
* TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY |
|
|
15 |
* DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING |
|
|
16 |
* FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE |
|
|
17 |
* CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. |
|
|
18 |
* |
|
|
19 |
* <h2><center>© COPYRIGHT 2009 STMicroelectronics</center></h2> |
|
|
20 |
*/ |
|
|
21 |
|
|
|
22 |
/* Define to prevent recursive inclusion -------------------------------------*/ |
|
|
23 |
#ifndef __STM32F10x_BKP_H |
|
|
24 |
#define __STM32F10x_BKP_H |
|
|
25 |
|
|
|
26 |
#ifdef __cplusplus |
|
|
27 |
extern "C" { |
|
|
28 |
#endif |
|
|
29 |
|
|
|
30 |
/* Includes ------------------------------------------------------------------*/ |
|
|
31 |
#include "stm32f10x.h" |
|
|
32 |
|
|
|
33 |
/** @addtogroup STM32F10x_StdPeriph_Driver |
|
|
34 |
* @{ |
|
|
35 |
*/ |
|
|
36 |
|
|
|
37 |
/** @addtogroup BKP |
|
|
38 |
* @{ |
|
|
39 |
*/ |
|
|
40 |
|
|
|
41 |
/** @defgroup BKP_Exported_Types |
|
|
42 |
* @{ |
|
|
43 |
*/ |
|
|
44 |
|
|
|
45 |
/** |
|
|
46 |
* @} |
|
|
47 |
*/ |
|
|
48 |
|
|
|
49 |
/** @defgroup BKP_Exported_Constants |
|
|
50 |
* @{ |
|
|
51 |
*/ |
|
|
52 |
|
|
|
53 |
/** @defgroup Tamper_Pin_active_level |
|
|
54 |
* @{ |
|
|
55 |
*/ |
|
|
56 |
|
|
|
57 |
#define BKP_TamperPinLevel_High ((uint16_t)0x0000) |
|
|
58 |
#define BKP_TamperPinLevel_Low ((uint16_t)0x0001) |
|
|
59 |
#define IS_BKP_TAMPER_PIN_LEVEL(LEVEL) (((LEVEL) == BKP_TamperPinLevel_High) || \ |
|
|
60 |
((LEVEL) == BKP_TamperPinLevel_Low)) |
|
|
61 |
/** |
|
|
62 |
* @} |
|
|
63 |
*/ |
|
|
64 |
|
|
|
65 |
/** @defgroup RTC_output_source_to_output_on_the_Tamper_pin |
|
|
66 |
* @{ |
|
|
67 |
*/ |
|
|
68 |
|
|
|
69 |
#define BKP_RTCOutputSource_None ((uint16_t)0x0000) |
|
|
70 |
#define BKP_RTCOutputSource_CalibClock ((uint16_t)0x0080) |
|
|
71 |
#define BKP_RTCOutputSource_Alarm ((uint16_t)0x0100) |
|
|
72 |
#define BKP_RTCOutputSource_Second ((uint16_t)0x0300) |
|
|
73 |
#define IS_BKP_RTC_OUTPUT_SOURCE(SOURCE) (((SOURCE) == BKP_RTCOutputSource_None) || \ |
|
|
74 |
((SOURCE) == BKP_RTCOutputSource_CalibClock) || \ |
|
|
75 |
((SOURCE) == BKP_RTCOutputSource_Alarm) || \ |
|
|
76 |
((SOURCE) == BKP_RTCOutputSource_Second)) |
|
|
77 |
/** |
|
|
78 |
* @} |
|
|
79 |
*/ |
|
|
80 |
|
|
|
81 |
/** @defgroup Data_Backup_Register |
|
|
82 |
* @{ |
|
|
83 |
*/ |
|
|
84 |
|
|
|
85 |
#define BKP_DR1 ((uint16_t)0x0004) |
|
|
86 |
#define BKP_DR2 ((uint16_t)0x0008) |
|
|
87 |
#define BKP_DR3 ((uint16_t)0x000C) |
|
|
88 |
#define BKP_DR4 ((uint16_t)0x0010) |
|
|
89 |
#define BKP_DR5 ((uint16_t)0x0014) |
|
|
90 |
#define BKP_DR6 ((uint16_t)0x0018) |
|
|
91 |
#define BKP_DR7 ((uint16_t)0x001C) |
|
|
92 |
#define BKP_DR8 ((uint16_t)0x0020) |
|
|
93 |
#define BKP_DR9 ((uint16_t)0x0024) |
|
|
94 |
#define BKP_DR10 ((uint16_t)0x0028) |
|
|
95 |
#define BKP_DR11 ((uint16_t)0x0040) |
|
|
96 |
#define BKP_DR12 ((uint16_t)0x0044) |
|
|
97 |
#define BKP_DR13 ((uint16_t)0x0048) |
|
|
98 |
#define BKP_DR14 ((uint16_t)0x004C) |
|
|
99 |
#define BKP_DR15 ((uint16_t)0x0050) |
|
|
100 |
#define BKP_DR16 ((uint16_t)0x0054) |
|
|
101 |
#define BKP_DR17 ((uint16_t)0x0058) |
|
|
102 |
#define BKP_DR18 ((uint16_t)0x005C) |
|
|
103 |
#define BKP_DR19 ((uint16_t)0x0060) |
|
|
104 |
#define BKP_DR20 ((uint16_t)0x0064) |
|
|
105 |
#define BKP_DR21 ((uint16_t)0x0068) |
|
|
106 |
#define BKP_DR22 ((uint16_t)0x006C) |
|
|
107 |
#define BKP_DR23 ((uint16_t)0x0070) |
|
|
108 |
#define BKP_DR24 ((uint16_t)0x0074) |
|
|
109 |
#define BKP_DR25 ((uint16_t)0x0078) |
|
|
110 |
#define BKP_DR26 ((uint16_t)0x007C) |
|
|
111 |
#define BKP_DR27 ((uint16_t)0x0080) |
|
|
112 |
#define BKP_DR28 ((uint16_t)0x0084) |
|
|
113 |
#define BKP_DR29 ((uint16_t)0x0088) |
|
|
114 |
#define BKP_DR30 ((uint16_t)0x008C) |
|
|
115 |
#define BKP_DR31 ((uint16_t)0x0090) |
|
|
116 |
#define BKP_DR32 ((uint16_t)0x0094) |
|
|
117 |
#define BKP_DR33 ((uint16_t)0x0098) |
|
|
118 |
#define BKP_DR34 ((uint16_t)0x009C) |
|
|
119 |
#define BKP_DR35 ((uint16_t)0x00A0) |
|
|
120 |
#define BKP_DR36 ((uint16_t)0x00A4) |
|
|
121 |
#define BKP_DR37 ((uint16_t)0x00A8) |
|
|
122 |
#define BKP_DR38 ((uint16_t)0x00AC) |
|
|
123 |
#define BKP_DR39 ((uint16_t)0x00B0) |
|
|
124 |
#define BKP_DR40 ((uint16_t)0x00B4) |
|
|
125 |
#define BKP_DR41 ((uint16_t)0x00B8) |
|
|
126 |
#define BKP_DR42 ((uint16_t)0x00BC) |
|
|
127 |
|
|
|
128 |
#define IS_BKP_DR(DR) (((DR) == BKP_DR1) || ((DR) == BKP_DR2) || ((DR) == BKP_DR3) || \ |
|
|
129 |
((DR) == BKP_DR4) || ((DR) == BKP_DR5) || ((DR) == BKP_DR6) || \ |
|
|
130 |
((DR) == BKP_DR7) || ((DR) == BKP_DR8) || ((DR) == BKP_DR9) || \ |
|
|
131 |
((DR) == BKP_DR10) || ((DR) == BKP_DR11) || ((DR) == BKP_DR12) || \ |
|
|
132 |
((DR) == BKP_DR13) || ((DR) == BKP_DR14) || ((DR) == BKP_DR15) || \ |
|
|
133 |
((DR) == BKP_DR16) || ((DR) == BKP_DR17) || ((DR) == BKP_DR18) || \ |
|
|
134 |
((DR) == BKP_DR19) || ((DR) == BKP_DR20) || ((DR) == BKP_DR21) || \ |
|
|
135 |
((DR) == BKP_DR22) || ((DR) == BKP_DR23) || ((DR) == BKP_DR24) || \ |
|
|
136 |
((DR) == BKP_DR25) || ((DR) == BKP_DR26) || ((DR) == BKP_DR27) || \ |
|
|
137 |
((DR) == BKP_DR28) || ((DR) == BKP_DR29) || ((DR) == BKP_DR30) || \ |
|
|
138 |
((DR) == BKP_DR31) || ((DR) == BKP_DR32) || ((DR) == BKP_DR33) || \ |
|
|
139 |
((DR) == BKP_DR34) || ((DR) == BKP_DR35) || ((DR) == BKP_DR36) || \ |
|
|
140 |
((DR) == BKP_DR37) || ((DR) == BKP_DR38) || ((DR) == BKP_DR39) || \ |
|
|
141 |
((DR) == BKP_DR40) || ((DR) == BKP_DR41) || ((DR) == BKP_DR42)) |
|
|
142 |
|
|
|
143 |
#define IS_BKP_CALIBRATION_VALUE(VALUE) ((VALUE) <= 0x7F) |
|
|
144 |
/** |
|
|
145 |
* @} |
|
|
146 |
*/ |
|
|
147 |
|
|
|
148 |
/** |
|
|
149 |
* @} |
|
|
150 |
*/ |
|
|
151 |
|
|
|
152 |
/** @defgroup BKP_Exported_Macros |
|
|
153 |
* @{ |
|
|
154 |
*/ |
|
|
155 |
|
|
|
156 |
/** |
|
|
157 |
* @} |
|
|
158 |
*/ |
|
|
159 |
|
|
|
160 |
/** @defgroup BKP_Exported_Functions |
|
|
161 |
* @{ |
|
|
162 |
*/ |
|
|
163 |
|
|
|
164 |
void BKP_DeInit(void); |
|
|
165 |
void BKP_TamperPinLevelConfig(uint16_t BKP_TamperPinLevel); |
|
|
166 |
void BKP_TamperPinCmd(FunctionalState NewState); |
|
|
167 |
void BKP_ITConfig(FunctionalState NewState); |
|
|
168 |
void BKP_RTCOutputConfig(uint16_t BKP_RTCOutputSource); |
|
|
169 |
void BKP_SetRTCCalibrationValue(uint8_t CalibrationValue); |
|
|
170 |
void BKP_WriteBackupRegister(uint16_t BKP_DR, uint16_t Data); |
|
|
171 |
uint16_t BKP_ReadBackupRegister(uint16_t BKP_DR); |
|
|
172 |
FlagStatus BKP_GetFlagStatus(void); |
|
|
173 |
void BKP_ClearFlag(void); |
|
|
174 |
ITStatus BKP_GetITStatus(void); |
|
|
175 |
void BKP_ClearITPendingBit(void); |
|
|
176 |
|
|
|
177 |
#ifdef __cplusplus |
|
|
178 |
} |
|
|
179 |
#endif |
|
|
180 |
|
|
|
181 |
#endif /* __STM32F10x_BKP_H */ |
|
|
182 |
/** |
|
|
183 |
* @} |
|
|
184 |
*/ |
|
|
185 |
|
|
|
186 |
/** |
|
|
187 |
* @} |
|
|
188 |
*/ |
|
|
189 |
|
|
|
190 |
/** |
|
|
191 |
* @} |
|
|
192 |
*/ |
|
|
193 |
|
|
|
194 |
/******************* (C) COPYRIGHT 2009 STMicroelectronics *****END OF FILE****/ |