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

相关推荐
解救女汉子几秒前
Nginx如何配置phpMyAdmin访问_反向代理设置方法
jvm·数据库·python
格鸰爱童话3 分钟前
python使用milvus向量库
python·milvus
qq_206901394 分钟前
Navicat导出CSV文件数据为空如何解决_过滤条件与权限排查
jvm·数据库·python
m0_5887584810 分钟前
高效实现分组内跨行时间戳匹配:为每组生成布尔标记列 user_rejects
jvm·数据库·python
好运的阿财12 分钟前
OpenClaw工具拆解之 web_fetch+image_generate
前端·python·机器学习·ai·ai编程·openclaw·openclaw工具
qq_2069013919 分钟前
golang如何实现日志按级别过滤_golang日志按级别过滤实现教程.txt
jvm·数据库·python
无风听海19 分钟前
Python 哨兵值模式(Sentinel Value Pattern)深度解析
开发语言·python·sentinel
weixin_4585801220 分钟前
怎么通过Node.js监控MongoDB的慢查询_监听数据库事件或利用APM工具集成
jvm·数据库·python
weixin_4249993623 分钟前
php怎么实现API网关聚合_php如何将多个微服务接口合并响应
jvm·数据库·python
2401_8359568124 分钟前
SQL在JOIN场景下如何进行索引维护_覆盖索引构建与失效处理
jvm·数据库·python