haiou 发表于 2011-5-22 19:17:19

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

(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码字符串数据
(编号)    615 5 14 3
(状态)    03   0 00
(信噪比)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进制的字符串,再赋给visawrite节点,写入串口?

请各位大哥帮一下忙,小弟万分感谢!!

wdyjz 发表于 2011-5-22 19:39:00

你的通信协议如何定义的?

haiou 发表于 2011-5-22 19:56:00

下位机可以发ASCLL码的或者二进制的数据,接收16进制的命令!!

wdyjz 发表于 2011-5-22 20:06:40

你的通信协议,就是每帧数据是如何定义的,它们的含义是什么,有多长,具体如何解析的。
再问你:你的通信协议是怎么回事?

haiou 发表于 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 4Subframe 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 4Subframe 1, word 9
long 4Subframe 1, word 10
long 4Subframe 2, word 1
long 4Subframe 2, word 2
long 4Subframe 2, word 3
long 4 Subframe 2, word 4
long 4Subframe 2, word 5
long 4Subframe 2, word 6
long 4Subframe 2, word 7
long 4Subframe 2, word 8
long 4Subframe 2, word 9
long 4Subframe 2, word 10
long 4Subframe 3, word 1
long 4Subframe 3, word 2
long 4Subframe 3, word 3
long 4Subframe 3, word 4
long 4Subframe 3, word 5
long 4Subframe 3, word 6
long 4Subframe 3, word 7

wdyjz 发表于 2011-5-22 20:29:25

你的回答仍然不是需要的,继续回答我的问题,你的串口通信协议到底是如何制定的???

haiou 发表于 2011-5-22 20:42:59

大哥,我想问的其实就是两个问题:
1, 怎么在labview里把十六进制格式数据转换成ascall码格式?(不只是转换一个数据,要能转换一串数据)
2,怎么把常规显示的字符串转换成16进制???

谢谢!!

wdyjz 发表于 2011-5-22 20:48:07

此贴应转到 LabVIEW探讨版面,非此处。顺便回答你问题:
1、string to bytearray即可转换
2、strng to byte array--.index array-->numeric to hexstring.

haiou 发表于 2011-5-22 20:55:54

回复 wdyjz 的帖子

5楼那个数据解析格式,其实说简单点就是,labview接收一条二进制的语句,这条语句首先头两个字节是编号,后面每4个字节就是一个所要分离的量,一直就到结尾了,我的想法是“我在接收缓冲区里边设成16进制显示,那么二进制的语句就成16进制了,接下来在转换成数值型字符串”,麻烦大哥给我看一下这个想法对不对,还有怎么分离那个语句?我的迷茫点就在这
页: [1]
查看完整版本: 请问labview 中16进制数据到ASCALl码字符串怎么转换??