【杂谈】1.stm32c8t6配置串口-支持printf发送及一些问题

1.首先通过CubeMX配置usart1

2.然后新建一个源文件

我命名为main_my.c
然后就可以开始写了

#include "main_my.h"
#include "stdio.h"

#define Uart_timeout 0xffff
/*
  @brief: 重新定向c库函数printf
  

*/
int fputc(int data, FILE *f)
{
  HAL_UART_Transmit(&huart1, (uint8_t *)&data, 1, Uart_timeout);
  return data;
}
/*
  @brief: 重新定向c库函数scanf,getchar

*/
int fgetc(FILE *f)
{
  uint8_t data = 0;
  HAL_UART_Receive(&huart1, &data, 1, 0xffff);
  return data;
}


3.在mian.c函数中

                printf("encoder:321\r\n");
		HAL_Delay(1000);

这里我写的“\r\n”才能成功换行,只写"\n"不好使,我也不太清楚是为什么

4.最后我们还要配置一下,勾选一下

posted @ 2022-02-04 17:25  寥若辰星  阅读(209)  评论(0编辑  收藏  举报