STM32F407G-DISC1 보드 Pinout

STM32F407G-DISC1 보드 Pinout 그림을 소장용으로 보관한다.

![](assets/images/2023/02/image-10.png?resize=1024%2C781&ssl=1)

복잡해도 머, 쓰는 것만 쓰긴하지만 찾아볼 때 좋다

LED Blinking 코드 작성 – STM32F407G DISC1 보드

머 간단하게 LED 제어하는 코드를 찾아 봤다. 아래 링크에 아주 자세하게 설명되어 있다.

> [LED Blinking Tutorial STM32F4 Discovery Board – GPIO Pins with HAL Library](https://microcontrollerslab.com/led-blinking-tutorial-stm32f4-discovery-board-gpio-hal-library/)

핵심 코드는 아래

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가 이미 연결되어 있다.

![](assets/images/2023/02/image-8.png?resize=1024%2C707&ssl=1)

자신의 보드라면 해당 핀에 LED를 연결해야 한다.

STM32CubeIDE 를 사용한다면 ioc 파일을 열어 해당 핀을 아래 그림처럼 GPIO_Output으로 설정하고, 원하는 지점에 위의 코드를 참고해서 추가하면 LED가 막 켜졌다 꺼졌다 한다.

![](assets/images/2023/02/image-5.png?resize=857%2C732&ssl=1)

결과는 아주 LED가 빨, 파, 녹, 주황인가 이렇게 블링 블링하네

레퍼런스 사이트

https://medium.com/@rlamarrr/introduction-to-stm32cube-blinking-an-led-61469168f9e4

Django – logging RotatingFileHandler 에러 발생시

머지 다 잘 따라 했는데, 당황스럽게 파일이 커지면서 자동으로 Rotating 되어라고 RotatingFileHandler 를 사용했는데, 파일이 생길때 마다 Permission error 가 발생하니 당황스럽다.

PermissionError: [WinError 32] 다른 프로세스가 파일을 사용 중이기 때문에 프로세스가 액세스 할 수 없습니다: ‘C:\django\logs\mysite.log’ -> ‘C:\django\logs\mysite.log.1’

말도 안되는 에러

해결책은 settings.py 파일 맨 아래에 아래 코드를 추가하는 것


if DEBUG and os.environ.get("RUN_MAIN", None) != "true":
    LOGGING = {}

여기서 가져온 솔루션이다.

Django – Rotating File Handler stuck when file is equal to maxBytes

이렇게 해도 된다고 하네요. 아예 실행할 때 –noreload 옵션을 주도록

python manage.py runserver --noreload
![black traffic light with green light](assets/images/2023/01/sp5ody8jgla.jpg?resize=1024%2C576&ssl=1)