找回密码
 立即注册
楼主: vip2128

请教stc浮点运算应注意什么避免死机

[复制链接]
  • 打卡等级:偶尔看看I
  • 打卡总天数:12
  • 最近打卡:2025-05-30 23:58:28
已绑定手机

0

主题

8

回帖

124

积分

注册会员

积分
124
发表于 2025-1-9 18:00:43 | 显示全部楼层
so*** 发表于 2024-10-10 12:43
浮点运算还会造成死机还真不知道。看来要好好学习了

单独使用可能不会,但开了定时器,串口,PWM等可能性就很大了。我就遇到过,同一个算式,不同情况下,结果不一样。
如下运算在AI8051U上未使用浮点运算库,input类型为float式就会重启(在开了两个定时器,两个串口,一组PWMA的,OLED,按键使用的情况下)
  1. (int16)((input - 1000.0)* 1.2);
复制代码
这里转不转int16都会重启
但是有有一个奇怪的问题是,无符号16位的数据,结果和有符号的一样,将input浮点类型改成uint16或int16,
  1. (int16)((input - 992.0)* 1.2);
复制代码
常数改成带小数点的,自动转换后计算结果正确不会重启。。。

结果虽然对了,但是这个处理。。。。就,,,。底层原因还是没太搞清楚
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-6-18 02:35 , Processed in 0.266256 second(s), 47 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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