微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 测试测量 > Labview > 关于VISA Write函数的数字输入

关于VISA Write函数的数字输入

时间:10-02 整理:3721RD 点击:
大家好,上次在论坛上问了一个问题很快得到了解决,十分感谢大家!今天在调试的时候又发现一个问题,还想求助各位。
在VISA Write函数中,LabVIEW规定输入端口只能输入字符串,但是现在有一个设备它只能响应数字输入,比如发送000000000006000300160001这一串数字给设备,那么如何使字符串输入转换成这一串数字呢?小弟找遍了LabVIEW中得函数也没有找到解决的办法。请各位兄弟们指教,多谢大家了!

转换成多少进制

使用LabVIEW的Type Cast功能,可以在Functions Palette -> Advanced -> Data Manipulation 中找到 Type cast
在Type cast的输入端连上一个ASCII字符,节点上方的data type 输入端连上一个数字常量。右击这个数字常量,选择Format and Precision, 并选择你需要转换成的类型,例如在本例子中就选择十进制数。再一次右击这个数字常量,选择Representation,选择Byte(I8)或者Unsigned Byte(U8)。现在这个Type Cast 的ASCII 字符输入就会被转换成十进制数输出了。

是这样否?

Scan From String函数,该函数可以把一个包含数字字符的字符串转换成一个数字?

需要搞清楚字符串和数字的概念
例如选择一个字符串常量,里面写入"012",并发送至仪器
如果通信协议认为这个是数字信息(例如你的设备就是这样)
那么就相当于"00 31 32"
如果通信协议认为这个是字符串,那么就相当于"12"
回到你的要求,例如你想输入"0000 0000 0006 0003 0016 0001"
为简化描述,假设这个是个常量,是你自己手动输入的,
新建一个字符串常量,右键 弹出菜单中选择"十六进制"显示
将0000 0000 0006 0003 0016 0001复制进去,发送过去即可

实在不好意思,没有及时回复,就是按照您的方法解决的,十分感谢!呵呵!

建议:尝试使用“十进制数字符串至数值转换”这个控件,看看效果如何

type cast

我看可不可以写出标准的十五汉字

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top