STM32
登录
直播中
djfldsthtr
8年用户
961经验值
擅长:光电显示
私信
关注
[问答]
请问stm32中printf整形和浮点型会进入硬件错误中断的原因?
开启该帖子的消息推送
STM32
请问
STM32
中printf整形和浮点型会进入硬件错误中断的原因?
回帖
(1)
李超然
2021-12-1 09:13:10
printf("%d,%lf",i+1,0.2);这样用,会进入硬件错误中断
printf("%d,%f,%f",i+1,0.2,0.3);这样也会
double dbl=0.2;
printf("%f",dbl);也不行
printf("%5f",dbl);也不行
连着打印两个float或者double型变量就可以printf("%f%f",dbl,dbl2);,反之就是很多异常,解决方法如下,把使用微库给勾上吧,这样应该就能很好的支持printf float,double等类型了,补充一下,打印出来的都是6位小数,加了%lf也是6位,可能stm32的printf是阉割版吧,只支持最多float型的打印位数了
我后来又试了,函数返回值也变成了float后,不勾选使用微库,打印
float timeRunVzop;
timeRunVzop = MeasureTimeEnd();//此函数的返回值类型改为了float型
printf("%d,%f",i+1,timeRunVzop);//此时就不报错了,看来还是double型有bug的原因
如果改为:
double timeRunVzop;
timeRunVzop = MeasureTimeEnd();
printf("%d,%f",i+1,timeRunVzop);//又会进入硬件错误中断
说明了,看来还是double型有bug的原因,单片机和keil mdk对double型支持不是很友好呀,得注意,少使用double型,尽量使用float型即可
printf("%d,%lf",i+1,0.2);这样用,会进入硬件错误中断
printf("%d,%f,%f",i+1,0.2,0.3);这样也会
double dbl=0.2;
printf("%f",dbl);也不行
printf("%5f",dbl);也不行
连着打印两个float或者double型变量就可以printf("%f%f",dbl,dbl2);,反之就是很多异常,解决方法如下,把使用微库给勾上吧,这样应该就能很好的支持printf float,double等类型了,补充一下,打印出来的都是6位小数,加了%lf也是6位,可能stm32的printf是阉割版吧,只支持最多float型的打印位数了
我后来又试了,函数返回值也变成了float后,不勾选使用微库,打印
float timeRunVzop;
timeRunVzop = MeasureTimeEnd();//此函数的返回值类型改为了float型
printf("%d,%f",i+1,timeRunVzop);//此时就不报错了,看来还是double型有bug的原因
如果改为:
double timeRunVzop;
timeRunVzop = MeasureTimeEnd();
printf("%d,%f",i+1,timeRunVzop);//又会进入硬件错误中断
说明了,看来还是double型有bug的原因,单片机和keil mdk对double型支持不是很友好呀,得注意,少使用double型,尽量使用float型即可
举报
更多回帖
rotate(-90deg);
回复
相关问答
STM32
ucosii任务
中
printf
串口打印
浮点
数据卡死在delay_ms函数
2020-04-07
3655
为什么在CLion开发
stm32
下重定向
printf
却导致
浮点
型
数据无法输出呢
2021-12-02
1243
stm32
上电启动异常
进入
硬件
中断
是什么
原因
?
2024-03-13
151
请问
UCOSII的
硬件
中断
怎么处理?
2020-03-10
1792
printf
进入
hardfault
2018-12-03
4627
stm32
使用
printf
进入
HardFaults时报错的
原因
?怎么解决?
2021-12-02
497
STM32
接收
中断
服务函数打印函数
会
造成
错误
的
原因
是什么?
2021-12-02
972
程序
进入
硬件
错误
中断
hard_fault如何寻找
原因
?
2023-02-13
427
使用CLion开发
stm32
的情况下
浮点
型
数据无法输出怎么解决?
2021-12-01
800
为什么uCOS调用
printf
()函数打印float数据出错?
2019-08-08
3150
发帖
登录/注册
20万+
工程师都在用,
免费
PCB检查工具
无需安装、支持浏览器和手机在线查看、实时共享
查看
点击登录
登录更多精彩功能!
英国威廉希尔公司网站
william hill官网 版块
小组
免费开发板试用
ebook
直播
搜索
登录
×
20
完善资料,
赚取积分