이번에는 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 */
반응형
'b. 임베디드 > STM32' 카테고리의 다른 글
[STM32F407VE] w25q16 Flash SPI 동작 (2) | 2020.08.19 |
---|---|
[STM32F407VGT Discovery] SPI with MAX41100 사용하기 (0) | 2019.06.29 |
[STM32F407VGT Discovery] ADC Interrupt 사용하기 (0) | 2019.06.26 |
[STM32F407VGT Discovery] ADC Single Conversion(Polling) 사용하기 (0) | 2019.06.25 |
[STM32F407VGT Discovery] USART Interrupt, Polling 사용하기 (0) | 2019.06.23 |
[STM32F407VGT Discovery] Timer Output Compare Mode (0) | 2019.06.21 |
[STM32F407VGT Discovery] Timer FND(7segment)초 단위 동작 (0) | 2019.06.20 |
[STM32F407VGT Discovery] Timer PWM으로 LED 밝기 조절 (0) | 2019.06.19 |