stm32 공부

STM32 NUCLEO-L476RG로 LED 제어

m_yell 2023. 5. 2. 14:45

STM32 NUCLEO-L476RG 로 LED 제어하기

 

** 혼자 공부하며 작성하는 거라 틀린 부분이 있을 수 있습니다. 

 

 

크게 3가지로 분류할 수 있고 

1. 프로젝트 생성

2. pin 설정

3. 코드 작성 

각 단계별로 구현하겠다.

 

1. 프로젝트 생성

File -> New -> STM32 Project -> 사용하는 보드을 찾은 후 선택 -> project name 설정 후 Finish 해서 프로젝트 생성

 

2. pin 설정

.ioc 파일을 열어 GPIO 핀 설정을 할 것이다.

핀 설정을 해두고 버튼 인터럽트를 설정해두었다.

 

3. 코드 작성

버튼을 눌렀을때 켜짐, 꺼짐, 토글 각 3버전으로 할 것이다.

 

버튼이 얼마나 눌렸는지 카운트할 변수 mode를 선언해둔 뒤

 

 버튼이 눌렸을때 콜백함수가 불리는부분에서 

버튼을 눌렀을때마다 mode를 +1해준다.

mode가 2를 초과했을 시, 0이 되도록 해준다.

위 함수는 stm32l4xx_hal_gpio.c 파일안에 선언되어있다.

 

CODE BEGIN이라고 적혀있는 곳 말고 다른 곳에 코드를 작성하면 debugging 할때 코드가 사라져버리니 저기 안에 작성할 것

 

그리고 main 함수의 while문 안에서 mode 상태를 계속 읽는다.