blob: a656d685ff2a86f1693d2c65fdc745e58edeccec [file] [log] [blame]
/********************* (C) COPYRIGHT 2007 RAISONANCE S.A.S. *******************/
/**
*
* @file stm32f10x_circle_it.c
* @brief Interrupt handler for the CircleOS project.
* @author FL
* @author IB
* @date 07/2007
*
**/
/******************************************************************************/
/* Includes ------------------------------------------------------------------*/
#include "circle.h"
/* External variables --------------------------------------------------------*/
extern u16 CCR_Val;
extern u16 Current_CCR_BackLightStart;
/*******************************************************************************
*
* NMIException
*
*******************************************************************************/
/**
*
* Handles the NMI exception.
*
**/
/******************************************************************************/
void NMIException( void ) {}
/*******************************************************************************
*
* HardFaultException
*
*******************************************************************************/
/**
*
* Handles the Hard Fault exception.
*
**/
/******************************************************************************/
void HardFaultException( void )
{
#ifdef TIMING_ANALYSIS //to debug with a scope
GPIO_WriteBit( GPIOA, GPIO_Pin_5, Bit_RESET );
GPIO_WriteBit( GPIOA, GPIO_Pin_5, Bit_SET );
#endif
}
/*******************************************************************************
*
* MemManageException
*
*******************************************************************************/
/**
*
* Handles the Memory Manage exception.
*
**/
/******************************************************************************/
void MemManageException( void ) {}
/*******************************************************************************
*
* BusFaultException
*
*******************************************************************************/
/**
*
* Handles the Bus Fault exception.
*
**/
/******************************************************************************/
void BusFaultException( void ) {}
/*******************************************************************************
*
* UsageFaultException
*
*******************************************************************************/
/**
*
* Handles the Usage Fault exception.
*
**/
/******************************************************************************/
void UsageFaultException( void ) {}
/*******************************************************************************
*
* DebugMonitor
*
*******************************************************************************/
/**
*
* Handles the Debug Monitor exception.
*
**/
/******************************************************************************/
void DebugMonitor( void ) {}
/*******************************************************************************
*
* SVCHandler
*
*******************************************************************************/
/**
*
* Handles the SVCall exception.
*
**/
/******************************************************************************/
void SVCHandler( void ) {}
/*******************************************************************************
*
* PendSVC
*
*******************************************************************************/
/**
*
* Handles the PendSVC exception.
*
**/
/******************************************************************************/
void PendSVC( void ) {}
/*******************************************************************************
*
* DummyHandler
*
*******************************************************************************/
/**
*
* Default handling for the IRQ-Exception
*
**/
/******************************************************************************/
void DummyHandler ( void ) {}
/*******************************************************************************
*
* TIM2_IRQHandler
*
*******************************************************************************/
/**
*
* Handles the TIM2 global interrupt request.
*
**/
/******************************************************************************/
void TIM2_IRQHandler( void )
{
#ifdef TIMING_ANALYSIS //to debug with a scope
GPIO_WriteBit( GPIOA, GPIO_Pin_7, Bit_RESET );
#endif
/* Clear TIM2 update interrupt */
TIM_ClearITPendingBit( TIM2, TIM_IT_Update );
MEMS_Handler();
#ifdef TIMING_ANALYSIS //to debug with a scope
GPIO_WriteBit( GPIOA, GPIO_Pin_7, Bit_SET );
#endif
}
/*******************************************************************************
*
* TIM3_IRQHandler
*
*******************************************************************************/
/**
*
* Handles the TIM3 global interrupt request.
*
**/
/******************************************************************************/
void TIM3_IRQHandler( void )
{
u16 capture = 0;
if( TIM_GetITStatus( TIM3, TIM_IT_CC3 ) != RESET )
{
capture = TIM_GetCapture3( TIM3 );
TIM_SetCompare3( TIM3, capture + CCR_Val + 1 );
TIM_ClearITPendingBit( TIM3, TIM_IT_CC3 );
}
}
/*******************************************************************************
*
* TIM4_IRQHandler
*
*******************************************************************************/
/**
*
* Handles the TIM4 global interrupt request.
*
**/
/******************************************************************************/
void TIM4_IRQHandler( void )
{
u16 BackLight_capture = 0;
if( TIM_GetITStatus( TIM4, TIM_IT_CC2 ) != RESET )
{
BackLight_capture = TIM_GetCapture2( TIM4 );
TIM_SetCompare2( TIM4, BackLight_capture + Current_CCR_BackLightStart + 1 );
TIM_ClearITPendingBit( TIM4, TIM_IT_CC2 );
}
}