]> git.sur5r.net Git - freertos/blob - FreeRTOS/Demo/CORTEX_STM32F103_GCC_Rowley/ST Library/inc/stm32f10x_rtc.h
Add FreeRTOS-Plus directory.
[freertos] / FreeRTOS / Demo / CORTEX_STM32F103_GCC_Rowley / ST Library / inc / stm32f10x_rtc.h
1 /******************** (C) COPYRIGHT 2008 STMicroelectronics ********************\r
2 * File Name          : stm32f10x_rtc.h\r
3 * Author             : MCD Application Team\r
4 * Version            : V2.0.1\r
5 * Date               : 06/13/2008\r
6 * Description        : This file contains all the functions prototypes for the\r
7 *                      RTC firmware library.\r
8 ********************************************************************************\r
9 * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS\r
10 * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME.\r
11 * AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT,\r
12 * INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE\r
13 * CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING\r
14 * INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.\r
15 *******************************************************************************/\r
16 \r
17 /* Define to prevent recursive inclusion -------------------------------------*/\r
18 #ifndef __STM32F10x_RTC_H\r
19 #define __STM32F10x_RTC_H\r
20 \r
21 /* Includes ------------------------------------------------------------------*/\r
22 #include "stm32f10x_map.h"\r
23 \r
24 /* Exported types ------------------------------------------------------------*/\r
25 /* Exported constants --------------------------------------------------------*/\r
26 /* RTC interrupts define -----------------------------------------------------*/\r
27 #define RTC_IT_OW            ((u16)0x0004)  /* Overflow interrupt */\r
28 #define RTC_IT_ALR           ((u16)0x0002)  /* Alarm interrupt */\r
29 #define RTC_IT_SEC           ((u16)0x0001)  /* Second interrupt */\r
30 \r
31 #define IS_RTC_IT(IT) ((((IT) & (u16)0xFFF8) == 0x00) && ((IT) != 0x00))\r
32 \r
33 #define IS_RTC_GET_IT(IT) (((IT) == RTC_IT_OW) || ((IT) == RTC_IT_ALR) || \\r
34                            ((IT) == RTC_IT_SEC))\r
35                                                                      \r
36 /* RTC interrupts flags ------------------------------------------------------*/\r
37 #define RTC_FLAG_RTOFF       ((u16)0x0020)  /* RTC Operation OFF flag */\r
38 #define RTC_FLAG_RSF         ((u16)0x0008)  /* Registers Synchronized flag */\r
39 #define RTC_FLAG_OW          ((u16)0x0004)  /* Overflow flag */\r
40 #define RTC_FLAG_ALR         ((u16)0x0002)  /* Alarm flag */\r
41 #define RTC_FLAG_SEC         ((u16)0x0001)  /* Second flag */\r
42 \r
43 #define IS_RTC_CLEAR_FLAG(FLAG) ((((FLAG) & (u16)0xFFF0) == 0x00) && ((FLAG) != 0x00))\r
44 \r
45 #define IS_RTC_GET_FLAG(FLAG) (((FLAG) == RTC_FLAG_RTOFF) || ((FLAG) == RTC_FLAG_RSF) || \\r
46                                ((FLAG) == RTC_FLAG_OW) || ((FLAG) == RTC_FLAG_ALR) || \\r
47                                ((FLAG) == RTC_FLAG_SEC))\r
48 \r
49 #define IS_RTC_PRESCALER(PRESCALER) ((PRESCALER) <= 0xFFFFF)\r
50                            \r
51 /* Exported macro ------------------------------------------------------------*/\r
52 /* Exported functions ------------------------------------------------------- */\r
53 void RTC_ITConfig(u16 RTC_IT, FunctionalState NewState);\r
54 void RTC_EnterConfigMode(void);\r
55 void RTC_ExitConfigMode(void);\r
56 u32  RTC_GetCounter(void);\r
57 void RTC_SetCounter(u32 CounterValue);\r
58 void RTC_SetPrescaler(u32 PrescalerValue);\r
59 void RTC_SetAlarm(u32 AlarmValue);\r
60 u32  RTC_GetDivider(void);\r
61 void RTC_WaitForLastTask(void);\r
62 void RTC_WaitForSynchro(void);\r
63 FlagStatus RTC_GetFlagStatus(u16 RTC_FLAG);\r
64 void RTC_ClearFlag(u16 RTC_FLAG);\r
65 ITStatus RTC_GetITStatus(u16 RTC_IT);\r
66 void RTC_ClearITPendingBit(u16 RTC_IT);\r
67 \r
68 #endif /* __STM32F10x_RTC_H */\r
69 \r
70 /******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/\r