class device.Bluetooth
device. Bluetooth类是device模块下面的一个硬件类,用于对蓝牙模块的配置和控制,并提供对蓝牙设备的操作方法。
常量
类型 |
常量名称 |
含义 |
功耗等级 |
Bluetooth.LPNORMAL |
设置正常工作模式,全速运行 |
|
Bluetooth.LPMEDIUM |
设置中等低功耗模式,协议栈正常运行,引脚唤醒/收到BLE数据唤醒 |
|
Bluetooth.LPLOWEST |
设置为最低功耗,大部分外设关闭,协议栈停止,只能被引脚唤醒 |
断开连接 |
Bluetooth.DISCONNECT |
断开连接 |
设置项 |
Bluetooth.AUTOCONNECT_INTERVAL |
设置自动连接间隔时间,该参数掉电保存,下次建立连接时生效。 |
|
Bluetooth.AUTOCONNECT_PARAM_UPDATE |
设置自动更新连接参数,修改的参数掉电保存,下一次建立连接时生效。 |
|
Bluetooth.BROADCAST_TYPE |
设置广播包类型,修改的参数掉电保存,并且在下一次的广播中生效。 |
|
Bluetooth.BROADCAST_ INTERVAL |
设置广播时间间隔,修改的参数掉电保存,并且在下一次的广播中生效。 |
|
Bluetooth.CONNECT_INTERVAL_T |
设置当前连接间隔时间,该参数掉电不保存。 |
|
Bluetooth.RESTORE_SETTING |
恢复出厂设置 |
|
Bluetooth.SE_CONNECT |
设置安全连接 |
|
Bluetooth.SENDPOWER |
设置发射功率,设置掉电保存,立即生效。 |
设置值 |
Bluetooth.AUTOCONNECT_PATAM_DISABLE |
禁止自动更新连接参数。 |
|
Bluetooth.AUTOCONNECT_PATAM_ENABLE |
使能自动更新连接参数。 |
|
Bluetooth.BROADCAST_CONNECTABLE |
设置广播包类型为可发现可连接 |
|
Bluetooth.BROADCAST_ DISCONNECTABLE |
设置广播包类型为可发现不可连接 |
|
Bluetooth.SE_CONNECT.ON |
打开安全连接 |
|
Bluetooth.SE_CONNECT.OFF |
关闭安全连接 |
|
Bluetooth.SENDPOWER_N20DBM |
设置发射功率为-20dbm |
|
Bluetooth.SENDPOWER_N12DBM |
设置发射功率为-12dbm |
|
Bluetooth.SENDPOWER_N4DBM |
设置发射功率为-4dbm |
|
Bluetooth.SENDPOWER_N0DBM |
设置发射功率为0dbm |
|
Bluetooth.SENDPOWER_4DBM |
设置发射功率为4dbm |
构造函数
构造函数 |
class device.Bluetooth() |
功能 |
构造一个Bluetooth对象 |
参数说明 |
无 |
返回值 |
返回创建的Bluetooth对象 |
其他说明 |
构造时会对Bluetooth进行初始化,也可在init方法中进行初始化,该初始化应针对不同的硬件有不同的驱动进行对应设备的初始化动作。 |
实例方法
device.Bluetooth类包括如下实例方法
方法名 |
说明 |
Bluetooth.init() |
初始化Bluetooth对象 |
Bluetooth.deinit() |
关闭Bluetooth对象 |
Bluetooth.boardcaststart() |
开始广播 |
Bluetooth.broadcastdata() |
查询/设置广播包自定义数据 |
Bluetooth.connectstate() |
查询/断开设备连接状态 |
Bluetooth.send() |
发送数据 |
Bluetooth.recv() |
接收数据 |
Bluetooth.erase_information() |
擦除设备所有绑定信息 |
Bluetooth.lplevel() |
查询/设置低功耗等级 |
Bluetooth.lpwakeup() |
低功耗唤醒 |
Bluetooth.name() |
查询/设置本机蓝牙名称 |
Bluetooth.mastername() |
查询已连接的主机蓝牙名称 |
Bluetooth.matchcode() |
查询/设置配对码 |
Bluetooth.reset() |
重启蓝牙模块 |
Bluetooth.attribute() |
查询/设置蓝牙的相关属性 |
Bluetooth.modelname() |
获取模块厂家及型号 |
详细说明如下:
方法名称 |
Bluetooth.init() |
功能 |
初始化蓝牙模块对象 |
参数说明 |
无 |
返回值 |
固定返回None |
注:该初始化动作应包括总线初始化和蓝牙模块的通用的基本配置。
方法名称 |
Bluetooth.deinit() |
功能 |
关闭Bluetooth对象 |
参数说明 |
无参数 |
返回值 |
固定返回None |
注:关闭Bluetooth对象后,需重新init才能正常使用Bluetooth对象。
方法名称 |
Bluetooth.boardcaststart() |
功能 |
开始广播 |
参数说明 |
无参数 |
返回值 |
固定返回None |
方法名称 |
Bluetooth.broadcastdata([data]) |
功能 |
查询/设置广播包自定义数据 |
参数说明 |
[data]为可选参数,不传入时,方法返回当前模块的广播包数据,传入参数时,则根据[data]设置蓝牙模块的广播包数据。(该设置掉电保存,下一个广播生效) |
返回值 |
返回广播数据或None |
方法名称 |
Bluetooth.connectstate([state]) |
功能 |
查询/断开设备连接状态 |
参数说明 |
[state]为可选参数,若不传入,则返回当前蓝牙连接状态,若传入,则只可选择参数Bluetooth.DISCONNECT,即主动断开连接 |
返回值 |
若未传入[state]参数,已建立连接返回True,未建立连接返回False,若传入参数,返回None |
方法名称 |
Bluetooth.send(bytes, timeout) |
功能 |
发送数据 |
参数说明 |
data:欲发送的字节数据 timeout:发送超时时间,默认为0,即不阻塞,单位ms |
返回值 |
返回发送字节数 |
注:该方法为阻塞模式。
方法名称 |
Bluetooth.recv(bufsize,timeout=0) |
功能 |
接收数据 |
参数说明 |
bufsize:指定接收最大字节数 timeout:接收阻塞时间,默认为0,即不阻塞,单位为ms |
返回值 |
接收到的bytes数据对象 |
方法名称 |
Bluetooth.erase_information() |
功能 |
擦除设备所有绑定信息 |
参数说明 |
无 |
返回值 |
返回None |
方法名称 |
Bluetooth.lplevel([level]) |
功能 |
查询/设置低功耗等级 |
参数说明 |
[level]为可选参数,未传入参数时,为查询当前低功耗等级,传入参数时,对当前蓝牙功耗等级进行设置,可选Bluetooth常量中功耗等级部分相关常量,该设置立即生效,掉电不保存。 |
返回值 |
传入参数时返回None 未传入参数时,返回当前低功耗等级,其值与Bluetooth常量中功耗等级部分对应常量相等 |
方法名称 |
Bluetooth.lpwakeup() |
功能 |
低功耗唤醒 |
参数说明 |
无 |
返回值 |
返回None |
方法名称 |
Bluetooth.name([name]) |
功能 |
查询/设置本机蓝牙名称 |
参数说明 |
[name]为可选参数,未传入时,功能为获取本机蓝牙设备的名称,传入[name]时,会根据传入参数设置本机蓝牙设备名称 |
返回值 |
传入参数时,返回None 未传入参数时,返回本机名称 |
方法名称 |
Bluetooth.mastername() |
功能 |
查询已连接的主机蓝牙名称 |
参数说明 |
无 |
返回值 |
设备已连接时,返回主机蓝牙名称,设备未连接时,返回None |
方法名称 |
Bluetooth.matchcode([bytes]) |
功能 |
查询/设置配对码 |
参数说明 |
[bytes]为可选参数,当未传入时,返回当前6位配对码,当传入[bytes]时,根据传入参数设置配对码,配对码必须为6位,且为数字0~9的任意组合。参数掉电保存,立即生效。 |
返回值 |
返回None |
注:修改配对码只对连接安全连接关闭时生效,开启安全连接时,使用的为动态配对码,不可修改。
方法名称 |
Bluetooth.reset() |
功能 |
重启蓝牙模块 |
参数说明 |
无 |
返回值 |
固定返回None |
方法名称 |
Bluetooth. attribute(mode[,param]) |
功能 |
查询/设置蓝牙的相关属性 |
参数说明 |
mode:选择属性类别,可选参数见Bluetooth常量中属性类型部分相关常量; [,param]为可选参数,未传入时,返回获取到的对应属性值,传入时,根据参入内容及mode设置蓝牙的对应属性的参数 |
返回值 |
传入param时,返回None 未传入时,返回获取的属性值 |
方法名称 |
Bluetooth.modelname() |
功能 |
获取模块厂家及型号 |
参数说明 |
无 |
返回值 |
返回模块厂家名称及型号 |