Java 与串行端口通信-iOS Swift
我决定做一个开源项目。 该项目包括与串行端口的通信。这里是通用的命令参考,它通过串行端口接受通信。 该项目的开发人员给了我一个提示(Java代码),说明它将如何连接,以及如何将数据读/写到串行端口。 他是这么说的: 创建套接字的调用(通常为192.168.0.1和端口9999): 还有两个对象来完成这项工作:Java 与串行端口通信-iOS Swift,java,ios,swift,sockets,socket.io,Java,Ios,Swift,Sockets,Socket.io,我决定做一个开源项目。 该项目包括与串行端口的通信。这里是通用的命令参考,它通过串行端口接受通信。 该项目的开发人员给了我一个提示(Java代码),说明它将如何连接,以及如何将数据读/写到串行端口。 他是这么说的: 创建套接字的调用(通常为192.168.0.1和端口9999): 还有两个对象来完成这项工作: BufferedReader in = new BufferedReader(new InputStreamReader(s.getInputStream())); BufferedWri
BufferedReader in = new BufferedReader(new InputStreamReader(s.getInputStream()));
BufferedWriter out = new BufferedWriter(new OutputStreamWriter(s.getOutputStream()));
char c;
out.write(":MS#");
if (in.ready()) c=in.read();
上述代码包括通过套接字的连接。在iOS Swift中我将如何做同样的事情。
如果您能提供一些提示,我们将不胜感激。从IOKit、POSIX、Darwin/MachKernel中可以选择一系列选项。简言之,对于一件简单的事情来说,复杂得出奇!这是因为串行端口的遗留问题
在Swift中,将您与此隔离的流行框架是ORSSerialPort。这个开源项目的文档也不错。还有。模式相同,但更简单,不依赖于IOKit。它在Macos中使用POSIX api,还使用一些Mach内核特定的api进行线程和信号抽象。有内置的套接字服务,如和新的(仅限iOS12-仍为beta版),但使用库可能更简单,如我将试一试。虽然我不知道如何沟通。任何建议都将不胜感激:从快速查看来看,“串行端口”实际上是一个终端服务器,正在侦听TCP套接字。您打开到该套接字的网络连接,输出流上发送的任何数据都会从串行端口发送出去,发送到串行端口的任何数据都会通过与连接相关联的输入流发送!我要试一试。谢谢。您需要熟悉处理异步事件,因为轮询串行端口获取数据或阻止等待输入不是一个好主意!这可能有助于未来的观众。那时我实现了我所追求的目标。以下是我构建的:
BufferedReader in = new BufferedReader(new InputStreamReader(s.getInputStream()));
BufferedWriter out = new BufferedWriter(new OutputStreamWriter(s.getOutputStream()));
char c;
out.write(":MS#");
if (in.ready()) c=in.read();