以太网步进电机控制器STM32的浮点除法运算偶尔出错

2019-07-14 18:23发布

最近做了个以太网步进电机控制器,一切都那么顺利的时候,测试中发现一个让我十分苦恼的问题
做除法的时候大部分结果是对的,偶尔出现结果为0,虽然使用整数除法越过这个问题,但是始终不明白怎么回事如图,查询中有个别结果有问题,就做了个除法,结果让我不解


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
zrl12123456
1楼-- · 2019-07-14 20:56
 精彩回答 2  元偷偷看……
TOPCB
2楼-- · 2019-07-15 01:29
把相关的几个数据都输出一下。
SMT1129660569
3楼-- · 2019-07-15 02:07
本帖最后由 _风中的少年 于 2017-7-30 10:12 编辑

同出现除法错误!
                        dc_double=(double)adcSum/10000.0;
我这里dc_double 是双精度的,adcSum是uint32_t类型的,值大概为2000000.结果算出来用串口调试得到dc_double为0  

找到原因了,adcSum不知道怎么被置0了。。。好迷啊。。
估计楼主的问题也应该是程序其他地方不对吧?
huaxu2222
4楼-- · 2019-07-15 04:30
SMT1129660569 发表于 2018-8-24 10:18
本帖最后由 _风中的少年 于 2017-7-30 10:12 编辑

同出现除法错误!

应该不是,我把这个分解成整形换算就好了

一周热门 更多>