/** 将符合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 示例相关推荐

  1. oracle数据库的浮点数,Oracle Float类型

    本篇文章帮大家学习Oracle Float类型,包含了Oracle Float类型使用方法.操作技巧.实例演示和注意事项,有一定的学习价值,大家可以用来参考. 本教程将向您介绍Oracle FLOAT ...

  2. C++语法(二)string和int、long int、float的转换

    头文件是 #include<string> 一.string转其他类型 1.string转int // string转int string str = "123"; i ...

  3. go int64转string_25. 深入学习 Go语言的反射

    大家好,我是明哥. 由于某些不可抗力,之前该专栏的所有内容都被删除了.因此之后的一段时间内,我会重新发布这些文章,先给已经看过的关注者提个醒. 本文原文:http://golang.iswbm.com ...

  4. 光速AStar寻路算法(C++)

    光速AStar寻路算法(C++) 一.最终效果 可以看到,我创建了500个小动物,也有110的FPS.虽然它们并不是每一帧都在计算寻路,但是平均下来不卡顿也不错了.我是i7 6700 + GT 720 ...

  5. gaia引擎分析(一)资源管理

    最近在看<Real Time 3D Terrain Engines Using C++And DirectX 9>,不过是看网上翻译的版本叫<实时地形引擎>,看英文实在蛋疼,还 ...

  6. EPICS S7nodave手册

    有关s7nodave EPICS的s7nodave时基于asyn和libnodave的设备支持,它与S7(或兼容)PLCs进行通信.不同于S7 PLCs的其它EPICS设备支持,此设备支持不要求在PL ...

  7. [go]深入学习Go总结

    Go 深入学习 文章目录 Go 深入学习 编译过程 概念 编译四阶段 词法分析 + 语法分析 类型检查 中间代码生成 机器码生成 类型系统 分类 底层类型 类型相同 类型赋值 类型强制转换 类型方法 ...

  8. Android性能优化系列篇(五):弱网优化

    六.弱网优化 1.Serializable原理 通常我们使用Java的序列化与反序列化时,只需要将类实现Serializable接口即可,剩下的事情就交给了jdk.今天我们就来探究一下,Java序列化 ...

  9. 第三周铁人战队学习总结

    ADC环境例程与库函数学习 ADC模块 ADC模块:即模数转换模块/AD转换模块,功能是将电压信号转换为相应的数字信号.实际应用中,这个电压信号可能由温度.湿度.压力等实际物理量经过传感器和相应的变换 ...

  10. DataStage函数大全

    一. 类型转换函数 类型转换函数用于更改参数的类型. 以下函数位于表达式编辑器的"类型转换"类别中.方括号表示参数是可选的.缺省日期格式为 %yyyy-%mm-%dd. 以下示例按 ...

最新文章

  1. Excel VBA两两个体距离矩阵转化为数据库格式
  2. html脚本语言有哪些,常见的脚本语言(有哪些)
  3. codeforces_A. Salem and Sticks_数组/暴力
  4. SpringBoot项目遇到的一些问题
  5. RabbitMQ基础介绍
  6. 13.Axis创建webservice客户端和服务端
  7. nil和NSNull
  8. SQL注入漏洞入门(操作实现)
  9. 【完美解决】arcgis engine 10.0 for cross platform C++ 在visual studio2010上编译的AE程序 的License无法初始化错误。...
  10. NodeJS对mysql数据库的简单操作
  11. 2021.01.18【NOIP提高B组】总结
  12. 空间变换网络(STN)
  13. 小猪短租网一个网页上的单个价格
  14. css过渡、动画3D环绕相册
  15. python输出语句print(3+5)_Python 3 print 函数用法总结
  16. WeQuant交易策略—EMV
  17. TX1刷机教程(安装caffe、cuda/cudnn)
  18. 牛客-js练习|错题本+知识点总结-break、try...catch...finally(01)
  19. python高阶学习之一:c++调用python
  20. 使用curl工具通过Gopher协议发送GET请求

热门文章

  1. ACDSee10 正版授权 许可证
  2. appium和airtest_Airtest自动化测试工具
  3. 360加速球效果实现
  4. spp色散关系 matlab,表面等离极化激元(SPP)基本原理教案分析.ppt
  5. 工具分享:易读文档下载器(同时支持百度/豆丁)
  6. 水滴IP教你如何查询QQ好友的IP地址
  7. 【面试】前端面试人事问题
  8. cartographer原理简述
  9. 计算机wps云文档功能不见,WPS2019文档丢失怎么办 WPS2019云文档在哪
  10. 迅捷pdf虚拟打印机怎么安装打印