打印
[其他ST产品]

STBOX1_PRINTF 似乎不支持格式 %f ?

[复制链接]
378|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Hitomi22|  楼主 | 2025-5-9 10:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如题,STM32CUBE IDE中的STBOX1_PRINTF 似乎不支持格式 %f ?

使用特权

评论回复
沙发
elephant00| | 2025-5-9 11:46 | 只看该作者
用 sprintf 格式化字符串。

使用特权

评论回复
板凳
cr315| | 2025-5-9 11:47 | 只看该作者
可以考虑使用其他调试输出方法,通过串口输出,或者使用 printf 函数。

使用特权

评论回复
地板
jcky001| | 2025-5-9 13:00 | 只看该作者
用自定义的浮点数输出函数。

使用特权

评论回复
5
公羊子丹| | 2025-5-25 07:34 | 只看该作者
默认确实不支持 %f,需要加上 -u _printf_float 链接选项才行。

使用特权

评论回复
6
周半梅| | 2025-5-25 07:35 | 只看该作者
看下你的 linker 设置,有没有加上浮点支持。

使用特权

评论回复
7
帛灿灿| | 2025-5-25 07:35 | 只看该作者
%f 不生效通常是因为用的是 nano libc 版本,没启用 float。

使用特权

评论回复
8
童雨竹| | 2025-5-25 07:36 | 只看该作者
我踩过这个坑,加了 -u _printf_float 之后就能用了。

使用特权

评论回复
9
万图| | 2025-5-25 07:37 | 只看该作者
可以用 sprintf 转成字符串,再输出看看效果。

使用特权

评论回复
10
Wordsworth| | 2025-5-25 07:38 | 只看该作者
STBOX1 的库文件可能默认没有链接带 float 的 printf 实现。

使用特权

评论回复
11
Bblythe| | 2025-5-25 07:39 | 只看该作者
检查下 map 文件,看是否用了 printf.o 还是 vfprintf_float.o。

使用特权

评论回复
12
Pulitzer| | 2025-5-25 07:40 | 只看该作者
如果空间吃紧,也可以考虑把 float 转成 int 乘个 100 再除。

使用特权

评论回复
13
Uriah| | 2025-5-25 07:41 | 只看该作者
有时候用重定向时也要确认用的 printf 是正确版本。

使用特权

评论回复
14
Clyde011| | 2025-5-25 07:42 | 只看该作者
实在不行就用 snprintf + itoa 自己拼一个简单的浮点输出。

使用特权

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

本版积分规则

19

主题

21

帖子

0

粉丝