思思久久96热在精品国产10-思思久久96热在精品国产免费-思思久久99-思思久久99热-一级毛片免费观看视频-一级毛片免费看

newtlk
級別: 探索解密
精華主題: 0
發帖數量: 3 個
工控威望: 121 點
下載積分: 561 分
在線時間: 2(小時)
注冊時間: 2014-06-13
最后登錄: 2014-08-26
查看newtlk的 主題 / 回貼
樓主  發表于: 2014-06-16 19:30
將 modbus RTU 過來的十六進制的資訊(如:41 E1 32 F2) 轉換成小數(28.149876)(IEEE 754)

復制代碼
  1. #include <stdio.h>  // printf
  2. #include <stdlib.h> // system("pause")
  3. #include <stdint.h> // uint8_t
  4. #include <string.h> // memcpy
  5. float raw2ieee(uint8_t *raw)
  6. {
  7.     // either
  8.     union {
  9.         uint8_t bytes[4];
  10.         float fp;
  11.     } un;
  12.     memcpy(un.bytes, raw, 4);
  13.     return un.fp;
  14.     // or, as seen in the fast inverse square root:
  15.     return *(float *)raw;
  16. }
  17. int main(int argc, char *argv[])
  18. {
  19.     uint8_t val[64];               //declare input value recieved from serial connection
  20.     
  21.     int i=0;
  22.     
  23.     // your 0xXX here
  24.     val[i]=0xf2;                    // Low  
  25.     val[i+1]=0x32;                  //
  26.     val[i+2]=0xe1;                  //
  27.     val[i+3]=0x41;                  // High
  28.     
  29.     printf("Raw:   %X %X %X %X\n",val[i+3],val[i+2],val[i+1],val[i]);
  30.     printf("Float: %f \n\n", raw2ieee(val));         //show the value in float
  31.     
  32.     system("pause");
  33.     //getchar( ); // stdio.h
  34. }
  35. /* RESULT */
  36. // Raw1:  41 E1 32 F2
  37. // Float: 28.149 876
  38. //
  39. // 請按任意鍵繼續 . . .

主站蜘蛛池模板: 国产123区在线视频观看 | 国产99欧美精品久久精品久久 | 国产极品一区 | 成人看片在线 | 国产一卡 | 国产乱弄视频在线观看 | 波多野在线播放 | 国产99高清一区二区 | 国产高清自产拍av在线 | 久久亚洲精品中文字幕三区 | 国产成人久久精品推最新 | 久青草视频 | 国自产在线精品免费 | 国产一级做a爰片久久毛片 国产一极片 | 国内精品久久久久久久97牛牛 | 久久这里都是精品 | 国产高清在线看 | 免播放器av少妇影院 | 黄色三级毛片 | 福利片在线看 | 国内精品国语自产拍在线观看91 | 久久无码av三级 | 国产精品99精品久久免费 | 九九九九九在线精品区 | 久久精品一区二区三区中文字幕 | 久久久久久亚洲精品中文字幕 | 国产亚洲第一 | 福利小视频在线 | 麻豆久久婷婷国产综合五月 | 久久国产精品一区二区三区 | 韩国三级大全久久网站 | 久久综久久美利坚合众国 | 福利视频欧美 | 岛国片在线播放 | 国产一级特黄在线视频 | 国产一区亚洲二区三区毛片 | 国产精品精品视频 | 免费黄色网址在线播放 | 美女黄色片视频 | 国产毛片a精品毛 | 国产成人免费在线观看 |