读取虚拟端口时 ser.inWaiting() 始终返回 0

2024-02-25

我很难获得pyserial和一个玩得很好虚拟端口。我知道这是其他一些人写过的领域,但我在这些答案中找不到任何可以解决我的问题的内容。如果我只是太笨了,请原谅我,解决方案在其他地方已经存在。

这就是我想要实现的目标:我想设置一个虚拟端口,我可以在一个 .py 文件中写入数据,然后可以从中读取另一个 .py 文件中的数据。这是为了开发和测试的目的;我并不总是能够访问构建当前项目的设备。

到目前为止,这是我的代码:

虚拟串行.py

import os, pty, serial, time

master, slave = pty.openpty()
m_name = os.ttyname(master)
s_name = os.ttyname(slave)

# This tells us which ports "openpty" has happened to choose.
print("master: "+m_name)
print("slave: "+s_name)

ser = serial.Serial(s_name, 9600)

message = "Hello, world!"
encoded = message.encode("ascii")

while True:
  ser.write(encoded)
  time.sleep(1)

读者.py

import serial, time

# The port will change, depending on what port "openpty" (in the other file)
# happens to choose.
ser = serial.Serial("/dev/pts/1", 9600)

while True:
  time.sleep(1)
  incoming_bytes = ser.inWaiting()
  # This print statement gives us an idea of what's going on.
  print(incoming_bytes)
  if incoming_bytes != 0:
    data = ser.read(incoming_bytes)
    print(data)

目前,dummy_serial.py 似乎运行正常。然而,reader.py 只是一直说没有字节等待读取,因此不读取任何数据。

我想要什么:

  • 原因的解释ser.inWaiting()不断返回 0,并且有一个解决方案使得ser.read(x)实际上吐出“你好,世界!”
  • Or解释为什么我想做的事情从根本上来说是愚蠢的,也是创建可写/可读虚拟端口的更好方法。

None

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

读取虚拟端口时 ser.inWaiting() 始终返回 0 的相关文章

  • 如何使用 imaplib 获取“消息 ID”

    我尝试获取一个在操作期间不会更改的唯一 ID 我觉得UID不好 所以我认为 Message ID 是正确的 但我不知道如何获取它 我只知道 imap fetch uid XXXX 有人有解决方案吗 来自 IMAP 文档本身 IMAP4消息号
  • 在 Python distutils 中从 setup.py 查找脚本目录的正确方法?

    我正在分发一个具有以下结构的包 mymodule mymodule init py mymodule code py scripts script1 py scripts script2 py The mymodule的子目录mymodul
  • 将数据帧行转换为字典

    我有像下面的示例数据这样的数据帧 我正在尝试将数据帧中的一行转换为类似于下面所需输出的字典 但是当我使用 to dict 时 我得到了索引和列值 有谁知道如何将行转换为像所需输出那样的字典 任何提示都非常感激 Sample data pri
  • Django 模型在模板中不可迭代

    我试图迭代模型以获取列表中的第一个图像 但它给了我错误 即模型不可迭代 以下是我的模型和模板的代码 我只需要获取与单个产品相关的列表中的第一个图像 模型 py class Product models Model title models
  • 如何计算numpy数组中元素的频率?

    我有一个 3 D numpy 数组 其中包含重复的元素 counterTraj shape 13530 1 1 例如 counterTraj 包含这样的元素 我只显示了几个元素 array 136 129 130 103 102 101 我
  • 为什么在 Python 2.4 中使用 Unicode 数据会出现 ASCII 编码错误,而在 2.7 中却不会?

    我有一个程序 当在 Python 2 7 中运行时 会生成正确的 Unicode 输出到标准输出 当在 Python 2 4 中运行时 我得到UnicodeEncodeError ascii codec can t encode chara
  • 更改 `base_compiledir` 以将编译后的文件保存在另一个目录中

    theano base compiledir指编译后的文件存放的目录 有没有办法可以永久设置theano base compiledir到不同的位置 也许通过修改一些内部 Theano 文件的内容 http deeplearning net
  • 使用 OLS 回归预测未来值(Python、StatsModels、Pandas)

    我目前正在尝试在 Python 中实现 MLR 但不确定如何将我找到的系数应用于未来值 import pandas as pd import statsmodels formula api as sm import statsmodels
  • 如何通过在 Python 3.x 上按键来启动和中断循环

    我有这段代码 当按下 P 键时会中断循环 但除非我按下非 P 键 否则循环不会工作 def main openGame while True purchase imageGrab if a sum gt 1200 fleaButton ti
  • TensorFlow的./configure在哪里以及如何启用GPU支持?

    在我的 Ubuntu 上安装 TensorFlow 时 我想将 GPU 与 CUDA 结合使用 但我却停在了这一步官方教程 http www tensorflow org get started os setup md 这到底是哪里 con
  • 在flatpak项目中使用scrapy脚本

    我正在构建一个 flatpak 构建的项目 我有一个按钮 当单击它时我希望它运行 scrapy 脚本来抓取数据 窗口用户界面
  • 从 python 发起 SSH 隧道时出现问题

    目标是在卫星服务器和集中式注册数据库之间建立 n 个 ssh 隧道 我已经在我的服务器之间设置了公钥身份验证 因此它们只需直接登录而无需密码提示 怎么办 我试过帕拉米科 它看起来不错 但仅仅建立一个基本的隧道就变得相当复杂 尽管代码示例将受
  • 使用鼻子获取设置中当前测试的名称

    我目前正在使用鼻子编写一些功能测试 我正在测试的库操作目录结构 为了获得可重现的结果 我存储了一个测试目录结构的模板 并在执行测试之前创建该模板的副本 我在测试中执行此操作 setup功能 这确保了我在测试开始时始终具有明确定义的状态 现在
  • 如何设置 Celery 来调用自定义工作器初始化?

    我对 Celery 很陌生 我一直在尝试设置一个具有 2 个独立队列的项目 一个用于计算 另一个用于执行 到目前为止 一切都很好 我的问题是执行队列中的工作人员需要实例化一个具有唯一 object id 的类 每个工作人员一个 id 我想知
  • 将 JSON 对象传递给带有请求的 url

    所以 我想利用 Kenneth 的优秀请求模块 https github com kennethreitz requests 在尝试使用时偶然发现了这个问题自由库API http wiki freebase com wiki API 基本上
  • gitlab-ci 的缓存虚拟环境

    我使用 Gitlab CI 脚本缓存了 Pip 包 所以这不是问题 现在我还想赶上Conda虚拟环境 因为它减少了设置环境的时间 我缓存了一个虚拟环境 不幸的是 最后需要很长时间才能缓存所有 venv 文件 我尝试仅缓存 CI PROJEC
  • 使用 Firefox 绕过弹出窗口下载文件:Selenium Python

    我正在使用 selenium 和 python 来从中下载某些文件web page http www oceanenergyireland com testfacility corkharbour observations 我之前一直使用设
  • mac osx 10.8 上的初学者 python

    我正在学习编程 并且一直在使用 Ruby 和 ROR 但我觉得我更喜欢 Python 语言来学习编程 虽然我看到了 Ruby 和 Rails 的优点 但我觉得我需要一种更容易学习编程概念的语言 因此是 Python 但是 我似乎找不到适用于
  • 具有自定义值的 Django 管理外键下拉列表

    我有 3 个 Django 模型 class Test models Model pass class Page models Model test models ForeignKey Test class Question model M
  • 从 Twitter API 2.0 获取 user.fields 时出现问题

    我想从 Twitter API 2 0 端点加载推文 并尝试获取标准字段 作者 文本 和一些扩展字段 尤其是 用户 字段 端点和参数的定义工作没有错误 在生成的 json 中 我只找到标准字段 但没有找到所需的 user fields 用户

随机推荐

  • Werkzeug 引发 BrokenFilesystemWarning

    当我将表单数据发送到 Flask 应用程序时 出现以下错误 它说它将使用 UTF 8 编码 但区域设置已经是 UTF 8 这个错误是什么意思 home virtualenvs project local lib python2 7 site
  • While循环:UnboundLocalError:赋值前引用的局部变量

    我正在使用 python 3 5 因此 我尝试创建一个函数 将 x 和 y 作为正浮点输入 然后计算并返回 R x N y 其中 N 是最大整数 因此 x gt N y 我做了这个功能 def floatme x y N 1 while x
  • 将类型结构的通用列表绑定到中继器

    我在尝试将通用列表绑定到中继器时遇到了一些问题 泛型列表中使用的类型实际上是一个结构体 我在下面构建了一个基本示例 struct Fruit public string FruitName public string Price strin
  • MySQL 崩溃(“某些指针可能无效并导致转储中止”)

    我有一个名为 tweets 的 5GB MySQL 数据库 我需要从中访问 searchresults 表 但是 当我对其执行查询或创建转储时 MySQL 服务器 在 Windows 10 上运行 始终崩溃 并在同一行出现相同的错误 例如
  • Hyperledger Fabric 中的对等通道创建失败

    我正在尝试与一个订购者和 2 个对等方建立一个示例超级账本结构环境 我没有使用 docker 方法 而是运行实际的可执行文件本身 Orderer 和 2 个对等节点已成功启动 但是 通道创建失败并出现以下错误 任何帮助将不胜感激 订购者窗口
  • 比较 Cloud Functions 中的两个 Firestore 时间戳

    我正在 Firestore 中编写更新函数 我想比较两个Timestamp 我尝试了多种方法但没有成功 你能指出我比较两个的正确方法吗Timestamp在消防库里 exports updateFunction functions fires
  • Java监听端口

    我们想要捕获通过端口 7777 到达系统的数据 public static void main String args try final ServerSocket serverSocket new ServerSocket 7777 ne
  • 在 F# 中将字符串相乘

    我有一个问题我不太确定 我的问题如下 let myFunc text string times int 我想要这个函数做的是将字符串放在一起的次数与指定的次数相同times范围 if input check 3我想要输出字符串 check
  • 如何生成x的前20次方?

    所以 我有 X 一个 300 1 向量 我想要 1 X X X X X X X X X 300 20 矩阵 我该怎么做 X 2 1 X X X X X X ans 2 4 8 1 1 1 这可行 但我无法面对将整个内容打出来 我肯定不需要写
  • Jackson 2.2.3 中属性的 getter 定义相互冲突

    为了简单起见 这里是一个简单的类 class GetterMethodsObject int id 10 public int getId return id JsonIgnore public boolean isId return tr
  • 使用相互或循环(循环)导入时会发生什么?

    在 Python 中 当两个模块尝试执行操作时会发生什么import彼此 更一般地说 如果多个模块尝试import在一个循环中 See also What can I do about ImportError Cannot import n
  • LINQ to Entities 查询不支持转换为十进制

    我有一个数据库表事务 transactionID LocalAmount 其中 Localmount 属性的数据类型是float 在用户界面上我试图返回SUM按钮单击事件中一行中的列 Localamount 我用过decimal代替floa
  • 什么是“单位”? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 在单元测试的背景下 什么是 单元 我通常将其定义为单一代码执行路径通过单一方法 根据经验法则 测试一个方法所需的单元测试数量等于或大于
  • 透明 UINavigationBar 下的 UIWebView

    我有一个 UIWebView 我想将其放在半透明的 UINavigationBar 下 通常 当我将 UIScrollView 放在半透明的 UINavigationBar 下时 我会设置其 contentOffset 以便所有内容最初都会
  • API 端点返回“此请求的授权已被拒绝”。发送不记名令牌时

    我已按照教程使用 C 中的 OAuth 保护 Web API 我正在做一些测试 到目前为止我已经能够成功地从 token 我正在使用名为 Advanced REST Client 的 Chrome 扩展来测试它 access token t
  • 是否可以向 networkx 中的图形对象添加无向和有向边?

    我正在致力于实现一种算法来确定数据集的图形结构 数据集的变量之间可以有无向或有向边 我可以用 Python 创建自己的图形对象 但我很好奇 Networkx 是否具有此功能 据我所知 Networkx 只有一个 Graph 对象 仅无向边
  • Windows 身份验证和 Angular 7 应用程序

    我开发了内联网应用 后端 ASP NET WEB API 2 所有控制器都有授权属性 前端 Angular 7 产品构建后 我将生成的脚本移至后端项目
  • asyncio as_yielded 来自异步生成器

    我希望能够从许多异步协程中产生收益 异步的as completed有点接近我正在寻找的东西 即我希望任何协程能够随时返回调用者然后继续 但这似乎只允许常规协程具有单个返回 这是我到目前为止所拥有的 import asyncio async
  • 没有数学模块的Python 3中的ceil和floor等效吗?

    我需要在不使用的情况下将天花板和地板 3 2 结果 1 5 import math math floor 3 2 gt 3 2 math ceil 3 2 gt 好的 问题是这样的 将所有数字相加 15 45 15 45 15 有 N 个项
  • 读取虚拟端口时 ser.inWaiting() 始终返回 0

    我很难获得pyserial和一个玩得很好虚拟端口 我知道这是其他一些人写过的领域 但我在这些答案中找不到任何可以解决我的问题的内容 如果我只是太笨了 请原谅我 解决方案在其他地方已经存在 这就是我想要实现的目标 我想设置一个虚拟端口 我可以