查看: 632|回复: 6

[未解决] 请教各位大神如何把整型量转化为十六进制0x0A这样的形式?

[复制链接]
  • TA的每日心情
    奋斗
    2018-11-5 09:12
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2019-1-6 11:06 | 显示全部楼层 |阅读模式
    例如把10转化为0x0A,把11转化为0x0B。
  • TA的每日心情
    开心
    2019-6-15 00:15
  • 签到天数: 43 天

    [LV.5]常住居民I

    发表于 2019-1-6 13:25 | 显示全部楼层

    回帖奖励 +5 金币

    存储于变量中的数值,并不是想象中的十进制。
    只是打印的时候,指定想要的进制就好了。例如:
    1. int val=10;
    2. Serial.println(val, HEX);
    复制代码
  • TA的每日心情
    奋斗
    2018-11-5 09:12
  • 签到天数: 2 天

    [LV.1]初来乍到

     楼主| 发表于 2019-1-6 14:39 | 显示全部楼层
    我需要用Serial.write(0x0a)传送十六进制的数,不能用Serial.print(a,HEX),它只显示为十六进制,本质传送的不是十六进制。所以我传之前需要把整型的10转为0x0A,因为数据在变化所以需要一个dec to hex类似这样的转换函数。
  • TA的每日心情
    奋斗
    2018-11-5 09:12
  • 签到天数: 2 天

    [LV.1]初来乍到

     楼主| 发表于 2019-1-6 14:43 | 显示全部楼层
    void dec2hex(int n,char *buf)
    {
      char t;
      char *p=buf;
      while(n)
      {
        t=n%16;
        *buf++=t<10?t+'0':t-10+'A';
        n/=16;
      }
      *buf++='0';
      *buf--='\0';
      while(p<buf)
      {
        t=*p;
        *p=*buf;
        *buf=t;
        ++p;
        --buf;
      }
    }
    或者有大神能完善一下这个函数吗?
  • TA的每日心情
    奋斗
    2018-11-5 09:12
  • 签到天数: 2 天

    [LV.1]初来乍到

     楼主| 发表于 2019-1-6 15:18 | 显示全部楼层
    谢谢,已经解决,Serial.write(),括号内十进制就行。
  • TA的每日心情
    慵懒
    2018-11-12 08:58
  • 签到天数: 37 天

    [LV.5]常住居民I

    发表于 2019-1-9 11:10 | 显示全部楼层

    回帖奖励 +5 金币

    本帖最后由 跑龙套的保 于 2019-1-9 11:11 编辑

    不需要转,直接发送就行,不同进制只是表现形式不同,10=0x0A,char a= 10和char a=0x0a,是相等的
    文章有帮助,可以请我喝杯咖啡
  • TA的每日心情
    开心
    2019-2-14 16:35
  • 签到天数: 7 天

    [LV.3]偶尔看看II

    发表于 2019-1-11 16:45 | 显示全部楼层

    回帖奖励 +5 金币

    可以自己考虑写段代码来转,用除16求余数来做。
    您需要登录后才可以回帖 登录 | 立即注册  

    本版积分规则

    热门推荐

    【项目】基于Arduino Nano的多功能桌面感应垃圾桶
    【项目】基于Arduino Nano
    基于Arduino Nano的多功能桌面感应垃圾桶随着大学生活不断往前迈进,宿舍桌面上的杂物
    智能物联网花盆
    智能物联网花盆
    打坏了一个费时5小时 3D打印的花盆,耗时22小时 下载:Kittenblock软件,安装、运
    呼吸灯实验
    呼吸灯实验
    本文节选自《Arduino程序设计基础》 之前的章节已经介绍了多种方法控制LED,但单是开
    为开发板 Generic ESP8266 Module 编译时出错
    为开发板 Generic ESP8266
    第一次尝试Arduino UNO软串口通信,编译一直通不过,错误信息 “开发板 generic (平
    Arduino Uno 无法上传程序
    Arduino Uno 无法上传程序
    原来可以正常使用的Arduino Uno 板子突然不能上传程序了,硬件驱动正常,TX和RX指示灯
    Copyright   ©2015-2016  Arduino中文社区  Powered by©Discuz!   ( 蜀ICP备14017632号-3 )
    快速回复 返回顶部 返回列表