STM32F0xx Standard Peripherals Firmware Library
|
STM32F0xx_StdPeriph_Examples/TIM/TIM_PWMInput/stm32f0xx_it.c
Go to the documentation of this file.
00001 /** 00002 ****************************************************************************** 00003 * @file TIM/TIM_PWMInput/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 TIM_PWMInput 00038 * @{ 00039 */ 00040 00041 /* Private typedef -----------------------------------------------------------*/ 00042 /* Private define ------------------------------------------------------------*/ 00043 /* Private macro -------------------------------------------------------------*/ 00044 /* Private variables ---------------------------------------------------------*/ 00045 __IO uint16_t IC2Value = 0; 00046 __IO uint16_t DutyCycle = 0; 00047 __IO uint32_t Frequency = 0; 00048 00049 /* Private function prototypes -----------------------------------------------*/ 00050 /* Private functions ---------------------------------------------------------*/ 00051 00052 /******************************************************************************/ 00053 /* Cortex-M0 Processor Exceptions Handlers */ 00054 /******************************************************************************/ 00055 00056 /** 00057 * @brief This function handles NMI exception. 00058 * @param None 00059 * @retval None 00060 */ 00061 void NMI_Handler(void) 00062 { 00063 } 00064 00065 /** 00066 * @brief This function handles Hard Fault exception. 00067 * @param None 00068 * @retval None 00069 */ 00070 void HardFault_Handler(void) 00071 { 00072 /* Go to infinite loop when Hard Fault exception occurs */ 00073 while (1) 00074 { 00075 } 00076 } 00077 00078 /** 00079 * @brief This function handles SVCall exception. 00080 * @param None 00081 * @retval None 00082 */ 00083 void SVC_Handler(void) 00084 { 00085 } 00086 00087 /** 00088 * @brief This function handles PendSVC exception. 00089 * @param None 00090 * @retval None 00091 */ 00092 void PendSV_Handler(void) 00093 { 00094 } 00095 00096 /** 00097 * @brief This function handles SysTick Handler. 00098 * @param None 00099 * @retval None 00100 */ 00101 void SysTick_Handler(void) 00102 { 00103 } 00104 00105 /******************************************************************************/ 00106 /* STM32F0xx Peripherals Interrupt Handlers */ 00107 /* Add here the Interrupt Handler for the used peripheral(s) (PPP), for the */ 00108 /* available peripheral interrupt handler's name please refer to the startup */ 00109 /* file (startup_stm32f0xx.s). */ 00110 /******************************************************************************/ 00111 /** 00112 * @brief This function handles TIM2 global interrupt request. 00113 * @param None 00114 * @retval None 00115 */ 00116 void TIM2_IRQHandler(void) 00117 { 00118 /* Clear TIM2 Capture compare interrupt pending bit */ 00119 TIM_ClearITPendingBit(TIM2, TIM_IT_CC2); 00120 00121 /* Get the Input Capture value */ 00122 IC2Value = TIM_GetCapture2(TIM2); 00123 00124 if (IC2Value != 0) 00125 { 00126 /* Duty cycle computation */ 00127 DutyCycle = (TIM_GetCapture1(TIM2) * 100) / IC2Value; 00128 00129 /* Frequency computation */ 00130 Frequency = SystemCoreClock / IC2Value; 00131 } 00132 else 00133 { 00134 DutyCycle = 0; 00135 Frequency = 0; 00136 } 00137 } 00138 00139 /** 00140 * @brief This function handles PPP interrupt request. 00141 * @param None 00142 * @retval None 00143 */ 00144 /*void PPP_IRQHandler(void) 00145 { 00146 }*/ 00147 00148 /** 00149 * @} 00150 */ 00151 00152 /** 00153 * @} 00154 */ 00155 00156 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/