solved some mistakes... not yet working!

redesign_interrupts
polymurph 3 years ago
parent 03801bd5e6
commit d2af5b6a4b

@ -12,7 +12,7 @@
volatile uint8_t led_on;
void setup();
#if 0
void EXTI0_1_IRQHandler(void)
{
if(EXTI->PR & EXTI_PR_PIF1) {
@ -52,13 +52,15 @@ void risingEdgeInterruptPinA1()
}
}
}
#endif
void interruptLEDtoggleOnTIM1counterCompare()
{
//timerInitCounter(timer_2, 0xFFFF, 0, upCounting);
// reset timer 2 periperal
RCC->APB1RSTR |= RCC_APB1RSTR_TIM2RST;
//while(RCC->APB1RSTR & RCC_APB1RSTR_TIM2RST);
// enable timer 2 peripheral
RCC->APB1ENR |= RCC_APB1ENR_TIM2EN;
@ -69,6 +71,8 @@ void interruptLEDtoggleOnTIM1counterCompare()
// only allow under-/overflow interrupts
TIM2->CR1 |= TIM_CR1_URS;
TIM2->CR1 |= TIM_CR1_DIR;
// set clock prescaler
TIM2->PSC = 0xFFFF;
@ -83,7 +87,8 @@ void interruptLEDtoggleOnTIM1counterCompare()
NVIC_SetPriority(TIM2_IRQn,0);
NVIC_EnableIRQ(TIM2_IRQn);
// timer enable
TIM2->CR1 |= TIM_CR1_CEN;
//timerSart(timer_2);
@ -103,8 +108,10 @@ void interruptLEDtoggleOnTIM1counterCompare()
void TIM2_IRQHandler(void)
{
if(TIM2->SR & TIM_SR_UIF) {
// clear flag
TIM2->SR &= ~TIM_SR_UIF;
//pinWrite(pinB3,1);
pinToggle(pinB3);
}
@ -115,7 +122,6 @@ int main(int argc, char *argv[])
{
setup();
//risingEdgeInterruptPinA1();
interruptLEDtoggleOnTIM1counterCompare();
while(1);

Loading…
Cancel
Save