gp15237125756 发表于 2011-4-18 13:55:15

labview毕业设计求助:关于串口数据转换的问题!

毕业设计求助,都来看看呗毕业设计求助!我想在串口的write string控件中写入十六进制数17 01 19,发送到外部设备,这样外设会自动向labview的串口发送一组数据。可是串口的 write string如果是十六进制显示的话是3137 2030 3120 3139,这不是ASCII码了吗?这样发送到外设识别不了就接收不到数据了。怎样才能写入十六进制数17 02 19?还有接收的数据怎样才可以显示成十六进制的(如23 45 4A 3D这样的)怎么把从电子表格读取的一组数据和峰峰值拟合?因为这二者没有确定关系,是不是用非线性拟合?最好给个图啊!急用!!各位高手帮帮忙!谢谢了!我把自己弄得图贴上来了,附件怎么上传不了,只好截图了。4张图是一样的。

(温馨提示:为了您的问题能更快得到解决,请将贴子发到对应的区域,您的是labview问题发到了labview程序共享区,这个区是收录共享程序的,不是问答区,不易于问题解答,已帮您移动到labview技术讨论区,好运!)

(温馨提示:为了您的问题能更快得到解决,请将标题写得清晰些,易于吸引有相关经验的朋友进来解答,已帮您修改标题,好运!)


wdyjz 发表于 2011-4-18 15:15:35

认真的告诉你,你的程序等于没写,做的无用功。
正确做法:
1、参考help--》find example里的串口例子;
2、 数据的发送,可以采用所见即所得的方式,string,右键 hex display, 然后输入你的16进制数据:17 01 19,
3、延时(比如50ms)
4、读取数据,string 右键hex display;则可以看见你所接收的数据;
5、数据的转换需要看你的AD的位数精度,才可以转换成正确的10进制数据;
6、曲线拟合,需呀提前标定,标定好后得到关系式可以反代。曲线的拟合可以优先使用 express选板里的函数。

zhangyanxin 发表于 2011-4-18 15:16:43

我之前也遇到这样的问题,看到下面的帖子已经解决了
http://www.cpubbs.com/bbs/forum.php?mod=viewthread&tid=19232&highlight=%CA%AE%C1%F9%BD%F8%D6%C6

gp15237125756 发表于 2011-4-18 21:18:00

回复 zhangyanxin 的帖子

兄弟不对呀,我想发送hex数170119,输入170219转换后怎么是0119 19?就是说总是少读前2位啊

zhangyanxin 发表于 2011-4-19 09:01:22

不对吗?我之前就是这样用过的啊

gp15237125756 发表于 2011-4-19 12:44:01

回复 zhangyanxin 的帖子

兄弟你运行下这个程序看看。

zhangyanxin 发表于 2011-4-19 13:06:25

没有啊!
我用的很正常啊,写入170119(正常代码显示)
读取1701 19(十六进制代码显示)
页: [1]
查看完整版本: labview毕业设计求助:关于串口数据转换的问题!