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

基于cubeMX的printf重定向,哪位大神可以帮忙?

[复制链接]
星辰一方 提问时间:2015-9-9 12:20 /
悬赏10ST金币已解决
最近做数据采集,需要用串口,但是各种输出格式转换很麻烦,想来还是printf比较方便,后来坛里搜到了教程,但是不知道为什么我按照教程试了,没有反应都,以下几篇都试过了:
https://www.stmcu.org.cn/module/forum/thread-598389-1-1.html
https://www.stmcu.org.cn/module/forum/thread-602600-1-1.html

也可能两位大神用的都是基于标准库的,我想请教下哪位能帮我弄个基于HAL的printf重定向?直接在nucleo上运行,非常感谢!

最佳答案

查看完整内容

试试这个,我测试过。不过是411,你可以按照main里面的试一下。 cube库里面本身也有类似的例子。
收藏 评论15 发布时间:2015-9-9 12:20

举报

15个回答
watershade 回答时间:2015-9-9 12:20:46
试试这个,我测试过。不过是411,你可以按照main里面的试一下。 cube库里面本身也有类似的例子。

N411printf.rar

下载

5.5 MB, 下载次数: 180, 下载积分: ST金币 -1

yanhaijian 回答时间:2015-9-9 12:36:35
主要是fputc/fgetc两个函数的重定向。
风子 回答时间:2015-9-9 15:22:38
记得好像论坛里看到过
Paderboy 回答时间:2015-9-9 16:00:08
#include "stdio.h"

#ifdef __GNUC__
#define PUTCHAR_PROTOTYPE int __io_putchar(int ch)
#else
#define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f)
#endif
PUTCHAR_PROTOTYPE
{
HAL_UART_Transmit(&huart2 , (uint8_t *)&ch, 1, 0xFFFF);
return ch;
}
这个是HAL 库下的printf 使用方法。。 你用cube配置好串口就可以了。。
你好我好大家好! 回答时间:2015-9-9 16:38:55
帮顶喽                     
星辰一方 回答时间:2015-9-10 16:32:10
watershade 发表于 2015-9-9 22:38
试试这个,我测试过。不过是411,你可以按照main里面的试一下。 cube库里面本身也有类似的例子。
...

多谢大神!搞定了,原因找到了:我在printf之前使用了串口中断方式发送了两个字节数据,造成后面都没反应!
星辰一方 回答时间:2015-9-10 16:32:25
Paderboy 发表于 2015-9-9 16:00
#include "stdio.h"

#ifdef __GNUC__

多谢大神!搞定了,原因找到了:我在printf之前使用了串口中断方式发送了两个字节数据,造成后面都没反应!
星辰一方 回答时间:2015-9-10 16:32:43

原因找到了!已经解决,
星辰一方 回答时间:2015-9-10 16:33:39
Paderboy 发表于 2015-9-9 16:00
#include "stdio.h"

#ifdef __GNUC__

可惜最佳答案只能选一个,多谢大神帮助!
12下一页

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版