STM32/이론

STM32 GPIO제어하기 OTUPUT_1편(LED깜빡이기)

원원 2023. 10. 2. 14:59

안녕하세요. 오늘은 NUCLEO-F103RB 보드로 HAL라이브러리를 사용하여 GPIO WRITE를 제어해보겠습니다.
1편에서는 사용방법만 간단하게 확인해보고 2편에서는 자세히 알아보겠습니다. 

사용 보드: NUCLEO-F103RB
개발환경 : STM32CubeIDE


NUCLEO-F103RB 보드에는 LED가 기본적으로 달려있어서 달려있는 LED를 사용하면 편리합니다. 

빨강 네모에 있는 LD2를 사용하면 됩니다. 그리고 LD2는 초록색이고 PA5에 연결되어 있습니다.

 

stm32cubeIDE에는 코드제너레이터가 있으므로 매우 편리합니다

0번부터 3번까지 진행하여 PA5핀을 출력설정해줍니다.

그리고나서 저장을 누르면 코드가 자동으로 생성됩니다.

이제 main.c에 가서 코드를 작성합니다

HAL라이브러리를 사용하므로 Write 함수를 호출하면 됩니다.
위의 사진에 적혀있는 HAL_GPIO_WritePin함수가 Write하는 함수입니다. 
첫번째 전달인자는 GPIOA,GPIOB등과 같은 그룹명을 적습니다
두번째 전달인자는 PIN번호를 적습니다
세번째 전달인자는 HIGH(1), LOW(0)을 적습니다
GPIOA, GPIO_PIN_5와 같은 명칭은 각각의 address들이 모두 define되어있습니다

위의 코드를 넣으면, LED가 1초마다 blink 하는 걸 확인할 수 있습니다.

 

2편에서는 위에서 설정했던 내용들을 자세히 알아보겠습니다.