重定向printf、或者USARTX_printf()(hal库)

目录

重定向printf

USARTX_printf()


打开工程模板

复制工程模板

配置

重定向printf

在usart.h添加

cs 复制代码
#include "stdio.h"

在usart.c添加

cs 复制代码
/* USER CODE BEGIN 1 */
int fputc(int ch,FILE *f)
{
    HAL_UART_Transmit(&huart1,(uint8_t *)&ch,1,HAL_MAX_DELAY);//重定向串口1
    return ch;
}
/* USER CODE END 1 */

打开串口助手测试

USARTX_printf()

如果printf已经被其他串口占用

在usart.h添加

cs 复制代码
#include "stdio.h"
#include "stdarg.h"
#include "string.h"

添加声明

cs 复制代码
void Usart1_printf(char *format,...);

在usart.c添加

cs 复制代码
void Usart1_printf(char *format,...)
{
	char TxStringBuff[100];
	uint8_t length=0;
	va_list arg;
	va_start(arg,format);
	vsprintf(TxStringBuff,format,arg);
	va_end(arg);
	
	length=strlen((const char*)TxStringBuff);
	HAL_UART_Transmit_IT(&huart1, (uint8_t *)TxStringBuff, length);
}
相关推荐
凤年徐28 分钟前
【数据结构初阶】单链表
c语言·开发语言·数据结构·c++·经验分享·笔记·链表
爱睡觉的王宇昊30 分钟前
二、【ESP32开发全栈指南:ESP32 GPIO深度使用】
单片机·嵌入式硬件
三三十二7 小时前
STM32实战:数字音频播放器开发指南
stm32·单片机·嵌入式硬件
想搞嵌入式的小白9 小时前
STM32外设问题总结
单片机·嵌入式硬件
hjyowl9 小时前
题解:AT_abc407_c [ABC407C] Security 2
c语言·开发语言·算法
木子单片机10 小时前
基于STM32语音识别柔光台灯
stm32·单片机·嵌入式硬件·proteus·语音识别·keil
old_power10 小时前
UCRT 和 MSVC 的区别(Windows 平台上 C/C++ 开发相关)
c语言·c++·windows
广药门徒11 小时前
澄清 STM32 NVIC 中断优先级
单片机·嵌入式硬件
@老蝴11 小时前
C语言 — 编译和链接
c语言·开发语言
小禾苗_12 小时前
32单片机——窗口看门狗
单片机·嵌入式硬件