stm32로 led 제어하기

김상훈·2022년 8월 25일
1

stm32로 led를 제어해보자.

회로도를 보니까 PC6, PC7을 GPIO OUPUT으로 설정해주면 된다.

나는 PC7로 GPIO OUPUT으로 설정해서 LED를 제어할 것이다.
(다른 PIN들이 Enable 되어 있는 것은 무시)
가운데에 내가 쓰는 stm32 종류명도 나와있다. (stm32f427zgt6)


왼쪽에 Systemcore-GPIO탭에 들어가면 자동으로 이런식으로 설정이 되어 있을 것인데 이것들은 기본값으로 놔두겠다.

GPIO 설정해준 후에 위에 탭에 FIle-save를 누르면 generate code가 되고 main.c로 넘어가면 코드가 자동적으로 형성된 것을 볼 수 있다.

main문에 보면 이런 함수가 선언되어 있을 것인데 우리가 설정한대로 GPIO를 초기화 해준다. F3키를 누르면 아래 사진과 같이 세부 내용을 확인할 수 있다.

이후 코드를 작성해보면

C포트 7번핀을 제어한다는 뜻이고 LED가 있는 PIN을 Write해줌으로써 LED를 키겠다는 것이다.

USER CODE BEGIN과 END사이에 넣어야 하는 점을 주의하자!!

(GPIOC, GPIO_PIN7, 0); 으로 되어있는데 제일 뒤에 있는 0에 대해 설명을 하자면

3.3V가 1 즉 High 상태이므로 LED가 ON이 되려면 LOW값 즉 0을 넣어주어야 전위차로 인해 LED가 ON이 된다. 이것을 잘 살펴보아야 한다.

이러한 과정을 통해 LED가 켜짐을 확인했다.

추가적으로 While문에 Delay 함수와 함께 WritePin을 1,0 (high,low)로 변경해주면
LED가 계속 ON/OFF 되는 것도 확인해볼 수 있다.

profile
처음 접하는 소프트웨어

0개의 댓글