[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 댓글