- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我想通过 pySerial 发送一些字节。我使用 socat 创建了虚拟串行端口用于测试目的:
socat PTY,link=./ptyp1,b9600 PTY,link=./ptyp2,b9600
这是Python代码:
ser = serial.Serial('./ptyp1')
x = struct.pack('B',2)
print binascii.hexlify(x) # 02
ser.write(x)
y = ser.read(2)
print binascii.hexlify(y) # 5e42
我得到的输出:
02 # x
5e42 # y
我期望的输出:
02 # x
02 # y
我在这里做错了什么?是 socat 还是 python?
编辑:
我刚刚注意到不同 x 值的一些其他奇怪行为。这里是输出:
x = 12 => y = 5E 52 0D 0A 5E 50
x = 100 => y = 100 # why does it work here?
解决方案:
问题是我在写入的同一个端口上读取。如果我做对了,socat 将两个端口“连接”为“输入”和“输出”。因此,如果我写入 ./ptyp1,则必须读取 ./ptyp2。之后,一切都很好。
最佳答案
问题是我在写入的同一个端口上读取。如果我做对了,socat 将两个端口“连接”为“输入”和“输出”。因此,如果我写入 ./ptyp1,则必须读取 ./ptyp2。之后,一切都很好。
关于python - 使用 pySerial 和 socat 发送字节时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5523463/
在我的服务器上使用 Socat 我有当前命令: socat -u tcp-l:7767,fork system:/app/getmsg.sh 所有 getmsgh.sh 所做的是: read MESS
外部数据提供者与我们的其中一台服务器建立 tcp 连接。 我想使用 socat 来“多路复用”传入的数据,以便多个程序可以接收从外部数据提供者发送的数据。 socat -u TCP4-LISTEN:4
我正在使用 socat 命令在我的嵌入式 linux 设备上创建一个 tty 接口(interface),例如: socat pty,link=/dev/ttyS9 TCP:10.0.10.1:999
我一直在尝试使用socat通过虚假的HTTP答复对正在侦听的套接字的每个连接进行响应。我无法正常工作。可能是因为我使用的是Socat的Cygwin版本?我不知道。 问题的一部分是我不希望将第二个参数写
一段时间后,我终于让 socat 以与 putty 相同的方式运行,使用: stty -F /dev/ttyS2 115200 cs8 ixoff socat $(tty),raw,echo=0,es
我在我的 ubuntu 笔记本上创建了两个虚拟串行端口。 -> sudo socat/dev/ttyUSB7/dev/ttyUSB8 现在我想删除串行端口以及它们之间的连接。 我找不到执行此操作的命令
我要模拟 3 个不同的应用程序,每个都连接到不同的串行调制解调器 (rs232)。我希望每个应用程序都通过在“虚拟”串行线上写入来与其他应用程序通信我尝试配置 socat 应用程序,但现在我只能使用以
我正在运行这样的隧道: socat TCP-LISTEN:9090,fork TCP:192.168.1.3:9090 我想运行一个脚本来执行带有通过隧道的字符串的代码。 脚本不改变字符串,只独立处理
我使用带有 OpenWRT 的 TP-Link 路由器 TL-WR710N 作为 IPv4 到 IPv6 的转换器/网关,使用以下 socat 命令: socat TCP4-LISTEN:80,for
我使用以下代码接收连接: socat TCP-LISTEN:4000,fork EXEC:./myscrpit" 我的脚本中需要一个发件人的 IP 地址,但是 SOCAT_PEERADDR 没有设置,
我正在编写 JUnit 测试来测试我的应用程序。该应用程序是用 Java 编写的,并使用 purejavacomm 库。为了测试串行解析器,我想设置一个虚拟串行端口,以便测试可以与解析器通信。除了简单
我在 kubernetes 的一个端口上运行 pyspark。我正在尝试转发到我的本地机器。执行 python 文件时出现此错误。 Forwarding from 127.0.0.1:7077 ->
我正在使用 socat 版本 1.7.3.2 从 VLAN 以太网设备创建字符设备以进行通信。我使用以下命令创 build 备: socat INTERFACE:wwan0.vlan_dev1,typ
我想用 socat 创建一个端口转发器,以便通过单个 openssl channel 重定向多个分支连接。我可以在不使用任何 tun 或 vpn 的情况下在 socat 中执行此操作吗? 到目前为止,
如何用socat测试远程端口是否可达? 通过 netcat 我们可以 nc -zv 192.168.1.15 22 如何使用 socat 做到这一点? 最佳答案 由于 OP 请求等效于 -z,因此以下
我正在使用 Windows 的 socat 作为客户端通过 SSH 隧道 DNS,它可以完美地工作,直到 ssh 连接终止或暂时不可用 - 当这种情况发生时 socat Windows 客户端终止并需
目标是使用串行接口(interface)连接到嵌入式设备。到目前为止,我使用过: stty -F /dev/ttyS2 115200 cs8 ixoff socat readline,history=
此命令(串行端口重定向器)接受 TCP:11313 上的单个连接: socat PTY,link=/dev/ttyV1,echo=0,raw,unlink-close=0 TCP-LISTEN:113
我有一个开放端口的服务器,每秒接收 50 到 1000 条消息。我所说的消息是指发送单行文本。 本质上,我们希望将这些消息记录在一个文件中,该文件将每小时(或 x 分钟)处理一次。 我已经创建了一个在
我只想要一个进程打开 socat 创建的 PTY 设备。 我使用以下内容创建 my_ser设备,但它可以被多个进程读/写。 socat -t 0 INTERFACE:my_nw,type=2 PTY,
我是一名优秀的程序员,十分优秀!