好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

低功耗蓝牙(BLE)学习记录.docx

24页
  • 卖家[上传人]:枫**
  • 文档编号:392095051
  • 上传时间:2023-09-06
  • 文档格式:DOCX
  • 文档大小:1,015.99KB
  • / 24 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • RW_BLE_CORE记录传播信道 BLE的传播信道在2.4G频段有40个channel涉及2种物理信道:广播信道和数据信道数据帧中设立Access Address用于标记该信道,避免信道碰撞Channel MAP如下:数据帧通信蓝牙帧构造如下:Preamble:根据Access Address而定,如果AA的LSB(最右bit)bit为1,则前导便是10101010b,反之则为01010101bAccess Address:广播帧的AA为:0x8E89BED6其她状况可以是一种32bit的随机数AA需满足如下条件·不超过持续6个1或者0·与广播帧的AA不同bit超过1个·不能4byte相似·0 1跳变不能超过24次·MSB 6bit 0 1跳变超过2次如下逐个简介PDU一、Advertising Channel PDU蓝牙广播帧帧构造其中Header的帧格式如下:其中,a、广播帧类型(PDU Type)分为如下几类:• ADV_IND: connectable undirected advertising event• ADV_DIRECT_IND: connectable directed advertising event• ADV_NONCONN_IND: non-connectable undirected advertising event• ADV_SCAN_IND: scannable undirected advertising eventb、Length:3~37bytes 广播帧分为诸多种,其区别就是payload所代表的意义不同,如下分别对几种广播帧作分别阐释:1、ADV_INDADV_IND的payload格式如下:在广播帧帧头中的TxAdd位是广播地址的标示位:TxAdd==0:AdvA地址为公用地址;TxAdd==1:AdvA地址为随机地址。

      AdvData则是广播HOST的广播数据2、ADV_DIRECT_IND这种帧用于直接接入的广播事件ADV_DIRECT_IND的payload帧格式如下:其中AdvA的意义与ADV_IND相似InitA为广播发起者地址:RxAdd==0:发起者地址是公用地址;RxAdd==1:发起者地址是随机地址注意:该帧不涉及任何HOST数据3、ADV_NONCONN_IND 用于不可接入不直达(non-connectable undirected)的网络其payload意义与ADV_IND类似4、ADV_SCAN_IND 用于可扫描不直达网络Payload意义与ADV_IND类似二、Scaning PDUs1) SCAN_REQ:这是扫描祈求帧,处在广播状态的接受设备接受这种帧此处,ScanA为扫描者的地址,其地址由TxAdd控制是公共地址还是随机地址AdvA为该扫描帧的目的地址由RxAdd控制意义2) SCAN_RSP 扫描确认处在广播状态的设备在收到扫描祈求后,需要答复扫描确认帧AdvA地址意义由TxAdd拟定ScanRspData为广播端的附带数据三、Initiating PDU该部分为连接发起合同。

      发起的帧格式仅一种:CONNECT_REQ由发起方发送该帧,广播方接受该帧1) CONNECT_REQCONNECT_REQ帧格式如下:TxAdd确认InitA地址为公共地址还是随机地址;RxAdd确认AdvA地址为公共地址还是随机地址LLData的数据格式如下:AA:AccessAddressCRCInit:CRC校验的初始值,它应当是LinkLayer产生的一种随机值WinSize:发送窗长度参数transmitWindowSize=WinSize*1.25msWinOffset:发送窗起始偏移量TransmitWindowOffset=WinOffset*1.25ms上述两个window意义如下:Interval:拟定connect interval的时间长度connInterval = Interval * 1.25 msLatency:connSlaveLatency =LatencyTimeOut:connSupervisionTimeout= Timeout * 10 ms(100ms~32s之间),当两帧数据之间的时间间隔超过6*connInterval或者connSupervisionTimeout时,则觉得连接丢失。

      ChM:即ChannelMAP,一共0~36个信道LSB代表channel0,哪一种是1,则哪一种信道有效Channel 37~39保存Hop:5~16之间的随机值,用于设立HopIncrement用于计算不使用的信道编号unmappedChannel = (lastUnmappedChannel + hopIncrement) mod 37如果计算成果是属于保存信道,则通过下式计算:remappingIndex = unmappedChannel mod numUsedChannelsSCA:设立Master睡眠时钟精确度的最大值相应表如下:四、Data Channel PDU 数据信道的帧格式如下:其中涉及16bit Header,长度可变的Payload,和一种信号完整性确认字段(MIC)1、有关Header和MIC Header的数据格式如下:每个字段的意义如下:MIC字段使用的时候,有两个条件:1、不能使用于非加密的数据帧;2、数据帧payload长度不能为0字长为4byte2、有关PayloadPayload分为两类,LL Data PDU和LL Control PDU(LLID==11b)。

      LL Data PDU里面又分为两类,一类是完整数据帧或帧碎片起始帧(LLID==10b),另一类是帧碎片(LLID==01b)其中,帧碎片帧的帧长度可觉得0,而完整(起始)帧的长度不可觉得0下面具体简介LL Control PDU:LL Control PDU的帧格式如下: 其帧长度不能为0,其中涉及两个字段:Opcode和CtrData Opcode用于拟定控制帧类型: 如果收到的LLC PDU格式不支持或者是无用帧,则答复LL_UNKNOWN_RSP PDU,此时的Type字段需设立成收到的无用的opcodeLL_CONNECTION_UPDATA_REQ: 该帧的帧格式如下: 这些信息的意义在下一章的四中有详述LL_CHANNEL_MAP_REQ:LL_TERMINATE_IND: 这个ErrorCode在蓝牙合同中有具体制定意义[Vol2 Part D]LL_ENC_REQ:和加密有关的祈求帧LL_ENC_RSP:和加密有关的答复帧LL_START_ENC_REQ:没有CtrData字段LL_START_ENC_RSP:没有CtrData字段LL_UNKNOWN_RSP:LL_FEATURE_REQ:LL_FEATURE_RSP:LL_PAUSE_ENC_REQ:没有CtrData字段LL_PAUSE_ENC_RSP:没有CtrData字段LL_VERSION_IND:LL_REJECT_IND:有关蓝牙通信合同的理解一、时钟规定 Active状态下不不小于±50ppm。

      Sleep Mode下不不小于±500ppm二、设备过滤 除了仅支持不可连接的广播系统(non-connectable advertising),其她模式均需支持设备过滤广播、扫描、连接发起均具有各自独立的过滤机制如果芯片不支持这几种模式的话,那就可以不支持设备过滤设备过滤是为了尽量减少不必要的数据通信 设备过滤时需要具有一种白名单,白名单内容涉及但是滤设备的地址和地址类型(公共或随机)白名单内容由HOST设立如下对多种过滤模式作一种简介:1、广播过滤支持过滤方式如下,一次仅支持一种方式:·广播设备仅解决来自白名单的设备的扫描、连接祈求·广播设备解决一切设备的扫描、连接祈求复位值)·广播设备解决所有设备的扫描祈求,仅解决白名单的连接祈求·广播设备解决所有设备的连接祈求,仅解决白名单的扫描祈求2、扫描过滤支持过滤方式如下:·扫描设备仅解决来自白名单设备的广播帧·扫描设备解决一切设备的广播帧 如果广播方已通过滤该扫描设备的话,通信不能成功3、发起过滤 支持过滤方式如下:·被发起设备解决来自白名单内所有设备的连接发起祈求·被发起设备忽视白名单,仅解决host给出设备的连接发起祈求三、非连接状态简述1、standbyStandby是复位后的芯片初始状态,由它可以进入广播、扫描和连接状态。

      2、advertising进入广播状态后,便开始发送广播帧在发送完一帧广播帧后来,advertising event将被关闭,来适应其她功能广播事件有如下几种类型:第一帧广播帧应当在channel index中的最低的广播信道发送广播事件与否有答复帧由广播帧类型决定,具体如下表: 当收到错误的返回帧时,广播端会在下一种广播信道发送广播帧,或直接停止广播事件 广播事件间隔必须是625us的倍数,范畴在20ms~10.24s,其设立方式如下:T_advEvent = advInterval + advDelayscannable undirected和non-connectable undirected事件,advInterval长度必须不小于100ms;connectable undirected事件,advInterval长度必须不小于等于20ms advDelay是0~10ms的伪随机数持续广播帧发送示意图如下:a)Connectable Undirected Event Type 如图4.5接受到CONNECT_REQ之后,广播以便退出广播状态,进入Slave状态b)Connectable Directed Event Typec)Scannable Undirected Event Typed)Non-connectable Undirected Event Type1、 scanning检测状态是用来监听广播帧的,其状态由HOST控制,分为积极扫描和被动扫描。

      扫描状态下有两个参数scanWindow、scanInterval用于设立一次扫描的时间扫描时间不能长与10.24s,scanWindow SCAN_REQADV_DIRECT_IND PDU/ADV_NONCONN_IND不答复SCAN_REQ 扫描需进行退避操作具体看文档吧,就不贴进来了2、 initiatinginitiating没有channel index的限制当收到一种在过滤白名单内的ADV_。

      点击阅读更多内容
      相关文档
      25秋国家开放大学《0-3岁婴幼儿的保育与教育》形考任务1-4参考答案.docx 25秋国家开放大学《0-3岁婴幼儿卫生与保育》形考任务1-3+期末大作业参考答案.docx 25秋国家开放大学《0-3岁婴幼儿教育学》期末大作业参考答案.docx 25秋国家开放大学《Android核心开发技术》形考任务1-7参考答案.docx 国开2025年秋季《形势与政策》大作业答案.docx 国开2025年秋季《形势与政策》专题测验1-5答案.docx 2025年辽宁普通高中学业水平选择性考试语文试卷(原卷+答案).doc 2025年广西普通高中学业水平选择性考试英语试卷(原卷+答案).doc 2025年6月浙江普通高中学业水平选择性考试地理试卷(原卷+答案).doc 2025年江西普通高中学业水平选择性考试英语试卷(原卷+答案).doc 2025年广东普通高中学业水平选择性考试数学试卷(原卷+答案).doc 2025年内蒙古普通高中学业水平选择性考试语文试卷(原卷+答案).doc 2025年贵州普通高中学业水平选择性考试英语试卷(原卷+答案).doc 2025年安徽普通高中学业水平选择性考试生物试卷(原卷+答案).doc 2025年辽宁普通高中学业水平选择性考试数学试卷(原卷+答案).doc 2025年广东普通高中学业水平选择性考试语文试卷(原卷+答案).doc 2025年1月云南省高考适应性测试物理试卷(原卷+答案).doc 2025年江苏普通高中学业水平选择性考试语文试卷(原卷+答案).doc 2025年甘肃普通高中学业水平选择性考试语文试卷(原卷+答案).doc 2025年陕西普通高中学业水平选择性考试生物试卷1(原卷+答案).doc
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.