金牌会员
 
- 积分
- 2452
- 金钱
- 2452
- 注册时间
- 2015-11-1
- 在线时间
- 301 小时
|
发表于 2018-5-18 18:50:49
|
显示全部楼层
/******************************************************************************/
/* STM32F4xx Peripherals Interrupt Handlers */
/******************************************************************************/
/**
* @brief This function handles TIM1 global interrupt request.
* @param None
* @retval None
*/
void TIM1_CC_IRQHandler(void)
{
if(TIM_GetITStatus(TIM1, TIM_IT_CC2) == SET)
{
/* Clear TIM1 Capture compare interrupt pending bit */
TIM_ClearITPendingBit(TIM1, TIM_IT_CC2);
if(uhCaptureNumber == 0)
{
/* Get the Input Capture value */
uhIC3ReadValue1 = TIM_GetCapture2(TIM1);
uhCaptureNumber = 1;
}
else if(uhCaptureNumber == 1)
{
/* Get the Input Capture value */
uhIC3ReadValue2 = TIM_GetCapture2(TIM1);
/* Capture computation */
if (uhIC3ReadValue2 > uhIC3ReadValue1)
{
uwCapture = (uhIC3ReadValue2 - uhIC3ReadValue1);
}
else if (uhIC3ReadValue2 < uhIC3ReadValue1)
{
uwCapture = ((0xFFFF - uhIC3ReadValue1) + uhIC3ReadValue2);
}
else
{
uwCapture = 0;
}
/* Frequency computation */
uwTIM1Freq = (uint32_t) SystemCoreClock / uwCapture;
uhCaptureNumber = 0;
}
}
} |
|