44 lines
No EOL
879 B
C
44 lines
No EOL
879 B
C
#include "Driver_GPIO.h"
|
|
#include "Driver_Timer.h"
|
|
|
|
void Timer_interup(void);
|
|
void ADC_interup(void);
|
|
|
|
int main (void){
|
|
//Déclaration d'un Timer 500 ms
|
|
MyTimer_Struct_TypeDef TIM500ms;
|
|
//Init Timer 2 et Test
|
|
TIM500ms.Timer = TIM2;
|
|
TIM500ms.PSC = 7200-1; // =0.5ms(calculé à partir de la fréquence du micro)
|
|
TIM500ms.ARR = 5000-1;
|
|
MyTimer_Base_Init(&TIM500ms, Timer_interup);
|
|
|
|
TIM2->DIER |= 1<< 0 ; //INTERRUPTION PERIPH
|
|
//TIM2->DIER |= TIM_DIER_UIE ;
|
|
NVIC->ISER[0] |= 1<<TIM2_IRQn ; //INTERRUPTION COEUR
|
|
NVIC->IP[TIM2_IRQn] = 2<< 4 ;
|
|
|
|
|
|
MyTimer_Base_Start(TIM500ms.Timer);
|
|
|
|
MyTimer_PWM(&TIM500ms, 50);
|
|
|
|
|
|
//Boucle infinie de la réponse de la LED à l'état BP
|
|
|
|
while(1){
|
|
}
|
|
}
|
|
|
|
|
|
//Interuption du programme par trigger du timer
|
|
void Timer_interup(void)
|
|
{
|
|
MyGPIO_Toggle(GPIOA,5);
|
|
}
|
|
|
|
//Interruption du programme par trigger de l'ADC
|
|
void ADC_interrup(void)
|
|
{
|
|
|
|
} |