linux创建虚拟串口

要将一个终端bash作为串口,并使其可以被pyserial打开,你可以使用 socat 工具。socat 是一个多功能的网络工具,可以创建虚拟串口对。以下是具体步骤:

  1. 安装 socat

    复制代码

    bash复制代码
    sudo apt-get install socat

  2. 创建虚拟串口对:

    复制代码

    bash复制代码
    socat -d -d pty,raw,echo=0 pty,raw,echo=0

    这条命令会输出类似如下的信息:

    复制代码

    复制代码
    2023/10/10 10:10:10 socat[12345] N PTY is /dev/pts/3 2023/10/10 10:10:10 socat[12345] N PTY is /dev/pts/4 2023/10/10 10:10:10 socat[12345] N starting data transfer loop with FDs [5,5] and [7,7]

    这里 /dev/pts/3/dev/pts/4 是创建的虚拟串口对。

  3. 在一个终端中运行bash:

    复制代码

    bash复制代码
    bash < /dev/pts/3 > /dev/pts/3

  4. 使用 pyserial 打开另一个虚拟串口:

    复制代码

    python复制代码
    import serial ser = serial.Serial('/dev/pts/4', 9600) ser.write(b'Hello from pyserial\n') response = ser.read(100) print(response) ser.close()

这样,你就可以通过 pyserial 与运行在虚拟串口上的bash进行通信了。请注意,虚拟串口的设备文件名(如 /dev/pts/3/dev/pts/4)可能会有所不同,具体取决于 socat 的输出。

相关推荐
IVEN_3 小时前
只会Python皮毛?深入理解这几点,轻松进阶全栈开发
python·全栈
Ray Liang4 小时前
用六边形架构与整洁架构对比是伪命题?
java·python·c#·架构设计
AI攻城狮5 小时前
如何给 AI Agent 做"断舍离":OpenClaw Session 自动清理实践
python
千寻girling5 小时前
一份不可多得的 《 Python 》语言教程
人工智能·后端·python
AI攻城狮8 小时前
用 Playwright 实现博客一键发布到稀土掘金
python·自动化运维
曲幽8 小时前
FastAPI分布式系统实战:拆解分布式系统中常见问题及解决方案
redis·python·fastapi·web·httpx·lock·asyncio
孟健1 天前
Karpathy 用 200 行纯 Python 从零实现 GPT:代码逐行解析
python
码路飞1 天前
写了个 AI 聊天页面,被 5 种流式格式折腾了一整天 😭
javascript·python
曲幽1 天前
FastAPI压力测试实战:Locust模拟真实用户并发及优化建议
python·fastapi·web·locust·asyncio·test·uvicorn·workers