天上会飞的猪 发表于 2014-1-20 11:09:36

关于430单片机做浮点数运算的问题

我现在在做一款产品,用的芯片是5438,在里面要加入天然气压缩因子的计算,公式比较复杂,涉及了大量的浮点数运算,程序写完后验证了一下,与实际的结果误差较大,而且单步调试时,遇到一个比较复杂的浮点数运算语句,执行后就复位死机了。本来想查表来做这块的运算来的,但是情况太多,用的表也比较多,这种方法也不太适用在这。不知道哪位大侠做过压缩因子的计算,或者做过比较复杂的浮点数运算程序,有什么比较好的方法帮忙指点一下,先提前谢谢各位了。

aoe123 发表于 2014-1-20 11:25:21

5438单片机内部有硬件乘法器的吧,具体多久还真不好说,但是有硬件乘法器的单片机浮点计算会相对快点的,不知道你具体的算法和时间要求

天上会飞的猪 发表于 2014-1-20 12:09:07

还没用上硬件乘法器,计算公式是很复杂的,对速度的要求不是很高,现在是30ms左右就能接受了,30s算一次,下面是计算的公式

syauxwm 发表于 2014-1-21 10:18:28

关注下,浮点算法,还说有你的压缩因子计算 呵呵

dalarang 发表于 2014-1-27 14:53:48

计算是挺复杂的,用单精度浮点数的话算出来误差会比较大,用双精度浮点数。
IAR默认的浮点数是32bit,设为64bit应该能改善。

lcofjp 发表于 2014-1-27 21:05:18

你是不是开狗了,时间太长导致复位?头回听说运算还能复位的。
页: [1]
查看完整版本: 关于430单片机做浮点数运算的问题