Main Content

本页翻译不是最新的。点击此处可查看最新英文版本。

serialport

连接到串行端口

自 R2019b 起

说明

serialport 对象表示与串行端口通信的串行客户端。在创建对象后,请使用圆点表示法设置其属性。

创建对象

描述

示例

s = serialport(port,baudrate) 连接到 port 指定的串行端口,波特率为 baudrate

s = serialport(port,baudrate,Name,Value) 连接到串行端口,并使用可选的名称-值对组参数设置其他属性。

s = serialport(不带参数)使用上次清除的 serialport 对象实例的属性设置连接到串行端口。保留的属性包括 PortBaudRateByteOrderFlowControlStopBitsDataBitsParityTimeoutTerminator。请参阅属性

输入参数

全部展开

串行端口名称,指定为字符向量或字符串标量。使用 serialportlist 获取已连接端口的列表。

示例: "COM2"

串行通信的波特率,指定为双精度。

示例: 9600

名称-值参数

将可选的参数对组指定为 Name1=Value1,...,NameN=ValueN,其中 Name 是参数名称,Value 是对应的值。名称-值参数必须出现在其他参数之后,但参数对组的顺序无关紧要。

在 R2021a 之前,使用逗号分隔每个名称和值,并用引号将 Name 引起来。

您可以使用名称-值对组来设置 DataBitsParityStopBitsFlowControlByteOrderTimeout 对象属性。请参阅属性了解其数据类型和允许的值。

示例: "Timeout",30

属性

全部展开

对象的创建属性

此 属性 为只读。

用于连接的串行端口,以字符串形式返回。

示例: "COM1"

数据类型: string

通信速度,以位/秒为单位,以双精度正整数形式返回。

示例: 14400

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

用于检查数据是否丢失或写入的奇偶校验,以 "none""even""odd" 形式返回。

示例: "odd"

数据类型: char | string

表示一个数据字符的位数,返回为 8765

示例: 8

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

指示字符或整个传输结束的位的模式,返回为 11.52

示例: 1

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

管理数据传输速率的模式,返回为 "none""hardware""software"

示例: "software"

数据类型: char | string

字节排列成较大数值的顺序,返回为 "little-endian""big-endian"。使用名称-值对组参数在创建对象时设置此属性。您也可以在创建对象后使用圆点表示法更改它。

示例: "little-endian"

数据类型: char | string

允许的完成读写操作的时间(以秒为单位),以数值形式返回。使用名称-值对组参数在创建对象时设置此属性。您也可以在创建对象后使用圆点表示法更改它。

示例: 60

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

读取和写入属性

此 属性 为只读。

可供读取的字节数,以数值形式返回。

示例: 1024

数据类型: double

此 属性 为只读。

写入串行端口的字节数,以数值形式返回。

示例: 512

数据类型: double

用于读取和写入以 ASCII 字符结尾的数据的终止符字符,返回为 "LF""CR""CR/LF",或从 0 到 255(包括两者)的数字。如果读取终止符和写入终止符不同,则 Terminator 以这些值的 1×2 元胞数组形式返回。使用 configureTerminator 函数设置此属性。

示例: "CR"

数据类型: char | string

回调属性

字节可用回调触发模式,返回为 "off""byte""terminator"。此设置确定回调是关闭、由 BytesAvailableFcnCount 指定的字节数触发还是由 Terminator 指定的终止符触发。使用 configureCallback 函数设置此属性。

示例: "off"

数据类型: char | string

BytesAvailableFcn 指定的触发回调的数据字节数,以双精度形式返回。仅当 BytesAvailableFcnMode 属性为 "byte" 时,才使用此值。使用 configureCallback 函数设置这些属性。

示例: 128

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

由字节可用事件触发的回调函数,以函数句柄形式返回。接收到一定数量的字节或终止符会生成字节可用事件。在分配函数句柄之前,此属性为空。使用 configureCallback 函数设置此属性。

示例: @myFcn

数据类型: function_handle

由错误事件触发的回调函数,以函数句柄形式返回。发生异步读取或写入错误时,会生成错误事件。在分配函数句柄之前,此属性为空。

示例: @myErrFcn

数据类型: function_handle

用户数据的通用属性,以任何 MATLAB® 数据类型形式返回。例如,当回调函数触发事件时,可以使用此属性存储数据。

示例: datetime()

对象函数

read从串行端口读取数据
readline从串行端口读取 ASCII 字符串数据行
write将数据写入串行端口
writeline将 ASCII 数据行写入串行端口
serialbreakSend break to device connected to serial port
flush清空串行端口设备缓冲区
configureTerminator为与串行端口的 ASCII 字符串通信设置终止符
configureCallback为与串行端口设备的通信设置回调函数和触发条件
getpinstatus获取串行引脚状态
setRTS设置串行 RTS 引脚
setDTR设置串行 DTR 引脚

示例

全部折叠

COM3 串行端口读取 uint32 数据的 16 个值。

s = serialport("COM3",9600,"Timeout",5);
data = read(s,16,"uint32");

版本历史记录

在 R2019b 中推出

另请参阅

函数