LED Blinking 코드 작성 – STM32F407G DISC1 보드
머 간단하게 LED 제어하는 코드를 찾아 봤다. 아래 링크에 아주 자세하게 설명되어 있다.
핵심 코드는 아래
void StartDefaultTask(void *argument)
{
/* init code for LWIP */
MX_LWIP_Init();
/* init code for USB_HOST */
MX_USB_HOST_Init();
/* USER CODE BEGIN 5 */
/* Infinite loop */
for(;;)
{
osDelay(10);
HAL_GPIO_WritePin(VBUS_SW_GPIO_Port, VBUS_SW_Pin, GPIO_PIN_RESET);
HAL_GPIO_WritePin(GPIOD, GPIO_PIN_12|GPIO_PIN_13|GPIO_PIN_14|GPIO_PIN_15, GPIO_PIN_SET);
osDelay(1000);
HAL_GPIO_WritePin(GPIOD, GPIO_PIN_12|GPIO_PIN_13|GPIO_PIN_14|GPIO_PIN_15, GPIO_PIN_RESET);
osDelay(1000);
}
/* USER CODE END 5 */
}
당연히 보드에 해당 핀이 연결되어 있으니 편하게 할 수 있다. STM32F407G-DISC1 보드는 아래 처럼 LED가 이미 연결되어 있다.
자신의 보드라면 해당 핀에 LED를 연결해야 한다.
STM32CubeIDE 를 사용한다면 ioc 파일을 열어 해당 핀을 아래 그림처럼 GPIO_Output으로 설정하고, 원하는 지점에 위의 코드를 참고해서 추가하면 LED가 막 켜졌다 꺼졌다 한다.
결과는 아주 LED가 빨, 파, 녹, 주황인가 이렇게 블링 블링하네
레퍼런스 사이트
https://medium.com/@rlamarrr/introduction-to-stm32cube-blinking-an-led-61469168f9e4