STM32F0xx Standard Peripherals Firmware Library: stm32f0xx_it.c Source File

STM32F0xx Standard Peripherals Library

STM32F0xx_StdPeriph_Examples/I2C/I2C_TwoBoards/stm32f0xx_it.c
Go to the documentation of this file.
00001 /**
00002   ******************************************************************************
00003   * @file    I2C/I2C_TwoBoards/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 I2C_TwoBoards
00038   * @{
00039   */
00040 
00041 /* Private typedef -----------------------------------------------------------*/
00042 /* Private define ------------------------------------------------------------*/
00043 /* Private macro -------------------------------------------------------------*/
00044 /* Private variables ---------------------------------------------------------*/
00045 extern __IO uint32_t ActionState, RecieverMode;
00046 
00047 /* Private function prototypes -----------------------------------------------*/
00048 /* Private functions ---------------------------------------------------------*/
00049 
00050 /******************************************************************************/
00051 /*            Cortex-M0 Processor Exceptions Handlers                         */
00052 /******************************************************************************/
00053 
00054 /**
00055   * @brief  This function handles NMI exception.
00056   * @param  None
00057   * @retval None
00058   */
00059 void NMI_Handler(void)
00060 {
00061 }
00062 
00063 /**
00064   * @brief  This function handles Hard Fault exception.
00065   * @param  None
00066   * @retval None
00067   */
00068 void HardFault_Handler(void)
00069 {
00070   /* Go to infinite loop when Hard Fault exception occurs */
00071   while (1)
00072   {
00073   }
00074 }
00075 
00076 /**
00077   * @brief  This function handles SVCall exception.
00078   * @param  None
00079   * @retval None
00080   */
00081 void SVC_Handler(void)
00082 {
00083 }
00084 
00085 /**
00086   * @brief  This function handles PendSVC exception.
00087   * @param  None
00088   * @retval None
00089   */
00090 void PendSV_Handler(void)
00091 {
00092 }
00093 
00094 /**
00095   * @brief  This function handles SysTick Handler.
00096   * @param  None
00097   * @retval None
00098   */
00099 /*void SysTick_Handler(void)
00100 {
00101 }*/
00102 
00103 /******************************************************************************/
00104 /*                 STM32F0xx Peripherals Interrupt Handlers                   */
00105 /*  Add here the Interrupt Handler for the used peripheral(s) (PPP), for the  */
00106 /*  available peripheral interrupt handler's name please refer to the startup */
00107 /*  file (startup_stm32f0xx.s).                                            */
00108 /******************************************************************************/
00109  
00110 /**
00111   * @brief  This function handles EXTI0_1 interrupt request.
00112   * @param  None
00113   * @retval None
00114   */
00115 void EXTI0_1_IRQHandler(void)
00116 {
00117   /* Check if the Key push button has been pushed */
00118   if (EXTI_GetFlagStatus(SEL_BUTTON_EXTI_LINE) != RESET)  
00119   {
00120     if ((ActionState == ACTION_NONE) && (RecieverMode == STATE_OFF))
00121     {
00122       ActionState = BUTTON_SEL;
00123     }    
00124     /* Clear the interrupt pending bit */
00125     EXTI_ClearITPendingBit(SEL_BUTTON_EXTI_LINE);
00126   }
00127 }
00128   
00129 /**
00130   * @brief  This function handles EXTI4_15 interrupt request.
00131   * @param  None
00132   * @retval None
00133   */
00134 void EXTI4_15_IRQHandler(void)
00135 {   
00136   /* Check if the Tamper push button has been pushed */
00137   if (EXTI_GetFlagStatus(TAMPER_BUTTON_EXTI_LINE) != RESET)  
00138   {
00139     if ((ActionState == ACTION_NONE) && (RecieverMode == STATE_OFF))
00140     {
00141       ActionState = BUTTON_TAMPER;
00142     }    
00143     /* Clear the interrupt pending bit */
00144     EXTI_ClearITPendingBit(TAMPER_BUTTON_EXTI_LINE);
00145   }
00146 }
00147   
00148 /**
00149   * @brief  This function handles TIM6 global interrupt request.
00150   * @param  None
00151   * @retval None
00152   */  
00153 void TIM6_DAC_IRQHandler(void)  
00154 {
00155   if (TIM_GetITStatus(TIM6, TIM_IT_Update) != RESET)
00156   {    
00157     STM_EVAL_LEDToggle(LED1);
00158     STM_EVAL_LEDToggle(LED4);
00159     
00160     TIM_ClearITPendingBit(TIM6, TIM_IT_Update);
00161   } 
00162 }  
00163 
00164 /**
00165   * @brief  This function handles TIM17 global interrupt request.
00166   * @param  None
00167   * @retval None
00168   */
00169 void TIM17_IRQHandler(void)
00170 {
00171   if (TIM_GetITStatus(TIM17, TIM_IT_Update) != RESET)
00172   {    
00173     if ((ActionState == ACTION_NONE) && (RecieverMode == STATE_OFF))
00174     {
00175       ActionState =  ACTION_PERIODIC ;
00176     }
00177     
00178     /* Clear Timer interrupt pending bit */
00179     TIM_ClearITPendingBit(TIM17, TIM_IT_Update);
00180     
00181     /* Clear Key Button Interrupt pending bit */
00182     EXTI_ClearITPendingBit(SEL_BUTTON_EXTI_LINE);
00183     EXTI_ClearFlag(SEL_BUTTON_EXTI_LINE); 
00184   } 
00185 }
00186 
00187 /**
00188   * @brief  This function handles PPP interrupt request.
00189   * @param  None
00190   * @retval None
00191   */
00192 /*void PPP_IRQHandler(void)
00193 {
00194 }*/
00195 
00196 /**
00197   * @}
00198   */ 
00199 
00200 /**
00201   * @}
00202   */ 
00203 
00204 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
STM32L1xx Standard Peripherals Library: Footer

 

 

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