uint32 转 float 示例
/** 将符合IEEE754协议的uint32 转 float 示例
* @brief 将32位无符号整数转为有符号的符点数
* @param value1:无符号短整形 address_1: 16903 = 0x4207
* @param value2:无符号短整形 address_2: 02097 = 0x0831
* https://www.h-schmidt.net/FloatConverter/IEEE754.html
* https://blog.csdn.net/crjmail/article/details/79723051
* @return 返回带符号的符点数 33.758 = 0x42070831 = 1107757105
*/
typedef union
{float float_value;uint8_t uint8[4];
}packet_uint32_to_float;
float uint32_to_float(uint16_t value1, uint16_t value2)
{packet_uint32_to_float packet;uint8_t buf[4]; memset(buf,0x00,sizeof(buf));buf[0] = (uint8_t)((value1 >> 8) & 0xFF);buf[1] = (uint8_t)((value1) & 0xFF);buf[2] = (uint8_t)((value2 >> 8) & 0xFF);buf[3] = (uint8_t)((value2) & 0xFF);uint32_t uint32 = ((buf[0]<<24) & 0XFFFFFFFF) + ((buf[1]<<16) & 0XFFFFFF) + ((buf[2]<<8) & 0XFFFF) + buf[3];for(uint8_t i = 0; i < 4; i++){packet.uint8[i] = (uint8_t)(uint32>>(i*8));}print("modbus_uint32_to_float uint32=%d, value1=%d; value2=%d; float_value = %f;",uint32,value1,value2,packet.float_value);return packet.float_value;
}
uint32 转 float 示例相关推荐
- oracle数据库的浮点数,Oracle Float类型
本篇文章帮大家学习Oracle Float类型,包含了Oracle Float类型使用方法.操作技巧.实例演示和注意事项,有一定的学习价值,大家可以用来参考. 本教程将向您介绍Oracle FLOAT ...
- C++语法(二)string和int、long int、float的转换
头文件是 #include<string> 一.string转其他类型 1.string转int // string转int string str = "123"; i ...
- go int64转string_25. 深入学习 Go语言的反射
大家好,我是明哥. 由于某些不可抗力,之前该专栏的所有内容都被删除了.因此之后的一段时间内,我会重新发布这些文章,先给已经看过的关注者提个醒. 本文原文:http://golang.iswbm.com ...
- 光速AStar寻路算法(C++)
光速AStar寻路算法(C++) 一.最终效果 可以看到,我创建了500个小动物,也有110的FPS.虽然它们并不是每一帧都在计算寻路,但是平均下来不卡顿也不错了.我是i7 6700 + GT 720 ...
- gaia引擎分析(一)资源管理
最近在看<Real Time 3D Terrain Engines Using C++And DirectX 9>,不过是看网上翻译的版本叫<实时地形引擎>,看英文实在蛋疼,还 ...
- EPICS S7nodave手册
有关s7nodave EPICS的s7nodave时基于asyn和libnodave的设备支持,它与S7(或兼容)PLCs进行通信.不同于S7 PLCs的其它EPICS设备支持,此设备支持不要求在PL ...
- [go]深入学习Go总结
Go 深入学习 文章目录 Go 深入学习 编译过程 概念 编译四阶段 词法分析 + 语法分析 类型检查 中间代码生成 机器码生成 类型系统 分类 底层类型 类型相同 类型赋值 类型强制转换 类型方法 ...
- Android性能优化系列篇(五):弱网优化
六.弱网优化 1.Serializable原理 通常我们使用Java的序列化与反序列化时,只需要将类实现Serializable接口即可,剩下的事情就交给了jdk.今天我们就来探究一下,Java序列化 ...
- 第三周铁人战队学习总结
ADC环境例程与库函数学习 ADC模块 ADC模块:即模数转换模块/AD转换模块,功能是将电压信号转换为相应的数字信号.实际应用中,这个电压信号可能由温度.湿度.压力等实际物理量经过传感器和相应的变换 ...
- DataStage函数大全
一. 类型转换函数 类型转换函数用于更改参数的类型. 以下函数位于表达式编辑器的"类型转换"类别中.方括号表示参数是可选的.缺省日期格式为 %yyyy-%mm-%dd. 以下示例按 ...
最新文章
- Excel VBA两两个体距离矩阵转化为数据库格式
- html脚本语言有哪些,常见的脚本语言(有哪些)
- codeforces_A. Salem and Sticks_数组/暴力
- SpringBoot项目遇到的一些问题
- RabbitMQ基础介绍
- 13.Axis创建webservice客户端和服务端
- nil和NSNull
- SQL注入漏洞入门(操作实现)
- 【完美解决】arcgis engine 10.0 for cross platform C++ 在visual studio2010上编译的AE程序 的License无法初始化错误。...
- NodeJS对mysql数据库的简单操作
- 2021.01.18【NOIP提高B组】总结
- 空间变换网络(STN)
- 小猪短租网一个网页上的单个价格
- css过渡、动画3D环绕相册
- python输出语句print(3+5)_Python 3 print 函数用法总结
- WeQuant交易策略—EMV
- TX1刷机教程(安装caffe、cuda/cudnn)
- 牛客-js练习|错题本+知识点总结-break、try...catch...finally(01)
- python高阶学习之一:c++调用python
- 使用curl工具通过Gopher协议发送GET请求