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

STM32F411 sprintf() 的 %f 不工作

[复制链接]
DMA 提问时间:2016-6-13 22:16 /
本帖最后由 DMA 于 2016-6-13 22:22 编辑

最近使用STM32发现跟Arduino有一样的通病,
sprintf中使用%f没办法正常输出浮点数,请问该怎么处理?

软件是使用 SW4STM32

收藏 1 评论9 发布时间:2016-6-13 22:16

举报

9个回答
又是一年春来到 回答时间:2016-6-15 15:00:18
不太懂  帮顶
DMA 回答时间:2016-6-15 22:11:33
example:

char output[200];
float pi = 3.14159f;
sprintf(output, "my float value = %f\n", pi);
HAL_UART_Transmit(&huart1, (uint8_t*)output, strlen(output), 1000);

这样输出后,我在接收端没办法看到正确的数值

DMA 回答时间:2017-1-1 22:04:56
顶一下,这个问题还没解决阿
黑皮男 回答时间:2017-1-2 08:50:56
注意,一定要包含sprintf的头文件,所有引用外部的函数,都要包含对应的头文件,不然会出现莫名其奥妙的问题
andypanfan 回答时间:2017-1-3 09:12:16
:):):):):):):)
any012 回答时间:2017-1-3 09:18:38
没用过sprintf,只用过printf,需要stdio.h
海迹天涯 回答时间:2017-1-4 08:46:17
我用过f051,可以正常输出小数
5265325 回答时间:2017-1-4 09:06:17
IAR貌似有也不行,keil就可以
cyang 回答时间:2018-2-27 13:22:23
stm32代码
float a = 0.1;
printf("%f\n",a);

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