这些研讨会中,有你的菜吗? >>
电子产品世界 » 论坛首页 » 嵌入式开发 » STM32 » 【原创】关于串口重定向printf函数无法打印的问题--from小H

共21条 1/3 1 2 3 跳转至

【原创】关于串口重定向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即可。



院士
2022-10-03 20:47:45     打赏
2楼

谢谢分享


专家
2022-10-03 21:30:17     打赏
3楼

感谢分享


高工
2022-10-04 01:30:11     打赏
4楼

感谢楼主的分享,很实用了。


高工
2022-10-04 03:14:57     打赏
5楼

感谢楼主的分享,很实用了。


高工
2022-10-04 08:02:49     打赏
6楼

谢谢分享


专家
2022-10-04 08:04:22     打赏
7楼

学习


专家
2022-10-04 08:32:04     打赏
8楼

谢谢分享


专家
2022-10-04 10:34:23     打赏
9楼

谢谢分享


专家
2022-10-04 11:09:05     打赏
10楼

谢谢分享


共21条 1/3 1 2 3 跳转至

回复

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