正如您从标题中了解的那样,我有一个控制器,我已通过 tcp 套接字成功连接到该控制器。从这个控制器的手册中,我读到我必须发送这样的命令:
“A5 A5 A5 A5 A5 A5 A5 A5 01 00 00 80 00 00 00 00 00 00 FE 02 05 00 A2 00 01 00 00 68 F8 5A”
现在我对那个命令感到非常困惑。
如何通过套接字发送此命令?
*手册中只提到了 rs232 和 gprs 通信,我通过 wifi 进行通信,所以我打开了一个 tcp 套接字
一个非常基本的方法是这样的:
int targetPort = 5005;
String targetHost = "targetHost";
byte[] command = new byte[] { (byte) 0xa5, (byte) 0xa5, ... };
try (Socket socket = new Socket(targetHost, targetPort);
OutputStream rawOutputStream = socket.getOutputStream()) {
rawOutputStream.write(command);
rawOutputStream.flush();
}
这只是为您的控制器打开一个套接字,发送命令,仅此而已。对于生产性使用,您可能希望保留套接字,阅读答案,也许用BufferedOutputStream
等包装套接字的输出流。