RefKEIL/ProjetsKEIL/timer_interruption/Source/Principale.c

33 lines
687 B
C

#include "stm32f10x.h"
#include "../../Drivers/gpiodriver.h"
#include "../../Drivers/timerdriver.h"
void ToggleLed(void)
{
MyGPIO_Toggle(GPIOA,5);
}
int main (void)
{
MyGPIO_Struct_TypeDef led = {GPIOA,5,Out_PullUp}; //led
MyGPIO_Struct_TypeDef pwm1timer1 = {GPIOA,1,AltOut_Ppull};
MyTimer_Struct_TypeDef timer2 = {TIM2,499,7199}; //timer
//init & start LED, PWM, Timer
MyGPIO_Init(&led);
MyGPIO_Init(&pwm1timer1);
MyTimer_Base_Init(&timer2);
MyTimer_Base_Start(TIM2);
//Init Interruption & Activate
Init_Periph(ToggleLed);
MyTimer_ActiveIT(TIM2,2);
//PWM enable
TIM2->BDTR |= (1<<1); // MOE A FAIRE
TIM2->CCR1 = 400;
TIM2->CCER |= (1<<0);
do{
}while(1) ;
}