STM32CUBEMX 生成的HAL库,使用非KEIL,编译存在一个printf,不能输出,无 Microlib,或者仿真卡死,或者仿真点击三次运行才正常的最美解决方案
#include “stdio.h”
#include <stdarg.h>
只要包含上面头文件
void UST1_printf(char* sbuf,…)
{
uint16_t length = 0;
char USART1_TX_BUF[50];
* //
*
while (USART1_TX_BUF[length] != ‘\0’)
{
length++;
}
//根据不同单片机,此处替换发送函数,完美解决,
}
总计 10行代码,实现printf 全部功能
STM32CUBEMX生成的HAL库,使用非KEIL,编译存在一个printf,不能输出,无 Microlib,或者仿真卡死,或者仿真点击三次运行-其它文档类资源-CSDN文库
源文件下载地址: https://download.csdn.net/download/it_660/87523172
在这里插入图片描述

文章提供了针对STM32CUBEMX生成的HAL库在使用非KEIL编译器时遇到的printf输出问题的解决方案。通过包含<stdio.h>和<stdarg.h>头文件,定义UST1_printf函数,实现了printf功能,同时解决了仿真卡死或需要多次启动才能正常运行的问题。这个方法适用于没有Microlib的情况,且只需10行代码即可完成。

2993

被折叠的 条评论
为什么被折叠?



