b. 임베디드/STM32

[STM32F407VGT Discovery] USART printf 사용하기

로봇쟁이 2019. 6. 24. 00:05

이번에는 USART를 사용하여 printf를 사용해보도록 하겠습니다.

 

기존대로 PB6, PB7번을 이용하여 USART1을 사용하겠습니다 :D

 

printf를 사용하기 위해서는 함수를 하나 만들어야 하는데 해당 부분은 다음과 같습니다.

int _write(int file, char* pi, int len)
{
	for(int i=0; i<len; i++)
	{
		LL_USART_TransmitData8(USART1, *(pi+i));
		HAL_Delay(1);
	}

	return len;
}

 

그리고 main코드에서 printf를 사용하여 출력해보는 코드를 작성해봅니다.

  uint8_t num = 0;

  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {
    /* USER CODE END WHILE */

    /* USER CODE BEGIN 3 */
	  printf("Hellow World");
	  printf(" num = %d\n", num++);
	  HAL_Delay(1000);
  }
  /* USER CODE END 3 */
반응형