[CubeMX] INTERRUPT

03_CubeMX_INTERRUPT

enter image description here

[CubeMX] INTERRUPT

1. INTERRUPT

외부 인터럽트 사용은 어떻게?
CubeMX에서 GUI 셋팅으로 인터럽트를 셋팅해주면 코드를 자동 생성해주기 때문에 간단하다.
맞는 위치에 넣기만 하면 된다.

#include "gpio.h"

int main(void)
{
  MX_GPIO_Init();
  while (1)
  {
	HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, GPIO_PIN_RESET);
    printf("Switch Released\r\n");
	HAL_Delay(100);
  }
}

// 자동생성된 함수
void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
{
	HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, GPIO_PIN_SET);
	printf("Switch Pressed\r\n");
}

이런 느낌이다.

자동생성된 callback 함수에 인터럽트 발생 시 실행할 코드를 넣고
그전에 while 문에서 다른 동작들을 하면 된다.

끝 :)

댓글 쓰기

0 댓글