본문 바로가기
전자/임베디드 시스템

STM32 HAL_TIM_IRQHandler 함수 분석

by Begi 2022. 6. 30.
반응형

STM32에서 타이머 인터럽터가 걸렸을 실행되는 HAL_TIM_IRQHandler 함수는 다음과 같다. if 문으로 타이머 인터럽터의 종류를 판단한다.

 

 

채널 1에서 Capture Compare 인터럽터(CC1 인터럽터)가 발생했을 때는 다음이 실행된다. 타이머의 SR 레지스터에서 CC1 flag이 1 인지를 검사하고 1 이라면 clear 하고 callback 함수를 호출한다.

 

 

타이머의 SR 레지스터는 다음과 같다. 0비트의 UIF가 TIM_FLAG_UPDATE이고 1비트의 CC1IF이 TIM_FLAG_CC1이다.

 

 

매크로 함수 __HAL_TIM_CLEAR_IT는 다음과 같다. Flag을 clear하려면 해당 비트에 0을 쓰면 된다. 1을 쓰도 1이 되지 않고 무시된다.

 

 

반응형

'전자 > 임베디드 시스템' 카테고리의 다른 글

STM32 타이머의 Preload 뜻  (0) 2022.07.06
Free Running Timer 이란?  (0) 2022.07.03
STM32 타이머 PWM 출력  (0) 2022.06.29
STM32 Ethernet 통신  (0) 2022.06.26
STM32 중국 짝퉁 칩  (0) 2022.06.14

댓글