你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32中关于串口通信的printf()函数重定向问题

[复制链接]
万里-363223 发布时间:2015-1-5 15:28

在STM32串口通信程序中使用printf()函数发送数据非常方便,但是需要先进行简单的配置,下面介绍两种配置方法。

方法一、对工程属性进行配置

第1步:在main.c中包含"stdio.h” (标准输入输出头文件);

第2步:在main.c文件中重定义fput()这个C标准库函数(因为printf()在C标准库函数中实质上是一个宏,要调用到fputc()这个函数);

第3步:在工程属性的"Target" -> "Code Generation" 选项中勾选"Use MicroLIB";

方法二:在工程中添加“regtarge.c”文件

第1步:在main.c文件中包含"stdio.h”文件;

第2步:在工程中创建一个文件保存为"regtarge.c",然后将其添加到工程中;

第3步:在main文件中添加定义以下两个函数

至此完成配置,可以在main.c文件中随意调用printf() 。


收藏 1 评论8 发布时间:2015-1-5 15:28

举报

8个回答
安臣 回答时间:2015-6-6 10:57:03
感谢分享啊
QianFan 回答时间:2015-6-6 13:16:02
第二种方法干嘛这么麻烦,还要自己写,在D:\Program Files\MDK\ARM\Startup 下面有一个文件就是。直接复制过去就行。
qinjie138 回答时间:2015-6-6 20:24:34
不用自己写的,复制一下就行了,在F:\Program Files\MDK\ARM\Startup 下面有一个文件就是。直接复制过去就行。
lkl0305 回答时间:2015-6-14 17:01:13
多谢分享
lkl0305 回答时间:2015-6-14 17:01:32
多谢分享
星辰一方 回答时间:2015-7-4 17:26:01
多谢分享~!
Rlews 回答时间:2015-7-14 23:03:34
多谢分享!!!!!!!!
星辰一方 回答时间:2015-9-9 09:35:33
楼主你这个是标准库能用,HAL库不能直接用是吗?怎么在HAL库里使用printf啊求指点!

所属标签

STM32团队

意法半导体微控制器和微处理器拥有广泛的产品线,包含低成本的8位单片机和基于ARM® Cortex®-M0、M0+、M3、M4、M33、M7及A7内核并具备丰富外设选择的32位微控制器及微处理器


最新内容

相似技术帖

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版