[PIC®/AVR®/dsPIC®产品] 怎么取出变量1,变量2中各个数?

[复制链接]
881|12
 楼主| kangzj 发表于 2022-11-12 23:18 | 显示全部楼层 |阅读模式
单片机采样参考电压5V,转换值value是0-5v的一个数。
我需要的变量1=value×196.8;
              变量2=value×196.8×27
那么我该怎么取出变量1,变量2中各个数?

希望数能精确到小数点后两位
dengdc 发表于 2022-11-12 23:19 | 显示全部楼层
可以转成浮点数
 楼主| kangzj 发表于 2022-11-12 23:22 | 显示全部楼层

我直接用变量1设为浮点型数据,即变量2=value
196.8×27出现了(超出范围)的结果,这是为何?
chuxh 发表于 2022-11-12 23:27 | 显示全部楼层

是数据溢出,你的数据类型是啥
stly 发表于 2022-11-12 23:29 | 显示全部楼层
必须考虑计算的最大数是否超出变量的最大值
xxrs 发表于 2022-11-12 23:31 | 显示全部楼层
unsigned int,应该不会溢出
heweibig 发表于 2022-11-12 23:33 | 显示全部楼层
value 的最大值多少?
zwll 发表于 2022-11-12 23:35 | 显示全部楼层
参考电压5v
xxrs 发表于 2022-11-12 23:38 | 显示全部楼层
value是ADC转换后的值?
spark周 发表于 2022-11-12 23:40 | 显示全部楼层
ADC是多少位的?
liliang9554 发表于 2022-11-12 23:42 | 显示全部楼层
你可以把变量2乘一下,早都超过65535好多了,明显数据溢出了
jlyuan 发表于 2022-11-12 23:45 | 显示全部楼层
单片机算这么大的乘法, 效率感人啊.....
您需要登录后才可以回帖 登录 | 注册

本版积分规则

672

主题

7007

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部