ST/STM32F746DIS

STM32F746G DISCOVERY - GPIO

engineer4ever 2025. 4. 19. 11:06

 

MCU
STM32F746G DISCOVERY(ST)
IDE
Atollic(TrueSTUDIO), STM32CubeMX
목표
HAL driver를 사용하여 GPIO에 LED를 연결해 LED를 ON-OFF 한다.

 

1. STM32CubeMX : GPIO OUTPUT 설정

- 'Pinout & Configuration' Tab으로 이동

1) Pinout View 로 마우스 이동

2) PI1을 Mouse 왼쪽 버튼 클릭하여 GPIO_Output 선택

 

3) Mouse 오른쪽 버튼 클릭하여 Enter User Label 선택 : GPIO_Output → LED 으로 변경

 

- GPIO Configuration 확인

1) GPIO 선택

2) PI1 선택

3) GPIO output level : Low(LED ON), HIGH(LED OFF) ; 초기 상태

4) GPIO mode : Output Push Pull, Output Open Drain

5) Maximum output speed : Low, Medium, High

6) User Label : LED

 

2. STM32CubeMX : GPIO INPUT 설정

- 'Pinout & Configuration' Tab으로 이동

1) Pinout View 로 마우스 이동

2) PI11을 Mouse 왼쪽 버튼 클릭하여 GPIO_Input 선택

 

3) Mouse 오른쪽 버튼 클릭하여 Enter User Label 선택 : GPIO_Input → SW1 으로 변경

 

- GPIO Configuration 확인

1) GPIO 선택

2) PB1 선택

3) GPIO mode : Input mode

4) GPIO Pull-up/Pull-down : No pull-up and No pull-down, Pull-up, Pull-down

5) User Label : SW1

 

- GENERATE CODE 클릭


3. ATOLLIC 실행

 

- File - Import...

 

- STM32CubeMX에서 생성한 프로젝트 폴더를 선택 후 Finish

 

- ATOLLIC : main.c 수정

 

- main() : SW1 입력에 따라 LED toggle 되는 source code

while (1)
{
/* USER CODE END WHILE */
	if(HAL_GPIO_ReadPin(SW1_GPIO_Port, SW1_Pin) == 0)
	{
		HAL_GPIO_WritePin(LED_GPIO_Port, LED_Pin, GPIO_PIN_SET);
	}
	else
	{
		HAL_GPIO_WritePin(LED_GPIO_Port, LED_Pin, GPIO_PIN_RESET);
	}
/* USER CODE BEGIN 3 */
}