zoukankan      html  css  js  c++  java
  • BT stack浅入了解

    蓝牙设备使用无线电波连接手机和电脑。蓝牙产品包含一块小小的蓝牙模块以及支持连接的蓝牙无线电和软件。当两台蓝牙设备想要相互交流时,它们需要进行配对。蓝牙设备之间的通信在短程(被称为微微网,指设备使用蓝牙技术连接而成的网络)的临时网络中进行。这种网络可容纳两至八台设备进行连接。当网络环境创建成功,一台设备作为主设备,而所有其它设备作为从设备。微微网在蓝牙设备加入和离开无线电短程传感时动态、自动建立。
     
     
    蓝牙协议规范的目标是允许遵循规范的应用能够进行相互间操作.蓝牙SIG规范的完整蓝牙协议栈如图:

    蓝牙的核心协议由基带,链路管理,逻辑链路控制与适应协议和服务搜索协议等4部分组成.
    (1)基带协议基带协议确保各个蓝牙设备之间的射频连接,以形成微微网络。
    (2)链路管理协议
    链路管理协议(LMP)负责蓝牙各设备间连接的建立和设置。LMP通过连接的发起,交换和核实进行身份验证和加密,通过协商确定基带数据分组大小;还控制无线设备的节能模式和工作周期,以及微微网络内设备单元的连接状态。
    (3)逻辑链路控制和适配协议
    逻辑链路控制和适配协议(L2CAP)是基带的上层协议,可以认为L2CAP与LMP并行工作。L2CAP与LMP的区别在于当业务数据不经过LMP时,L2CAP为上层提供服务。
    (4)服务搜索协议
    使用服务搜索协议(SDP),可以查询到设,备信息和服务类型,从而在蓝牙设备间建立相应的连接。
     
     

     

    特征(Characteristics)— 一个characteristics包含一个单独的value值和0 –n个用来描述characteristic 值(value)的descriptors。一个characteristics可以被认为是一种类型的,类似于一个类。

    描述符(descriptor)—descriptor是被定义的attributes,用来描述一个characteristic的值。例如,一个descriptor可以指定一个人类可读的描述中,在可接受的范围里characteristic值,或者是测量单位,用来明确characteristic的值。

    服务(service)—service是characteristic的集合。例如,你可以有一个所谓的“Heart RateMonitor”service,其中包括characteristic,如“heart rate measurement ”。你可以在 bluetooth.org找到关于一系列基于GATT的profile和service。

     蓝牙设备可以包括多个Profile,一个Profile中有多个Service,一个Service中有多个Characteristic,一个Characteristic中包括一个value和多个Descriptor。

     每个attribute属性被UUID(通用唯一标识符)唯一标识 ,UUID是标准128-bit格式的ID用来唯一标识信息。attributes 被 ATT 格式化characteristics和services形式进行传送。

  • 相关阅读:
    Android开发 使用 adb logcat 显示 Android 日志
    【嵌入式开发】向开发板中烧写Linux系统-型号S3C6410
    C语言 结构体相关 函数 指针 数组
    C语言 命令行参数 函数指针 gdb调试
    C语言 指针数组 多维数组
    Ubuntu 基础操作 基础命令 热键 man手册使用 关机 重启等命令使用
    C语言 内存分配 地址 指针 数组 参数 实例解析
    CRT 环境变量注意事项
    hadoop 输出文件 key val 分隔符
    com.mysql.jdbc.exceptions.MySQLNonTransientConnectionException: Too many connections
  • 原文地址:https://www.cnblogs.com/zeng-iauto/p/11977127.html
Copyright © 2011-2022 走看看