STM32F0 EXTI CUBEMX로 설정하고 TrueSTUDIO로 코드 작성하기

STM32F0 EXTI 예제 포스팅입니다.

EXTI는 확장 인터럽트 같은 개념인데 주로 GPIO로 인터럽트를 걸고 싶을 때 사용하는 듯한다. 메뉴얼에서도 HAL 드라이버에서 딱히 별도의 라이브러리를 제공하고 있진 않다고 적혀있다. 그냥 뭐..사용하고 싶은 핀에 인터럽트를 걸고 싶으면 쓰는 듯하다.

 

글을 읽기전에 CUBEMX를 모른다면 이 포스팅을 참고하길 바란다.

이번에는 별다른 설정을 만지지 않고 바로 Configure 탭으로 가서 GPIO 탭을 선택한다.

 

그다음 NVIC 탭으로 가서 EXTI 탭을 클릭하고 Enable 해준다.

EXTI라인을 4부터 15까지 사용가능하다.

데이터시트를 찾아보면 한 라인의 4~15번핀까지  사용이 가능한 듯 하다.

디스크립션이 자세하지 않아 확실치는 않다.

이를테면 PA4번 핀으로 EXTI와 매칭한다면 EXTI4로 연결되나 보다.

 

좌측 상단의 버튼을 누르고

 

프로젝트 이름을 작성 및 경로 지정을 해준다음, 개발 툴을 지정해주고

 코드 제너레이트 해주면 끝

HAL_GPIO_EXTI_Callback()

디스크립션에서는 인터럽트 콜백함수로 이거 쓰면 된단다.

 

함수에서 GPIO_PIN을 입력인자로 받는다.

이것도 다른 인터럽트 함수처럼 if문으로 핀마다 다른 동작을 할 수 있게 선별할 수 있다.

 

디스트립션 함수 긁어다 써주고

파란 버튼 누르면 LED ON/OFF되게끔 코드를 짜고 돌렸다.

잘 되더라.

 

 

댓글 남기기

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.