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 的输出。

相关推荐
aqi0012 分钟前
15天学会AI应用开发(八)使用向量数据库实现RAG功能
人工智能·python·大模型·ai编程·ai应用
Csvn1 小时前
`functools.lru_cache` —— 一行代码搞定缓存加速
后端·python
金銀銅鐵18 小时前
[Python] 从《千字文》中随机挑选汉字
后端·python
cup111 天前
[技术复盘] Windows Python 打包实战:Nuitka 环境踩坑总结与 CI 自动化构建全指南
python·ai·环境变量·ci·nuitka·skill
aqi001 天前
15天学会AI应用开发(七)有了大模型为什么还要引入RAG
人工智能·python·大模型·ai编程·ai应用
金銀銅鐵1 天前
用 Python 实现 Take-Away 游戏
python·游戏
copyer_xyf1 天前
Agent 流程编排
后端·python·agent
copyer_xyf1 天前
Agent RAG
后端·python·agent