搜索
bottom↓
回复: 7

CubeIDE中vsprintf不能格式化浮点数,哪位大神能帮帮忙吗?

[复制链接]

出0入0汤圆

发表于 2020-3-18 16:59:28 | 显示全部楼层 |阅读模式
尝鲜用了一把CubeIDE,毕竟不用破解。但是格式化浮点数出错,使用sprintf没有把浮点数格式化进字符串,使用vsprintf返回负值,格式化失败了。
网上搜了一下,遇到这个问题的还不少,但是都没能解决我的问题。-u _printf_float设置了也不起作用,反而一格式化就HardFault。
哪位大神能帮帮忙啊,难道只能回去用IAR了?

出280入168汤圆

发表于 2020-3-18 17:24:24 | 显示全部楼层
这玩意儿一堆 bug,我试过一次就删了,等他们修补修补、升升级,明年再试用看看吧 ...

出0入442汤圆

发表于 2020-3-18 21:09:13 来自手机 | 显示全部楼层
chunjiu 发表于 2020-3-18 17:24
这玩意儿一堆 bug,我试过一次就删了,等他们修补修补、升升级,明年再试用看看吧 ... ...

今天中午调uart rx,曰,调了半天只能收一个字(中断方式),找了半天发现有哥们把中断处理函数爆改一遍,于是我也爆改一遍,uart rx总算好使了。。

注释掉所有修改状态的地方,同时把下面的清中断挪上面。要不然就进一次,然后死活不会进第二次了。最新的cubemx生成的代码。

出0入0汤圆

发表于 2020-3-18 22:35:12 | 显示全部楼层
本帖最后由 styleno1 于 2020-3-18 22:50 编辑

逻辑上不可能,于是我试了下,正常的:

编辑说明:修改下图片比例

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

 楼主| 发表于 2020-3-19 08:41:50 | 显示全部楼层
styleno1 发表于 2020-3-18 22:35
逻辑上不可能,于是我试了下,正常的:

编辑说明:修改下图片比例

多谢回复,我也这样试了一下,确实可以。
然后我又按照我的使用场景,却不行,因为我用了FreeRTOS,在任务中格式化就不行,会HardFault。

出0入0汤圆

发表于 2020-3-19 08:47:13 | 显示全部楼层
liubaoning1986 发表于 2020-3-19 08:41
多谢回复,我也这样试了一下,确实可以。
然后我又按照我的使用场景,却不行,因为我用了FreeRTOS,在任 ...

堆栈不够大,溢出了

出0入0汤圆

 楼主| 发表于 2020-3-19 08:54:59 | 显示全部楼层
FireHe 发表于 2020-3-19 08:47
堆栈不够大,溢出了

我想应该不会吧,就格式化一下,我为了实验,给任务开了8k栈空间,格式化结果的那个buffer只用了不到1k,任务也没有其他额外运算了,但是仍然会HardFault

出0入0汤圆

 楼主| 发表于 2020-4-3 23:32:03 | 显示全部楼层
就是CubeIDE的问题,我把整个工程重新生成到Keil环境,任务中格式化浮点数就正常了。
可能需要在CubeIDE中修改某些设置才能在线程中格式化成功,另外我搜到有人说是CubeIDE的代码内存分配不合适,需要替换FreeRTOS的内存分配策略,不懂。
我无力研究了,期待大神解决吧。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-5 14:17

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表