[STM32F1]

串口打印用printf还是sprintf比较好啊?

[复制链接]
966|43
手机看帖
扫描二维码
随时随地手机跟帖
CarterERO|  楼主 | 2024-3-29 10:39 | 显示全部楼层 |阅读模式
升级AC6后重定向printf就没成功过

使用特权

评论回复
估计跟AC6没啥关系吧

使用特权

评论回复
我吃小朋友| | 2024-4-18 18:00 | 显示全部楼层
你勾选了microUSB的库了吗?

使用特权

评论回复
失物招領| | 2024-4-18 20:00 | 显示全部楼层
Sprintf是组装字符串吧

使用特权

评论回复
故意相遇| | 2024-4-18 22:00 | 显示全部楼层
一般都是用printf来做就可以的

使用特权

评论回复
将爱藏于深海| | 2024-4-19 01:00 | 显示全部楼层
其实你要是没成功的话,就手写一个重定向呗

使用特权

评论回复
温室雏菊| | 2024-4-19 03:00 | 显示全部楼层
你这估计换个keil版本估计就可以了

使用特权

评论回复
风凉| | 2024-4-19 05:00 | 显示全部楼层
你说的没成功是啥状态呢?

使用特权

评论回复
香水城| | 2024-4-19 07:44 | 显示全部楼层
sprintf只是转存,printf才是做输出打印。

使用特权

评论回复
捧一束彼岸花| | 2024-4-19 09:00 | 显示全部楼层
确保在工程设置中正确配置了printf重定向。在AC6中,可以通过修改工程的链接器脚本文件(.ld文件)或者在代码中重新定义标准输出流来实现printf重定向

使用特权

评论回复
rgjinxuan| | 2024-4-19 09:52 | 显示全部楼层
地板
失物招領|初级工程师 | 2024-4-18 20:00 | 只看该作者
Sprintf是组装字符串吧

使用特权

评论回复
西洲| | 2024-4-19 13:00 | 显示全部楼层
查看AC6的更新日志或者官方文档,了解新版本中printf重定向的配置方式是否有变化。有时候新版本的集成开发环境会对一些功能进行更新或者改动,需要根据新的配置方式进行调整

使用特权

评论回复
白马过平川| | 2024-4-19 15:00 | 显示全部楼层
如果AC6的更新导致printf重定向失效,可能需要重新检查和配置printf重定向的代码。确保正确地重定向标准输出流到串口或其他输出设备

使用特权

评论回复
jtracy3| | 2024-5-4 21:40 | 显示全部楼层
printf函数通常用于向标准输出(stdout)打印格式化的字符串。但在嵌入式系统中,如STM32,标准输出通常被重定向到某个特定的设备或接口,比如串口。

使用特权

评论回复
burgessmaggie| | 2024-5-6 10:56 | 显示全部楼层
在STM32的串口打印中,选择使用printf还是sprintf取决于具体的应用场景和需求。

printf函数是C语言标准库中的一个函数,它用于向标准输出设备(通常是控制台)打印格式化文本。在STM32的开发中,为了实现串口打印,通常需要对printf函数进行重定向,使其能够将输出发送到串口而不是默认的标准输出设备。

使用特权

评论回复
febgxu| | 2024-5-6 16:44 | 显示全部楼层
sprintf 函数允许你格式化输出到一个字符串中,而不是直接输出到串口。

使用特权

评论回复
jtracy3| | 2024-5-6 19:53 | 显示全部楼层
使用printf的好处是它可以方便地格式化字符串,并直接发送到重定向的输出设备(如串口)。

使用特权

评论回复
olivem55arlowe| | 2024-5-7 14:19 | 显示全部楼层
sprintf 可能是更好的选择。

使用特权

评论回复
usysm| | 2024-5-7 18:56 | 显示全部楼层
在STM32中,如果要将数据通过串口发送,通常需要结合串口的发送函数(如USART_SendData)来逐个发送sprintf生成的字符串中的字符。

使用特权

评论回复
mnynt121| | 2024-5-8 14:09 | 显示全部楼层
printf 函数用于格式化输出数据到标准输出流,通常是串口。它的优点是方便快捷,可以直接输出字符串和各种变量类型。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

15

主题

150

帖子

0

粉丝