STM32F030

HUDA volny hudaklan na volny.cz
Středa Květen 21 09:05:12 CEST 2014


Dobrý den,
ještě bych měl dotaz k přerušení na subjektu.

Mám nastavený čítač TIM1 v modu pwm1 na kanálu 1 a 2.
Od CCR2 je spouštěné přerušení. Vše chodí jak má.
Jen jsem se chtěl zeptat, zda musím také mazat
příznak přerušení i na NVIC, nebo stačí jen na TIM1.
Obojí funguje, ale nevím co je správně?

void TIM1_CC_IRQHandler(void)
  {
   NVIC_ClearPendingIRQ(TIM1_CC_IRQn);                      //! Clear  
pending interrupt Bit
   if (TIM1->SR & TIM_FLAG_CC2)
     {
      TIM1->SR &= (uint16_t)~TIM_FLAG_CC2;                  //! smazani  
priznaku TIM_FLAG_CC2
     }
  }

nebo stačí jen

void TIM1_CC_IRQHandler(void)
  {
   if (TIM1->SR & TIM_FLAG_CC2)
     {
      TIM1->SR &= (uint16_t)~TIM_FLAG_CC2;                  //! smazani  
priznaku TIM_FLAG_CC2
     }
  }


Diky.
HUDA


Další informace o konferenci Hw-list