STM32重载printf()函数

printf()h函数重载后,还需要加入下图的修改项
在这里插入图片描述

在这里插入图片描述

函数重载时,在自定义头文件中包含 stdio.h 文件,并加入以下重载函数

int fputc(int ch, FILE *f) 
{
    
    
	/* 发送一个字节数据到串口 */
	USART_SendData(USART1, (uint8_t) ch); //程序开始时,会发送一次数据,ch是系统分配的(可能是0),串口会显示大概两个空格的内容
	/* 等待发送完毕 */
	while (USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET);
	return (ch);
}

使用时的格式与普通C语言程序稍有不同,具体如下:

char USART_ReceiveString[] = {
    
    "jiajia"};
printf("%s\r\n",USART_ReceiveString);
printf("%s\r\n","lalala");
printf("%d\r\n",123);

猜你喜欢

转载自blog.csdn.net/weixin_43793181/article/details/109135367