ex02.2_SW - withrobot/myCortex-STM32F4 GitHub Wiki

개요

SW 예제는 STM32 MCU의 GPIO 핀을 입력 모드로 이용하는 예를 다루고 있습니다. myCortex-STM32F4 보드에 장착된 스위치들은 부트와 리셋 스위치로 일반 GPIO에 연결된 것은 아닙니다. 본 예제를 실행하기 위해서는 Switch 드라이버에서 안내하는 바와 같이 별도의 스위치 회로를 구성해야 합니다.

관련 Peripheral

관련 Driver

소스 살펴보기

main.c 파일 하나로 구성되어 있습니다.

7 line:

#include "stm32f4xx.h"

기본적인 헤더 파일을 include하고 있습니다. StdPeriph library를 사용하는 경우에는 필수적으로 include해야 하는 헤더 파일입니다.

9 line:

#include "switch.h"

drv 폴더에 있는 스위치 드라이버의 헤더파일입니다. PA0와 PB10에 푸쉬 스위치가 연결된 것을 가정하고 만들어진 드라이버입니다.

15 line:

SW_Init();

스위치 관련 페리페럴들을 초기화하는 함수를 호출합니다. 스위치를 사용하기 위해 최초 한번 초기화가 이루어져야 합니다.

19 line:

// SW1(PE0)이 눌려져 있는 동안 붉은색 LED를 켠다.
if (SW_1_IS_PUSHED())
    LED_R_ON();
else
    LED_R_OFF();

PA0에 연결된 SW1이 눌려졌는지 확인합니다. 스위치가 눌려졌다면 적색 LED를 켜고 아니라면 적색 LED를 끕니다. 뒤에 이어지는 코드는 SW2와 녹색 LED를 이용해 동일한 로직을 구현합니다.

실행 방법

프로젝트를 빌드해서 다운로드 합니다. Switch 드라이버에서 설명한 바와 같이 스위치 회로를 구성합니다.

PA0에 연결된 스위치를 누르고 있는 동안 보드의 적색 LED가 켜지고 PB10에 연결된 스위치를 누르고 있는 동안 보드의 녹색 LED가 켜지는 것을 확인합니다.