这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » STM32 » 【原创】关于串口重定向printf函数无法打印的问题--from小H

共1条 1/1 1 跳转至

【原创】关于串口重定向printf函数无法打印的问题--from小H

助工
2022-10-03 20:27:39   被打赏 10 分(兑奖)     打赏

在使用串口打印时,我们经常会用到printf函数进行串口打印,因为printf是c语言标准库的函数,所以需要重定向c库函数printf到串口,重定向后可使用printf函数。

 

实现printf函数需要调用fputc这个c语言标准库函数进行重定向:

配置如下

1.png

实现scanf , getchar等函数需要调用fgetc这个c语言函数进行重定向:

配置如下:

2.png

由于要使用fputc和fgetc这两个函数,所以要进行#include <stdio.h>头文件引用。

 

以上配置完成后,若串口不能进行printf函数进行打印,则检查是否设置 Use MicroLIB, 具体步骤如下:

1.打开Options for Target

3.png

2.选择Target,进行Use MicroLIB,勾选

 

4.png

因为c语言标准库过大,在嵌入式系统中对其进行了简化,从而形成MicroLIB库,printf函数在c语言标准库中,在嵌入式中位于MicroLIB中,使用printf函数进行打印时,勾选Use MicroLIB即可。



共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]