当前位置: 首页 > 面试题库 >

适用于Linux的虚拟串行端口

凌志学
2023-03-14
问题内容

我需要在Linux上测试一个串行端口应用程序,但是,我的测试计算机只有一个串行端口。

有没有一种方法可以通过在Shell或脚本中模拟设备来向Linux添加虚拟串行端口并测试我的应用程序?

注意:我无法重新映射端口,它在ttys2上进行了硬编码,我需要在编写应用程序时对其进行测试。


问题答案:

您可以为此使用pty(“ pseudo-teletype”,其中串行端口是“ real
teletype”)。从一端打开/dev/ptyp5,然后将程序附加到/dev/ttyp5ttyp5就像串口一样,但是会通过/ dev /
ptyp5发送/接收它所做的一切。

如果您确实需要它与名为的文件进行通讯/dev/ttys2,则只需将旧文件移开/dev/ttys2,并从ptyp5到符号链接ttys2

当然您可以使用以外的其他数字ptyp5。也许选择一个数字较大的名称以避免重复,因为您的所有登录终端也将使用pty。

维基百科提供有关pty的更多信息:http :
//en.wikipedia.org/wiki/Pseudo_terminal



 类似资料:
  • 我为fips证书生成实现了Bouncy Castle,这在物理linux环境下运行良好,但在linux虚拟机上,代码被困在密钥对生成上。以下是我编写的代码: 我找到了一个类似的帖子,但它对我不起作用。Bouncy Castle不适用于linux机器 初始电流熵值为1700(按照给定的步骤,应为3000-4000)。我尝试了给定的步骤,熵值增加到2600(按照给定的步骤,它应该在4000以上)。 我

  • 问题内容: 我正在使用C开发嵌入式解决方案,并且正在使用两个USB传感器。如果我单独连接每个传感器,它们将使用以下名称: 设备1 (我不知道为什么要使用6个名称…) / dev / ttyACM0 / dev / ttyACM1 / dev / ttyACM2 / dev / ttyACM3 / dev / ttyACM4 / dev / ttyACM5 / dev / ttyACM6 设备2 /

  • “虚拟组”旨在提供一个按类别逻辑将对象分组的平台,以便使所有对象得到有效保存。它可以应用于连接、表、集合、视图、函数、索引、触发器、MapReduce、GridFS、备份、自动运行和模型。 【提示】vgroup.json 文件保存于配置文件位置。 如果你想隐藏组结构,选择“查看”->“导航窗格”->“隐藏连接组”和选择“查看”->“隐藏对象组”。 创建一个新的组 右击主窗口的导航窗格或对象选项卡并

  • “虚拟组”旨在提供一个按类别逻辑将对象分组的平台,以便使所有对象得到有效保存。它可以应用于连接、表、集合、视图、函数、索引、触发器、MapReduce、GridFS、备份、自动运行、模型和图表。 【提示】vgroup.json 文件保存于默认的路径,例如:~/Library/Application Support/PremiumSoft CyberTech/Navicat CC/Navicat P

  • “虚拟组”旨在提供一个按类别逻辑将对象分组的平台,以便使所有对象得到有效保存。它可以应用于连接、表、集合、视图、函数、索引、触发器、MapReduce、GridFS、备份、自动运行、模型和图表。 【提示】vgroup.json 文件保存于默认的路径,例如:/home/your_username/.config/navicat/Premium/Profiles。 如果你想隐藏组结构,选择“查看”->

  • 问题内容: 我有一个USB设备,我正在尝试通过ftdi_sio内核模块提供的虚拟串行端口进行通信。但是,在将端口的波特率设置为14400时遇到了一些麻烦: 没有为14400指定常量,因此我不能使用和。 在ftdi_sio内核模块的源代码中,波特率设置为24000000,似乎没有办法更改它。这意味着我无法将自定义除数与ioctl 一起使用,从而无法获得14400的波特率。 模块源有一条注释,听起来好