STM32F0xx Standard Peripherals Firmware Library: stm32f0xx_it.c Source File

STM32F0xx Standard Peripherals 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>&copy; 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****/
STM32L1xx Standard Peripherals Library: Footer

 

 

 For complete documentation on STM32 Microcontrollers visit www.st.com/STM32