zoukankan      html  css  js  c++  java
  • Smobiler低功耗蓝牙连接的过程和参数的含义

    参数的含义

    • macAddress  顾名思义,每个蓝牙有它的设备地址.蓝牙外设的Mac地址,简而言之就是这个物理地址,每个设备都是唯一的,可以理解为省份证号。
    • uuidService  BluetoothGattService,蓝牙设备的服务对象.
    • uuidTransmitCharUuid 和 uuidReceiveCharUuid  BluetoothGattCharacteristic,蓝牙设备的特性,一个BLE设备可能有多个服务.同样每个服务可以有多个BluetoothGattCharacteristic特性。我们一般只会与某个特定BluetoothGattService中的某个特性BluetoothGattCharacteristic进行数据读写。


    连接和通讯的过程

    1


    • 搜索和连接蓝牙
    • 通过开启设备蓝牙搜索附近蓝牙设备的名称和设备地址
    • 弹出搜索到蓝牙设备,供用户选择并匹配

    23


    • 通过连接回调,获取蓝牙设备的服务对象,判断设置的uuidService是否在此蓝牙设备中,如果不匹配,则断开连接

    4

    • 如果匹配成功,则获取发送和接收信息的特性对象,并开启接受服务
      (备注:在确认接受特性后,需要设置特性服务的Descriptors可接收,否则设备获取不到蓝牙发送的信息)
    • 到此,蓝牙设备已经连接上了
    • 蓝牙交互
    • 通过对uuidTransmitCharUuid特性服务写入内容,服务端传递信息给客户端后,客户端通过此接口可发送信息给蓝牙设备
    • 在蓝牙接口BluetoothGattCallback中有onCharacteristicChanged方法,此方法在连接上蓝牙后,会实时接收蓝牙设备发送的信息.通过此接口的回调内容,可以发内容接收并传给服务端.
    • 服务端也可以手动连接和断开指定的蓝牙设备,Smobiler客户端已适配方法.
  • 相关阅读:
    文件操作:根据现有类生成所需要的类
    Microsoft JScript 运行时错误: “”未定义
    未完成
    WPF模拟雷达界面效果图
    WebClient模拟网页提交表单
    201319
    Delphi中的InStrRev函数(倒找文本)
    利用IDhttp实现图片下载
    白话解释哈希表
    整理的Delphi常用字符串函数
  • 原文地址:https://www.cnblogs.com/smobiler/p/11429930.html
Copyright © 2011-2022 走看看