打印

怎么取出变量1,变量2中各个数?

[复制链接]
400|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
kangzj|  楼主 | 2020-2-16 09:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
单片机采样参考电压5V,转换值value是0-5v的一个数。
我需要的变量1=value×196.8;
              变量2=value×196.8×27
那么我该怎么取出变量1,变量2中各个数?

希望数能精确到小数点后两位

使用特权

评论回复
沙发
wenfen| | 2020-2-16 09:56 | 只看该作者
可以转成浮点数

使用特权

评论回复
板凳
wangpe| | 2020-2-16 09:59 | 只看该作者
或者采用long型变量,把乘数先*100,变成整数,显示时显示正确小数点位置就行了。

使用特权

评论回复
地板
kangzj|  楼主 | 2020-2-16 10:03 | 只看该作者

我直接用变量1设为浮点型数据,即变量2=value
196.8×27出现了(超出范围)的结果,这是为何?

使用特权

评论回复
5
tian111| | 2020-2-16 10:06 | 只看该作者
是数据溢出,你的数据类型是啥

使用特权

评论回复
6
zwll| | 2020-2-16 10:18 | 只看该作者
必须考虑计算的最大数是否超出变量的最大值

使用特权

评论回复
7
juventus9554| | 2020-2-16 10:21 | 只看该作者
unsigned int,应该不会溢出

使用特权

评论回复
8
zhaoxqi| | 2020-2-16 10:26 | 只看该作者
value 的最大值多少?

使用特权

评论回复
9
yufe| | 2020-2-16 10:28 | 只看该作者
参考电压5v

使用特权

评论回复
10
zhuhuis| | 2020-2-16 10:33 | 只看该作者
value是ADC转换后的值?

使用特权

评论回复
11
houcs| | 2020-2-16 10:35 | 只看该作者
ADC是多少位的?

使用特权

评论回复
12
pangb| | 2020-2-16 10:38 | 只看该作者
你可以把变量2乘一下,早都超过65535好多了,明显数据溢出了

使用特权

评论回复
13
kangzj|  楼主 | 2020-2-16 10:41 | 只看该作者

其实还是不大明白,我再琢磨琢磨吧,多谢了哈先

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

672

主题

7007

帖子

2

粉丝