STM32F0xx Standard Peripherals Firmware Library
|
STM32F0xx_StdPeriph_Examples/RTC/RTC_Calendar/stm32f0xx_it.c
Go to the documentation of this file.
00001 /** 00002 ****************************************************************************** 00003 * @file RTC/RTC_Calendar/stm32f0xx_it.c 00004 * @author MCD Application Team 00005 * @version V1.4.0 00006 * @date 24-July-2014 00007 * @brief Main Interrupt Service Routines. 00008 * This file provides template for all exceptions handler and 00009 * peripherals interrupt service routine. 00010 ****************************************************************************** 00011 * @attention 00012 * 00013 * <h2><center>© COPYRIGHT 2014 STMicroelectronics</center></h2> 00014 * 00015 * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License"); 00016 * You may not use this file except in compliance with the License. 00017 * You may obtain a copy of the License at: 00018 * 00019 * http://www.st.com/software_license_agreement_liberty_v2 00020 * 00021 * Unless required by applicable law or agreed to in writing, software 00022 * distributed under the License is distributed on an "AS IS" BASIS, 00023 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 00024 * See the License for the specific language governing permissions and 00025 * limitations under the License. 00026 * 00027 ****************************************************************************** 00028 */ 00029 00030 /* Includes ------------------------------------------------------------------*/ 00031 #include "stm32f0xx_it.h" 00032 00033 /** @addtogroup STM32F0xx_StdPeriph_Examples 00034 * @{ 00035 */ 00036 00037 /** @addtogroup Calendar 00038 * @{ 00039 */ 00040 00041 /* Private typedef -----------------------------------------------------------*/ 00042 /* Private define ------------------------------------------------------------*/ 00043 /* Private macro -------------------------------------------------------------*/ 00044 /* Private variables ---------------------------------------------------------*/ 00045 /* Private function prototypes -----------------------------------------------*/ 00046 /* Private functions ---------------------------------------------------------*/ 00047 00048 /******************************************************************************/ 00049 /* Cortex-M0 Processor Exceptions Handlers */ 00050 /******************************************************************************/ 00051 00052 /** 00053 * @brief This function handles NMI exception. 00054 * @param None 00055 * @retval None 00056 */ 00057 void NMI_Handler(void) 00058 { 00059 } 00060 00061 /** 00062 * @brief This function handles Hard Fault exception. 00063 * @param None 00064 * @retval None 00065 */ 00066 void HardFault_Handler(void) 00067 { 00068 /* Go to infinite loop when Hard Fault exception occurs */ 00069 while (1) 00070 { 00071 } 00072 } 00073 00074 /** 00075 * @brief This function handles SVCall exception. 00076 * @param None 00077 * @retval None 00078 */ 00079 void SVC_Handler(void) 00080 { 00081 } 00082 00083 /** 00084 * @brief This function handles PendSVC exception. 00085 * @param None 00086 * @retval None 00087 */ 00088 void PendSV_Handler(void) 00089 { 00090 } 00091 00092 /** 00093 * @brief This function handles SysTick Handler. 00094 * @param None 00095 * @retval None 00096 */ 00097 void SysTick_Handler(void) 00098 { 00099 } 00100 00101 /******************************************************************************/ 00102 /* STM32F0xx Peripherals Interrupt Handlers */ 00103 /******************************************************************************/ 00104 /** 00105 * @brief This function handles External line 0 interrupt request. 00106 * @param None 00107 * @retval None 00108 */ 00109 void EXTI0_1_IRQHandler(void) 00110 { 00111 if(EXTI_GetITStatus(SEL_BUTTON_EXTI_LINE) != RESET) 00112 { 00113 /* Set the new RTC configuration */ 00114 RTC_TimeRegulate(); 00115 00116 /* Clear the SEL Button EXTI line pending bit */ 00117 EXTI_ClearITPendingBit(SEL_BUTTON_EXTI_LINE); 00118 } 00119 } 00120 00121 /** 00122 * @brief This function handles External lines 9 to 5 interrupt request. 00123 * @param None 00124 * @retval None 00125 */ 00126 void EXTI4_15_IRQHandler(void) 00127 { 00128 if(EXTI_GetITStatus(UP_BUTTON_EXTI_LINE) != RESET) 00129 { 00130 /* Display the current alarm on the Hyperterminal */ 00131 RTC_AlarmShow(); 00132 00133 /* Clear the UP Button EXTI line pending bit */ 00134 EXTI_ClearITPendingBit(UP_BUTTON_EXTI_LINE); 00135 } 00136 00137 if(EXTI_GetITStatus(TAMPER_BUTTON_EXTI_LINE) != RESET) 00138 { 00139 /* Display the current time on the Hyperterminal */ 00140 RTC_TimeShow(); 00141 00142 /* Clear the Key Button EXTI line pending bit */ 00143 EXTI_ClearITPendingBit(TAMPER_BUTTON_EXTI_LINE); 00144 } 00145 } 00146 00147 /** 00148 * @brief This function handles RTC interrupt request. 00149 * @param None 00150 * @retval None 00151 */ 00152 void RTC_IRQHandler(void) 00153 { 00154 if(RTC_GetITStatus(RTC_IT_ALRA) != RESET) 00155 { 00156 STM_EVAL_LEDToggle(LED1); 00157 RTC_ClearITPendingBit(RTC_IT_ALRA); 00158 EXTI_ClearITPendingBit(EXTI_Line17); 00159 } 00160 } 00161 /******************************************************************************/ 00162 /* STM32F0xx Peripherals Interrupt Handlers */ 00163 /* Add here the Interrupt Handler for the used peripheral(s) (PPP), for the */ 00164 /* available peripheral interrupt handler's name please refer to the startup */ 00165 /* file (startup_stm32f0xx.s). */ 00166 /******************************************************************************/ 00167 00168 /** 00169 * @brief This function handles PPP interrupt request. 00170 * @param None 00171 * @retval None 00172 */ 00173 /*void PPP_IRQHandler(void) 00174 { 00175 }*/ 00176 00177 /** 00178 * @} 00179 */ 00180 00181 /** 00182 * @} 00183 */ 00184 00185 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/