stm32f10x_bkp.h

Go to the documentation of this file.
00001 /**
00002   ******************************************************************************
00003   * @file    stm32f10x_bkp.h
00004   * @author  MCD Application Team
00005   * @version V3.4.0
00006   * @date    10/15/2010
00007   * @brief   This file contains all the functions prototypes for the BKP firmware 
00008   *          library.
00009   ******************************************************************************
00010   * @copy
00011   *
00012   * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
00013   * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE
00014   * TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY
00015   * DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING
00016   * FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE
00017   * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
00018   *
00019   * <h2><center>&copy; COPYRIGHT 2010 STMicroelectronics</center></h2>
00020   */ 
00021 
00022 /* Define to prevent recursive inclusion -------------------------------------*/
00023 #ifndef __STM32F10x_BKP_H
00024 #define __STM32F10x_BKP_H
00025 
00026 #ifdef __cplusplus
00027  extern "C" {
00028 #endif
00029 
00030 /* Includes ------------------------------------------------------------------*/
00031 #include "stm32f10x.h"
00032 
00033 /** @addtogroup STM32F10x_StdPeriph_Driver
00034   * @{
00035   */
00036 
00037 /** @addtogroup BKP
00038   * @{
00039   */
00040 
00041 /** @defgroup BKP_Exported_Types
00042   * @{
00043   */
00044 
00045 /**
00046   * @}
00047   */
00048 
00049 /** @defgroup BKP_Exported_Constants
00050   * @{
00051   */
00052 
00053 /** @defgroup Tamper_Pin_active_level 
00054   * @{
00055   */
00056 
00057 #define BKP_TamperPinLevel_High           ((uint16_t)0x0000)
00058 #define BKP_TamperPinLevel_Low            ((uint16_t)0x0001)
00059 #define IS_BKP_TAMPER_PIN_LEVEL(LEVEL) (((LEVEL) == BKP_TamperPinLevel_High) || \
00060                                         ((LEVEL) == BKP_TamperPinLevel_Low))
00061 /**
00062   * @}
00063   */
00064 
00065 /** @defgroup RTC_output_source_to_output_on_the_Tamper_pin 
00066   * @{
00067   */
00068 
00069 #define BKP_RTCOutputSource_None          ((uint16_t)0x0000)
00070 #define BKP_RTCOutputSource_CalibClock    ((uint16_t)0x0080)
00071 #define BKP_RTCOutputSource_Alarm         ((uint16_t)0x0100)
00072 #define BKP_RTCOutputSource_Second        ((uint16_t)0x0300)
00073 #define IS_BKP_RTC_OUTPUT_SOURCE(SOURCE) (((SOURCE) == BKP_RTCOutputSource_None) || \
00074                                           ((SOURCE) == BKP_RTCOutputSource_CalibClock) || \
00075                                           ((SOURCE) == BKP_RTCOutputSource_Alarm) || \
00076                                           ((SOURCE) == BKP_RTCOutputSource_Second))
00077 /**
00078   * @}
00079   */
00080 
00081 /** @defgroup Data_Backup_Register 
00082   * @{
00083   */
00084 
00085 #define BKP_DR1                           ((uint16_t)0x0004)
00086 #define BKP_DR2                           ((uint16_t)0x0008)
00087 #define BKP_DR3                           ((uint16_t)0x000C)
00088 #define BKP_DR4                           ((uint16_t)0x0010)
00089 #define BKP_DR5                           ((uint16_t)0x0014)
00090 #define BKP_DR6                           ((uint16_t)0x0018)
00091 #define BKP_DR7                           ((uint16_t)0x001C)
00092 #define BKP_DR8                           ((uint16_t)0x0020)
00093 #define BKP_DR9                           ((uint16_t)0x0024)
00094 #define BKP_DR10                          ((uint16_t)0x0028)
00095 #define BKP_DR11                          ((uint16_t)0x0040)
00096 #define BKP_DR12                          ((uint16_t)0x0044)
00097 #define BKP_DR13                          ((uint16_t)0x0048)
00098 #define BKP_DR14                          ((uint16_t)0x004C)
00099 #define BKP_DR15                          ((uint16_t)0x0050)
00100 #define BKP_DR16                          ((uint16_t)0x0054)
00101 #define BKP_DR17                          ((uint16_t)0x0058)
00102 #define BKP_DR18                          ((uint16_t)0x005C)
00103 #define BKP_DR19                          ((uint16_t)0x0060)
00104 #define BKP_DR20                          ((uint16_t)0x0064)
00105 #define BKP_DR21                          ((uint16_t)0x0068)
00106 #define BKP_DR22                          ((uint16_t)0x006C)
00107 #define BKP_DR23                          ((uint16_t)0x0070)
00108 #define BKP_DR24                          ((uint16_t)0x0074)
00109 #define BKP_DR25                          ((uint16_t)0x0078)
00110 #define BKP_DR26                          ((uint16_t)0x007C)
00111 #define BKP_DR27                          ((uint16_t)0x0080)
00112 #define BKP_DR28                          ((uint16_t)0x0084)
00113 #define BKP_DR29                          ((uint16_t)0x0088)
00114 #define BKP_DR30                          ((uint16_t)0x008C)
00115 #define BKP_DR31                          ((uint16_t)0x0090)
00116 #define BKP_DR32                          ((uint16_t)0x0094)
00117 #define BKP_DR33                          ((uint16_t)0x0098)
00118 #define BKP_DR34                          ((uint16_t)0x009C)
00119 #define BKP_DR35                          ((uint16_t)0x00A0)
00120 #define BKP_DR36                          ((uint16_t)0x00A4)
00121 #define BKP_DR37                          ((uint16_t)0x00A8)
00122 #define BKP_DR38                          ((uint16_t)0x00AC)
00123 #define BKP_DR39                          ((uint16_t)0x00B0)
00124 #define BKP_DR40                          ((uint16_t)0x00B4)
00125 #define BKP_DR41                          ((uint16_t)0x00B8)
00126 #define BKP_DR42                          ((uint16_t)0x00BC)
00127 
00128 #define IS_BKP_DR(DR) (((DR) == BKP_DR1)  || ((DR) == BKP_DR2)  || ((DR) == BKP_DR3)  || \
00129                        ((DR) == BKP_DR4)  || ((DR) == BKP_DR5)  || ((DR) == BKP_DR6)  || \
00130                        ((DR) == BKP_DR7)  || ((DR) == BKP_DR8)  || ((DR) == BKP_DR9)  || \
00131                        ((DR) == BKP_DR10) || ((DR) == BKP_DR11) || ((DR) == BKP_DR12) || \
00132                        ((DR) == BKP_DR13) || ((DR) == BKP_DR14) || ((DR) == BKP_DR15) || \
00133                        ((DR) == BKP_DR16) || ((DR) == BKP_DR17) || ((DR) == BKP_DR18) || \
00134                        ((DR) == BKP_DR19) || ((DR) == BKP_DR20) || ((DR) == BKP_DR21) || \
00135                        ((DR) == BKP_DR22) || ((DR) == BKP_DR23) || ((DR) == BKP_DR24) || \
00136                        ((DR) == BKP_DR25) || ((DR) == BKP_DR26) || ((DR) == BKP_DR27) || \
00137                        ((DR) == BKP_DR28) || ((DR) == BKP_DR29) || ((DR) == BKP_DR30) || \
00138                        ((DR) == BKP_DR31) || ((DR) == BKP_DR32) || ((DR) == BKP_DR33) || \
00139                        ((DR) == BKP_DR34) || ((DR) == BKP_DR35) || ((DR) == BKP_DR36) || \
00140                        ((DR) == BKP_DR37) || ((DR) == BKP_DR38) || ((DR) == BKP_DR39) || \
00141                        ((DR) == BKP_DR40) || ((DR) == BKP_DR41) || ((DR) == BKP_DR42))
00142 
00143 #define IS_BKP_CALIBRATION_VALUE(VALUE) ((VALUE) <= 0x7F)
00144 /**
00145   * @}
00146   */
00147 
00148 /**
00149   * @}
00150   */
00151 
00152 /** @defgroup BKP_Exported_Macros
00153   * @{
00154   */
00155 
00156 /**
00157   * @}
00158   */
00159 
00160 /** @defgroup BKP_Exported_Functions
00161   * @{
00162   */
00163 
00164 void BKP_DeInit(void);
00165 void BKP_TamperPinLevelConfig(uint16_t BKP_TamperPinLevel);
00166 void BKP_TamperPinCmd(FunctionalState NewState);
00167 void BKP_ITConfig(FunctionalState NewState);
00168 void BKP_RTCOutputConfig(uint16_t BKP_RTCOutputSource);
00169 void BKP_SetRTCCalibrationValue(uint8_t CalibrationValue);
00170 void BKP_WriteBackupRegister(uint16_t BKP_DR, uint16_t Data);
00171 uint16_t BKP_ReadBackupRegister(uint16_t BKP_DR);
00172 FlagStatus BKP_GetFlagStatus(void);
00173 void BKP_ClearFlag(void);
00174 ITStatus BKP_GetITStatus(void);
00175 void BKP_ClearITPendingBit(void);
00176 
00177 #ifdef __cplusplus
00178 }
00179 #endif
00180 
00181 #endif /* __STM32F10x_BKP_H */
00182 /**
00183   * @}
00184   */
00185 
00186 /**
00187   * @}
00188   */
00189 
00190 /**
00191   * @}
00192   */
00193 
00194 /******************* (C) COPYRIGHT 2010 STMicroelectronics *****END OF FILE****/
STM32F10x Standard Peripherals Library: Footer

 

 

 

      For complete documentation on STM32(CORTEX M3) 32-bit Microcontrollers platform visit  www.st.com/STM32