cpubbs论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

LabVIEW+单片机学习套件全套教程资料下载[免费]LabVIEW论坛精华列表贴USB0816数据采集卡《LabVIEW宝典》
LabWindows/CVI论坛精华贴NET0816以太网数据采集卡RC0210远程设备授权系统 关闭关停锁定打开设备 户外分布式数据采集
NET1624低速高精度以太网数据采集卡WIFI0824SD无线WIFI网络数据采集卡脱机运行 SD存储 小尺寸微型 串口采集远程采集 安卓 手持移动采集 纪录仪
查看: 6929|回复: 8

请问labview 中16进制数据到ASCALl码字符串怎么转换??

[复制链接]
发表于 2011-5-22 19:17:19 | 显示全部楼层 |阅读模式
(1)下位机接收到如下16进制的数据
06 2D 2F 02 5B 2D 0C 2B 99 0D CF 21 00 00 00 00 00 00 00 00 05 27 26 9A
6C D8 0D 2A 8B F7 0E 25 00 9B 3C 9B 0C F1 B7 A 0 03 32 EC 7B AB B9 0C 3E
68 9B 00 00 66 9E 3A E7 B5 37 02 F1 D6 0D 0A

我想转换成对应的ASCAll码字符串数据
(编号)    6  15 5 14 3
(状态)    0  3   0 0  0
(信噪比)43 35 38 41 50
(相位)    3 081 795. 156 0 2 529 906. 824 39 744. 615 47 - 1 279 260. 241
(距离)   20 418 388. 5 0 22 089 232. 1 21 716 754. 6 20 541 664. 3
(星期数)751
(时间s) 26 277. 988 263 735
    请问怎么进行转换??括号里的只是解释部分,本来没有。

(2)我想给下位机发送16进制的命令,例如:我在字符串输入控件中输入正常显示的字符串命令,怎么通过里面的程序转换成16进制的字符串,再赋给visa  write节点,写入串口?

请各位大哥帮一下忙,小弟万分感谢!!
发表于 2011-5-22 19:39:00 | 显示全部楼层
你的通信协议如何定义的?
 楼主| 发表于 2011-5-22 19:56:00 | 显示全部楼层
下位机可以发ASCLL码的或者二进制的数据,接收16进制的命令!!
发表于 2011-5-22 20:06:40 | 显示全部楼层
你的通信协议,就是每帧数据是如何定义的,它们的含义是什么,有多长,具体如何解析的。
再问你:你的通信协议是怎么回事?
 楼主| 发表于 2011-5-22 20:24:45 | 显示全部楼层
大哥,对于二进制的EPB语句解析格式如下:每一行对应一个量 首先是编号(蓝色那个),下面就是具体的各个数据了,棕色部分是解释
Table 6.77. EPB Response Format
Type Size Contents
d     2    PRN number
struct
long 4    Subframe 1, word 1
long 4    Subframe 1, word 2
long 4    Subframe 1, word 3
long 4    Subframe 1, word 4
long 4    Subframe 1, word 5
long 4   Subframe 1, word 6
long 4   Subframe 1, word 7
long 4   Subframe 1, word 8
long 4  Subframe 1, word 9
long 4  Subframe 1, word 10
long 4  Subframe 2, word 1
long 4  Subframe 2, word 2
long 4  Subframe 2, word 3
long 4 Subframe 2, word 4
long 4  Subframe 2, word 5
long 4  Subframe 2, word 6
long 4  Subframe 2, word 7
long 4  Subframe 2, word 8
long 4  Subframe 2, word 9
long 4  Subframe 2, word 10
long 4  Subframe 3, word 1
long 4  Subframe 3, word 2
long 4  Subframe 3, word 3
long 4  Subframe 3, word 4
long 4  Subframe 3, word 5
long 4  Subframe 3, word 6
long 4  Subframe 3, word 7
发表于 2011-5-22 20:29:25 | 显示全部楼层
你的回答仍然不是需要的,继续回答我的问题,你的串口通信协议到底是如何制定的???
 楼主| 发表于 2011-5-22 20:42:59 | 显示全部楼层
大哥,我想问的其实就是两个问题:
1, 怎么在labview里把十六进制格式数据转换成ascall码格式?(不只是转换一个数据,要能转换一串数据)
2,怎么把常规显示的字符串转换成16进制???

谢谢!!
发表于 2011-5-22 20:48:07 | 显示全部楼层
此贴应转到 LabVIEW探讨版面,非此处。顺便回答你问题:
1、string to bytearray即可转换
2、strng to byte array--.index array-->numeric to hexstring.
 楼主| 发表于 2011-5-22 20:55:54 | 显示全部楼层
回复 wdyjz 的帖子

5楼那个数据解析格式,其实说简单点就是,labview接收一条二进制的语句,这条语句首先头两个字节是编号,后面每4个字节就是一个所要分离的量,一直就到结尾了,我的想法是“我在接收缓冲区里边设成16进制显示,那么二进制的语句就成16进制了,接下来在转换成数值型字符串”,麻烦大哥给我看一下这个想法对不对,还有怎么分离那个语句?我的迷茫点就在这
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|cpubbs论坛. ( 粤ICP备09171248号 )

GMT+8, 2025-4-7 17:30 , Processed in 0.405589 second(s), 6 queries , Gzip On, File On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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