查看: 1820|回复: 6

[未解决] string转16进制问题

[复制链接]

该用户从未签到

发表于 2019-5-17 10:56 | 显示全部楼层 |阅读模式
哪位大神帮帮忙!!!
用String comdata = "";在串口读到16进制字符串,
现在想提取其中的一个数据comdata[6],
然后转成16进制,
用Serial.write送出去怎么办?
卡在这很久了!!!
  • TA的每日心情
    擦汗
    2019-7-29 00:08
  • 签到天数: 47 天

    [LV.5]常住居民I

    发表于 2019-5-17 13:00 | 显示全部楼层
    你需要 sscanf,用 %x 参数就可以抽出 char* 字串中的 HEX 数值。
    但是这里是 String 类型,需要先转换到 char* 然后再操作,大致如下:

    2019-05-17_125522.png

    该用户从未签到

     楼主| 发表于 2019-5-21 09:52 | 显示全部楼层
    本帖最后由 zyjun 于 2019-5-21 09:54 编辑

    我的项目里还须要将字符串里指定位置的字符提取出来(比如第3个和第4个字符),再和其它的16进制字符连接起来(我用的是char[]格式),最后用Serialwrite把拼接后的字符串送出去,需要怎么写代码?望不吝赐教,万分感谢!

    该用户从未签到

     楼主| 发表于 2019-5-21 09:55 | 显示全部楼层
    t3486784401 发表于 2019-5-17 13:00
    你需要 sscanf,用 %x 参数就可以抽出 char* 字串中的 HEX 数值。
    但是这里是 String 类型,需要先转换到 c ...

    我的项目里还须要将字符串里指定位置的字符提取出来(比如第3个和第4个字符),再和其它的16进制字符连接起来(我用的是char[]格式),最后用Serialwrite把拼接后的字符串送出去,需要怎么写代码?望不吝赐教,万分感谢!
  • TA的每日心情
    擦汗
    2019-7-29 00:08
  • 签到天数: 47 天

    [LV.5]常住居民I

    发表于 2019-5-21 11:43 | 显示全部楼层
    zyjun 发表于 2019-5-21 09:55
    我的项目里还须要将字符串里指定位置的字符提取出来(比如第3个和第4个字符),再和其它的16进制字符连接 ...

    用 strcat

    该用户从未签到

     楼主| 发表于 2019-5-21 17:19 | 显示全部楼层
    t3486784401 发表于 2019-5-17 13:00
    你需要 sscanf,用 %x 参数就可以抽出 char* 字串中的 HEX 数值。
    但是这里是 String 类型,需要先转换到 c ...

    我按您的方法,为什么只能送出最多4个字符,多了就出错
  • TA的每日心情
    擦汗
    2019-7-29 00:08
  • 签到天数: 47 天

    [LV.5]常住居民I

    发表于 2019-5-21 23:54 | 显示全部楼层
    zyjun 发表于 2019-5-21 17:19
    我按您的方法,为什么只能送出最多4个字符,多了就出错


    因为 %x 就是抽出 uint16_t 的数据,再长了你需要用 %lx 以及 uint32_t 类型:

    uint32_t v32;
    sscanf(str, "%lx", &v32);

    想要抽出数组(任意长度)的话,需要你自己把 HEX 字符截断,每两位一个字节
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    热门推荐

    5分钟带你快速了解新一代开发板:M5STACK
    5分钟带你快速了解新一代
    一、什么是M5Stack M5Stack是一种模块化、可堆叠扩展的开发板,每个模块
    创客火首发无人机编队套装,开启不一样的人工智能教育
    创客火首发无人机编队套装
    2017年国务院发布《新一代人工智能发展规划》,提出要广泛开展人工智能科普活动,在中
    【Arduino】108种传感器模块系列实验(129)---BH1750光照传感器
    【Arduino】108种传感器模
    37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是
    智能插座-blinker-天猫精灵-开源分享
    智能插座-blinker-天猫精
    1。之前学blinker做的一个项目,开源分享一下。视频上传B站,PCB在立创开源。
    在Arduino Nano 33 BLE Sense上用机器学习通过声音分辨不同的昆虫
    在Arduino Nano 33 BLE Se
    用机器学习识别植物的应用有很多,拿出手机,打开APP,拍张照片就可以一键识别眼前盛
    Copyright   ©2015-2016  Arduino中文社区  Powered by©Discuz!   
    快速回复 返回顶部 返回列表