搜索
bottom↓
回复: 10

【求助】 PIC16 小量的浮点数运算竟然能占用这么多的资源?(有图)

[复制链接]

出0入198汤圆

发表于 2010-10-20 22:45:40 | 显示全部楼层 |阅读模式
大家好,最近项目要用到PIC16F677,一路磕磕碰碰,问题重重啊~~今天出现了一个更让人头大的问题,让我难以置信PIC16F677的浮点数运算能力。不知道是我代码问题,还是其他原因,导致我的片子的资源已经全被浮点数运算占满了。有图有真相,上图!
下图是没有注释MeasureTemp这个函数里面的一些浮点数运算的效果,编译之后可以看出,ROM已经接近100%了,RAM也接近90%了,真吓人。—_—!!

(原文件名:没有注释的效果.jpg)
下图是注释了MeasureTemp这个函数里面的浮点数运算的效果,还算是能接受~~

(原文件名:注释后的效果.jpg)
就这么几句话,差距怎么就这么大~~恳请大家指点下~~小弟先谢谢了!!

阿莫论坛20周年了!感谢大家的支持与爱护!!

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!

出0入0汤圆

发表于 2010-10-20 23:17:37 | 显示全部楼层
你看一下编译出来的汇编代码就知道了

出0入0汤圆

发表于 2010-10-20 23:55:08 | 显示全部楼层
是的 浮点运算 很耗ram 很耗rom····

出0入0汤圆

发表于 2010-10-21 00:02:32 | 显示全部楼层
pic都是用汇编的,浮点数转成整数来算,你搞毛啊

出0入0汤圆

发表于 2010-10-21 00:24:13 | 显示全部楼层
明显整数就能解决的,为什么用浮点呢?

出0入0汤圆

发表于 2010-10-21 00:28:12 | 显示全部楼层
浮點是單晶片的天敵你不知道嗎?

出0入0汤圆

发表于 2010-10-21 01:08:28 | 显示全部楼层
unsigned int ADCD;
int CurResValue;

ADCD=(((unsigned int)ADRESH)<<8)|ADRESL;

CurResValue=((unsigned int)((50000ul*(ADCD<<6))>>16))/((char)(25-(((unsigned char)(((unsigned int)(ADCD*50u))>>8))>>2)))*10;


试下看,我没验证过,上面CurResValue应该是int型的吧,而不是unsigned int,(2.5-CurvoltageValue)的结果有可能是负的

阻值有负的??

出0入198汤圆

 楼主| 发表于 2010-10-21 10:13:03 | 显示全部楼层
回复【1楼】real_zyf
-----------------------------------------------------------------------

谢谢,这是个很不错的方法,学习了~~

出0入198汤圆

 楼主| 发表于 2010-10-21 10:20:51 | 显示全部楼层
回复【6楼】hsztc
-----------------------------------------------------------------------

hsztc你好,非常感谢你的建议。已按照你说的作了修改,比起以前,对算式多做了一些化简,没有用浮点数了,现在大概还剩50%的RAM和ROM空间。

出0入0汤圆

发表于 2017-9-6 23:04:34 | 显示全部楼层
hsztc 发表于 2010-10-21 01:08
unsigned int ADCD;
int CurResValue;

高手,化难为易

出0入0汤圆

发表于 2017-9-6 23:12:46 | 显示全部楼层
什么编译器啊?
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-4-25 21:11

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

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