主要内容

解决串行端口连接错误

问题

如果您无法使用 serialport 接口连接到串行端口设备,请按照以下故障排除步骤操作。

可能的解决方案

检查设备状态

检查指定端口是否未被占用。

  • 确保工作区中不存在使用相同端口号的 serialport 对象。对每个端口只能创建一个 serialport 对象。

  • 检查您的设备是否未在 MATLAB® 之外使用。断开设备与任何其他设备、应用程序或程序的连接。

  • 使用第三方串行通信软件(如 PuTTY)检查是否可以从其他软件访问指定端口。

  • 确保您的设备已打开电源并连接到计算机。

验证端口名称

检查指定的端口名称是否正确,并且设备连接到该端口。

  • 使用 serialportlist 函数返回在您计算机上可访问的所有串行端口列表。使用 serialportlist("available") 返回仅包含可用串行端口的列表。确保您正在使用列出的端口之一创建 serialport 对象。

  • 从计算机设置中检查连接到串行端口的设备是否可用。有关如何在您的平台上查看此信息的详细信息,请参阅Find Serial Port Information for Your Platform

指定支持的参数

检查您的设备是否支持指定的参数。

  • 确保您的设备支持指定为输入参量的波特率。请参阅设备文档以获取此信息。波特率必须与设备配置匹配。

  • 如果您使用名称-值参量指定了任何其他参数,请确保您的设备也支持这些参数。您可以使用名称-值参量指定 DataBitsParityStopBitsFlowControlByteOrderTimeout 属性。

虚拟串行端口连接的其他故障排除

如果您的设备在操作系统中将自身显示为串行端口,您可以将它们用作虚拟 USB 串行端口。此类设备的一个示例是 USB 串行端口加密狗。

  • 如果您通过虚拟串行端口连接到设备,请检查设备驱动是否已正确安装。

  • 如果您使用的是 Linux®,则可能需要启用读取和写入虚拟串行端口的权限。某些 Linux 发行版要求用户帐户是 dialout 组的成员才能有读取和写入串行端口的权限。

另请参阅

主题