티스토리 뷰

반응형

1. GPIO(General Port Input Output) output mode

           -GPIO모드에는 입력, 출력, 아날로그, 특수기능 4가지의 모드가 있다

           -이번 장은 출력모드로 GPIOG PORT14에 연결된 LED를 제어하는 방법을 익힌다

STM32F429i Discovery Board PG13 PG14는 좌측 그림과 같이 LED에 연결 되어 있다

 

좌측의 그림은 링크에서 UM1670 데이터 시트를 통해 참고한다



CUBE MX 설정

STM32F429i Discovery Board Serial Wire Debug 방식을 지원하므로 위와 같이 SYS를 설정한다

(위의 SYS설정은 앞으로 계속 사용될 설정이다 STM32F429i Discovery 보드로 디버그를 할 예정이라면 반드시 설정해주자)

PG14를 통해 LED를 제어할 것이므로 PG14 GPIO_Outpt 모드로 설정한다

이 예제는 나머지는 기본 설정을 사용한다.



Configuration창에서는 각 기능들의 상세 설정을 할 수 있다

우리는 PG14Output으로 설정했기 때문에 위와 같이 PG14가 나온다

GPIO output level: 설정한 핀의 초기 출력 값을 설정한다(현재 초기값 Low 0V 출력이 된다)

GPIO mode: Push Pull 모드로 설정된다(자세한 설명은 링크를 참고한다)

GPIO Pull-up/Pull-down: 주로 입력모드에서 사용된다(자세한 설명은 링크를 참고한다)

Maximum output speed: 논리값 변화(0V->5V, 5V->0V로 변하는 속도로 링크 DS9405 데이터시트를 참고한다)

 

Source Code

 

main.c 파일의

/* USER CODE BEGIN 3 */ 위치에 아래와 같은 소스 코드를 추가한다

    HAL_GPIO_WritePin(GPIOG, GPIO_PIN_14, GPIO_PIN_SET); //PORTG 14번 핀에 5V 출력

    HAL_Delay(500);//500ms Delay

    HAL_GPIO_WritePin(GPIOG, GPIO_PIN_14, GPIO_PIN_RESET);//PORTG 14번 핀에 0V 출력

    HAL_Delay(500); );//500ms Delay

 

HAL_GPIO_WritePin()함수, HAL 함수에 대해 더 자세히 알고 싶다면 링크UM1725 데이터시트를 참고한다

 

실행 결과

PG14에 연결된 LED 500ms 간격으로 깜빡인다


반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함