Main Content

bluetooth

连接到 Bluetooth 经典设备

自 R2020b 起

说明

bluetooth 对象表示使用 Bluetooth® 串行端口配置文件 (SPP) 从您的计算机到 Bluetooth 经典设备的连接。通过 bluetoothlist 输出中的 "Ready to connect" 状态确定附近要连接到的设备。在从 MATLAB® 连接到设备之前,您必须先将设备与您的计算机配对。

创建对象

描述

device = bluetooth 创建与最后一个成功连接的 Bluetooth 经典设备的连接。

device = bluetooth(name) 使用其名称创建与 Bluetooth 经典设备的连接。通道是默认的 SPP 通道 1。输入 name 设置 Name 属性。

示例

device = bluetooth(name,channel) 创建到 Bluetooth 经典设备的指定 SPP 通道 channel 的连接。输入 channel 设置 Channel 属性。

device = bluetooth(address) 使用其地址创建到 Bluetooth 经典设备的连接。输入 address 设置 Address 属性。

device = bluetooth(address,channel) 创建到 Bluetooth 经典设备的指定 SPP 通道 channel 的连接。

device = bluetooth(address,channel,Name,Value) 使用一个或多个名称-值对组参数创建连接并设置其他属性。使用名称-值对组参数设置 ByteOrderTimeout 属性。将每个属性名称用引号括起来,后跟所需的属性值。

示例: device = bluetooth("23E16522A7C0",2,"ByteOrder","little-endian","Timeout",10) 连接到 Bluetooth 设备,该设备采用 little-endian 字节顺序,超时期限为 10 秒。

属性

全部展开

对象的创建属性

Bluetooth 设备名称,指定为字符向量或字符串标量。使用 bluetoothlist 返回的信息确定您要连接的设备的名称。此属性只能在创建对象时设置。

示例: device = bluetooth("CO2 Sensor") 连接到名为 CO2 Sensor 的 Bluetooth 设备。

数据类型: char | string

Bluetooth 设备地址,指定为字符向量或字符串标量。使用 bluetoothlist 返回的信息确定您要连接的设备的地址。此属性只能在创建对象时设置。

示例: device = bluetooth("23E16522A7C0")device = bluetooth("23:E1:65:22:A7:C0")device = bluetooth("23-E1-65-22-A7-C0") 都连接到地址为 23E16522A7C0 的 Bluetooth 设备。

数据类型: char | string

Bluetooth 设备通道,指定为正数。使用 bluetoothlist 返回的信息确定您要连接的设备的通道。此属性只能在创建对象时设置。

示例: device = bluetooth("CO2 Sensor",2) 连接到 CO2 Sensor 的通道 2。

数据类型: double

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

示例: device = bluetooth("23E16522A7C0",2,"ByteOrder","little-endian")device.ByteOrder = "little-endian" 将字节顺序设置为 little-endian。

数据类型: char | string

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

示例: device.Timeout = 60 将超时期限设置为 60 秒。

数据类型: double

读取和写入属性

此 属性 为只读。

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

示例: device.NumBytesAvailable 返回可供读取的字节数。

数据类型: double

此 属性 为只读。

写入设备的总字节数,以数值形式返回。

示例: device.NumBytesWritten 返回写入的字节数。

数据类型: double

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

示例: configureTerminator(device,"CR") 将读取终止符和写入终止符都设置为 CR。

示例: configureTerminator(device,"CR",10) 将读取终止符设置为 CR,将写入终止符设置为 10。

数据类型: double | char | string | cell

回调属性

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

示例: configureCallback(device,"byte",50,@callbackFcn)callbackFcn 回调设置为每当有 50 个字节的新数据可供读取时触发。

示例: configureCallback(device,"terminator",@callbackFcn)callbackFcn 回调设置为当终止符可供读取时触发。

示例: configureCallback(device,"off") 关闭回调。

数据类型: char | string

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

示例: configureCallback(device,"byte",50,@callbackFcn)callbackFcn 回调设置为每当有 50 个字节的新数据可供读取时触发。

数据类型: double

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

示例: configureCallback(device,"byte",50,@callbackFcn)callbackFcn 回调设置为每当有 50 个字节的新数据可供读取时触发。

数据类型: function_handle

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

示例: device.ErrorOccurredFcn = @myErrorFcn

数据类型: function_handle

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

示例: device.UserData

对象函数

readBluetooth 设备读取数据
readlineBluetooth 设备读取 ASCII 字符串数据行
write将数据写入 Bluetooth 设备
writeline将 ASCII 数据行写入 Bluetooth 设备
configureTerminator为与 Bluetooth 设备的 ASCII 字符串通信设置终止符
configureCallback为与 Bluetooth 设备的通信设置回调函数和触发条件
flush清空 Bluetooth 设备缓冲区

示例

全部折叠

搜索并建立与蓝牙经典设备的连接。

扫描附近的设备。

bluetoothlist
list=5×4 table
        Name            Address        Channel          Status      
    _____________    ______________    _______    __________________

    "Pixel 3"        "3C286DD533CA"    8          "Ready to connect"         
    "HC-06"          "98D331FB3B77"    1          "Requires pairing"
    "mjin-maci"      "A886DDA44062"    3          "Requires pairing"
    "DMTDevice"      "B0B448F47A4C"    Unknown    "Unknown"         

在通道 8 上建立与 Pixel 3 设备的连接。

device = bluetooth("Pixel 3",8)
device = 
  bluetooth with properties:

                 Name: "Pixel 3"
              Address: "3C286DD533CA"
              Channel: 8
    NumBytesAvailable: 0
      NumBytesWritten: 0

  Show all properties

版本历史记录

在 R2020b 中推出

另请参阅