石鑫华视觉论坛

 找回密码
 注册会员
查看: 6416|回复: 3

[原创] LabVIEW中16进制显示字符串与正常显示16进制字符串强制转换

[复制链接]
  • TA的每日心情
    慵懒
    8 小时前
  • 签到天数: 3415 天

    连续签到: 17 天

    [LV.Master]2000FPS

    发表于 2020-3-17 12:01:51 | 显示全部楼层 |阅读模式 来自:广东省东莞市 联通

    注册登陆后可查看附件和大图,以及购买相关内容

    您需要 登录 才可以下载或查看,没有账号?注册会员

    x
    16进制显示字符串与正常显示16进制字符串强制转换

    16进制显示字符串与正常显示16进制字符串强制转换

    16进制显示字符串与正常显示16进制字符串强制转换

    正常显示字符串与16进制显示字符串强制转换

    这种需求一般是在串口、VISA等仪器通信中涉及到的读写过程。一般来讲,仪器可能认的都是ASCII码的16进制编码。也就是,我们在字符串中,使用16进制显示时表示的代码。如0X0102 0304 0506 AABB CCDD EEFF这样格式的字符串。但是我们给到实际使用时,输入端也好,输出端也好,可能一般都是正常显示的字符串。但是,如果将正常的字符串写转换为ASCII码后,肯定就不是本身了,就如数字0-10的ASCII是从48-57,A-F则是从65-70,如果是小写的a-f则是从97-102。所以,这里面本身是有差别的。这时,如果正常显示输入的是0n10AC这样的字符串,实际输入时,也要表示为16进制的ASCII码的0x10AC,那就要进行强制转换,将字符串1强制转换为ASCII中的数字1,将字符串0强制转换为ASCII中的数字0,字符串A强制转换为ASCII码中的A。同样的,读取的16进制的ASCII的值,也要强制转换为正常显示的16进制的字符串。转换的原理,是将正常显示的16进制字符串转换为16进制的数字(反过来则是16进制数字转换为字符串),再将数组创建为数组并使用字节数组到字符串(反过来则是字符串到字节数组)。这样就可以转换为相应的ASCII表示的16进制的字符串了。当然中间要加一些辅助的如索引、连接、循环等过程,自己参考上面的示例。
    LabVIEW示例下载.LV2019SP1版本
    16进制显示与正常显示强制转换.vi (14.71 KB, 下载次数: 45)
    回复

    使用道具 举报

    该用户从未签到

    发表于 2022-9-12 11:44:29 | 显示全部楼层 来自:四川省成都市 电信
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2022-9-12 22:27:21 | 显示全部楼层 来自:北京市东城区 联通
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    难过
    2022-11-28 16:15
  • 签到天数: 7 天

    连续签到: 1 天

    [LV.3]300FPS

    发表于 2022-10-24 14:07:42 | 显示全部楼层 来自:陕西省西安市 电信
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册会员

    本版积分规则

    LabVIEW HALCON图像处理入门教程(24.09)
    石鑫华机器视觉与LabVIEW Vision图像处理PDF+视频教程11种全套
    《LabVIEW Vision函数实例详解2020-2024》教程-NI Vision所有函数使用方法介绍,基于NI VISION2020,兼容VDM21/22/23/24

    QQ|石鑫华视觉论坛 |网站地图

    GMT+8, 2024-12-25 16:22

    Powered by Discuz! X3.4

    © 2001-2024 Discuz! Team.

    快速回复 返回顶部 返回列表