14
86
268
中级技术员
使用特权
1
7842
2万
技术总监
coody 发表于 2014-11-20 14:10 (unsigned long)(i * 100.0)
222
1万
4万
ayb_ice 发表于 2014-11-20 14:26 U32 out; out = i * 100;
5013
3万
版主
ningling_21 发表于 2014-11-20 14:59 这个U32 out 是定义了一个浮点数吗?
guanyumou 发表于 2014-11-20 15:02 您好 我再补充一下,单片机通过MODBUS RTU协议接收过来的数据是类似如下: 16进制的43FA0000这样的数据, ...
ayb_ice 发表于 2014-11-20 15:06 本身是浮点数,赋值给浮点数当然还是浮点数了(但要注意大小端的问题) 正负值就简单了,判断正负后就可 ...
guanyumou 发表于 2014-11-20 15:05 举个例子吧: 我单片机接收到4个字节的数据是16进制的43FA0000 然后告诉我的是,这个数据是符合IEEE754国 ...
ningling_21 发表于 2014-11-20 15:19 可以把浮点数 扩大后赋给整形数,再拆分个十百千送显示就可以了 判断正负很简单 if(x>=0) //S正数
guanyumou 发表于 2014-11-20 15:17 单片机读过来的只是保存在2个16位寄存器里的无符号16进制数:43FA0000 读过来不是直接读浮点数的! 哎! ...
ningling_21 发表于 2014-11-20 15:22 使用联合体,就可以转换浮点数了 union f_to_char
guanyumou 发表于 2014-11-20 15:27 您的意思是说: char_val[3]=0x43; char_val[2]=0xfa;
ningling_21 发表于 2014-11-20 15:34 方法对,顺序反了 char_val[0]=0x43;
发表回复 本版积分规则 回帖后跳转到最后一页
等级类勋章
发帖类勋章
人才类勋章
时间类勋章
扫码关注 21ic 官方微信
扫码关注嵌入式微处理器
扫码关注21ic项目外包
扫码关注21ic视频号
扫码关注21ic抖音号
本站介绍 | 申请友情链接 | 欢迎投稿 | 隐私声明 | 广告业务 | 网站地图 | 联系我们 | 诚聘英才 | 论坛帮助
京公网安备 11010802024343号