问题描述
我尝试与来自 Aoip 的测量设备 Om21 通信,但遇到了一些困难。 串口使用的旧设备
我可以向它发送命令 但我无法从它接收信息
我试试这个:
var _serialPort = new SerialPort {Baudrate = 9600,ReadTimeout = 4000,WriteTimeout = 4000,ReadBufferSize = 128,WriteBufferSize = 128};
_serialPort.open(); // ok
_serialPort.Write("REM\n"); // ok
_serialPort.Write("KEYB OFF\n"); // ok
_serialPort.Write("CL_ERR\n"); // ok
_serialPort.Write("LIGHT ON\n"); // ok
_serialPort.Write("CYCLE 1\n"); // ok
_serialPort.Write("MEAS_RT OFF\n"); // ok
_serialPort.Write("RANGE AUTO\n"); // ok
_serialPort.Write("*WAI\n"); // ok
_serialPort.Write("*IDN?\n");
// what write here to receive info ?
有人有想法吗?
IEEE-488 模式
对查询的响应存储在内存区域中
称为输出缓冲区,等待控制器读取它们。
输出缓冲区最多可容纳 128 个八位字节。
单元被控制器设置为通话模式,内容
输出缓冲区通过总线发送,然后一次整个
已收到响应消息的
thecontroller,发送响应终止符(+EOI)
在公共汽车上。
RS 232 模式: 输出缓冲区的工作原理相同 方式,除了以下详细信息:- 在任一协议中 模式,DTR 线必须在串行之前强制为高 接口可以发送字符。- 接口只开始发送 一旦输出缓冲区已满或命令消息响应 终结符已被解码。- 在 XON/XOFF 协议中,接口 一旦 Control/S (XOFF) 已被停止传输 收到,并在 Control/Q (XON) 收到后立即重新开始传输 已收到。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)