91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

GAP層和GATT層,SM層完成應(yīng)用層數(shù)據(jù)交互和加密解密!

丫丫119 ? 來(lái)源:未知 ? 作者:肖冰 ? 2019-09-20 10:59 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

實(shí)驗(yàn)用到的工具:

藍(lán)牙主機(jī):TI BTool + CC2540 dongle

藍(lán)牙從機(jī):CC2541模塊

抓包工具:TI Sniffer + CC2540 dongle

手機(jī)工具:BLE調(diào)試工具箱 (無(wú)線(xiàn)技術(shù)聯(lián)盟微信公眾號(hào)關(guān)聯(lián)的藍(lán)牙測(cè)試工具)

01

連接請(qǐng)求

TI的Btool是個(gè)非常好用的PC主機(jī)小工具,其部分界面如下所示,在Discover/Connect界面,可以配置不同的連接參數(shù),選擇掃描以及根據(jù)掃描到的廣播設(shè)備有選擇性的進(jìn)行連接。多說(shuō)一句whitelist,什么是whitelist?這個(gè)和微信公眾號(hào)的白名單一樣,是得到主機(jī)授權(quán)的從機(jī)設(shè)備,當(dāng)選擇只掃描whitelist的設(shè)備時(shí)(前提是已經(jīng)在主機(jī)上添加了whitelist設(shè)備),主機(jī)只會(huì)掃描過(guò)濾在whitelist里面的設(shè)備。

從下圖截獲的控制數(shù)據(jù)包可以看到,主機(jī)端在廣播掃描之后發(fā)出一條CONNECT_REQ的指令,附帶LL data,開(kāi)啟了主從設(shè)備連接的過(guò)程的第一步。TI的工具做的比較人性化,可以從該條語(yǔ)句的注釋可以看到

Adv PDU Header Type的值為5,對(duì)應(yīng)Spec的值是CONNECT_REQ。

在指令后面標(biāo)注出發(fā)起端(主機(jī))和從機(jī)端的Mac地址,然后是LL data。

這一條指令嚴(yán)格來(lái)說(shuō)也是屬于廣播范疇,其數(shù)據(jù)格式說(shuō)明可以參考上一篇文章。

展開(kāi)CONNECT_REQ包,其數(shù)據(jù)包格式可分為前導(dǎo),接入地址,數(shù)據(jù)包,CRC效驗(yàn),詳細(xì)規(guī)范如下:

PDU數(shù)據(jù)包分可分為兩個(gè)部分,Header部分是指令(CONNECT_REQ),payload是詳細(xì)LL data,拉出LL Data來(lái)看,如下圖所示:

下面對(duì)LL Data格式詳細(xì)說(shuō)明:

AA:連接中的兩設(shè)備的接入地址,如下圖所示,

CRCInit:CRC 初始化

WinSize:主機(jī)發(fā)送第一包數(shù)據(jù)的時(shí)間窗口

Winoffset:主機(jī)發(fā)送第一包數(shù)據(jù)的偏移時(shí)間

WinSize和Winoffset是配和使用,主機(jī)在發(fā)起CONNECT_REQ開(kāi)始的Winoffset+1.25ms內(nèi)準(zhǔn)備和從機(jī)建立連接,這段時(shí)間被稱(chēng)為連接建立準(zhǔn)備時(shí)間,WinSize是主機(jī)第一包數(shù)據(jù)發(fā)送的時(shí)間窗口范圍。

Interval:藍(lán)牙連接間隔時(shí)間。

Latency:連接延遲,主多次請(qǐng)求才喚醒從機(jī)交互一次數(shù)據(jù)。

Timeout:超時(shí)斷開(kāi)連接。

ChM:跳頻表,主機(jī)根據(jù)信道情況給出一張?zhí)l表,約定和從機(jī)可用的信道(0-36信道),0表示該信道不可用,1表示該信道可用。

Hop:跳頻階躍,hop是一個(gè)5~16的值。

SCA:休眠時(shí)鐘校正范圍。

跳頻算法介紹:

跳頻算法用于數(shù)據(jù)連接時(shí)候,數(shù)據(jù)信道為37個(gè),跳頻公式如下: unmappedChannel = (lastUnmappedChannel + hopIncrement) mod 37

fn+1=(fn+hop) mod 37

hop是一個(gè)5~16的值,每次調(diào)頻之后中心頻率加hop值 mod 37。因?yàn)槎际钦麛?shù),這個(gè)表達(dá)式在軟件中非常容易實(shí)現(xiàn),軟件中通過(guò)求余運(yùn)算便能完成運(yùn)算,協(xié)議規(guī)定第一次連接事件中fn=0,fn+1=(0+hop) mod 37,也就是hop信道編號(hào)。

02

連接事件

連接請(qǐng)求發(fā)出之后,開(kāi)始進(jìn)入連接狀態(tài),空中數(shù)據(jù)包如下所示,由綠色部分轉(zhuǎn)變?yōu)辄S色部分。

進(jìn)入藍(lán)牙連接狀態(tài),連接狀態(tài)的數(shù)據(jù)包格式如下所示,PUD數(shù)據(jù)包包含兩個(gè)部分,頭字說(shuō)明和數(shù)據(jù)包,頭字說(shuō)明里面有幾種類(lèi)型,分別在LLID里面詳細(xì)規(guī)定,NESN和SN控制主從發(fā)送的數(shù)據(jù)包是否被正確接收。

LLID:數(shù)據(jù)包類(lèi)型格式

NESN:下一個(gè)數(shù)據(jù)包序列

SN:數(shù)據(jù)包序列

NESN和SN是配合使用,他們的作用是來(lái)標(biāo)識(shí)主從是否正確交互。如主從交互所示,主發(fā)心跳包或者數(shù)據(jù)時(shí),標(biāo)記NESN和SN給從機(jī),從機(jī)在接收到主機(jī)標(biāo)識(shí)的NESN和SN之后,回傳NESN和SN+1給主,主接收到和之前發(fā)送的相差1表示之前數(shù)據(jù)正確傳輸,如果主機(jī)接收到的回傳值是非(NESN和SN+1),表示數(shù)據(jù)可能在空中存在都是,此時(shí)需要重傳。

03

數(shù)據(jù)交互

從機(jī)發(fā)起了MTU更新:

可以發(fā)現(xiàn)該LL Data出現(xiàn)橙黃色部分,抓包工具對(duì)數(shù)據(jù)進(jìn)行的解析,橙黃部分表示從機(jī)要求更新MTU的大小,然后和主機(jī)相互約束一個(gè)MTU的值,后面數(shù)據(jù)包的格式及按照新約定的MTU大小來(lái)傳輸數(shù)據(jù)。

總結(jié)

用一張圖作為總結(jié),整個(gè)鏈路層的連接的流程圖如下所示:

所以要想連接一個(gè)藍(lán)牙設(shè)備,主設(shè)備只需要做幾個(gè)動(dòng)作,自身初始化,掃描周邊設(shè)備,對(duì)特點(diǎn)設(shè)備發(fā)出連接請(qǐng)求,開(kāi)始交換數(shù)據(jù)。

到此低功耗藍(lán)牙就相互連接上了,后面應(yīng)用層數(shù)據(jù)交互和加密解密就要交給GAP層和GATT層,SM層來(lái)完成,我們下次再講解。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • SMS
    SMS
    +關(guān)注

    關(guān)注

    0

    文章

    80

    瀏覽量

    29456
  • GAP
    GAP
    +關(guān)注

    關(guān)注

    0

    文章

    15

    瀏覽量

    8686
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    從8到30:AI服務(wù)器PCB層數(shù)進(jìn)階,PCle 5.0高速傳輸需求成關(guān)鍵

    行業(yè)深度分析報(bào)告顯示,當(dāng)前 AI 服務(wù)器 PCB 層數(shù)已實(shí)現(xiàn)大幅跨越,普遍達(dá)到 16-40 ,勝宏科技針對(duì)下一代服務(wù)器研發(fā)的 10 階 30 PCB 已進(jìn)入關(guān)鍵階段。要知道,傳統(tǒng)服務(wù)器 PCB
    的頭像 發(fā)表于 02-26 17:02 ?555次閱讀

    PCB阻焊與助焊的本質(zhì)區(qū)別

    在Altium Designer(AD)中設(shè)計(jì)PCB時(shí),我們經(jīng)常在層疊管理器里看到 Solder Mask 和 Paste Mask 這兩。它們到底是什么?為什么總是成對(duì)出現(xiàn)?簡(jiǎn)單來(lái)說(shuō),可以把它們理解為PCB在生產(chǎn)和組裝過(guò)程中,為了完成不同任務(wù)而穿的 “兩件不同的衣服”
    的頭像 發(fā)表于 01-06 18:50 ?2413次閱讀
    PCB阻焊<b class='flag-5'>層</b>與助焊<b class='flag-5'>層</b>的本質(zhì)區(qū)別

    基于以太網(wǎng)芯片的應(yīng)用層方案

    聚焦于以沁恒微電子以太網(wǎng)芯片(如CH394/CH395及集成型MCU CH32V317等)為基礎(chǔ)構(gòu)建的多種高效應(yīng)用層方案,闡述其如何以簡(jiǎn)化的硬件與低成本,實(shí)現(xiàn)豐富的網(wǎng)絡(luò)功能。
    的頭像 發(fā)表于 12-09 14:47 ?523次閱讀
    基于以太網(wǎng)芯片的<b class='flag-5'>應(yīng)用層</b>方案

    不止于4!華秋PCB 6板爆款重磅上線(xiàn)

    4之后,再看6上月,華秋PCB推出了4板爆款,以“真香”價(jià)格引爆市場(chǎng)。今天,華秋PCB懷著更大的誠(chéng)意,為您帶來(lái)承諾中的下一站——「華秋PCB6板爆款」正式登場(chǎng)!不止于降價(jià),我們
    的頭像 發(fā)表于 11-12 07:33 ?493次閱讀
    不止于4<b class='flag-5'>層</b>!華秋PCB 6<b class='flag-5'>層</b>板爆款重磅上線(xiàn)

    應(yīng)用層外設(shè)進(jìn)行數(shù)據(jù)傳輸,是否應(yīng)該調(diào)用rt_device_create,rt_device_register等函數(shù)呢?

    假如我要在應(yīng)用層用一個(gè)新的usart2串口傳輸數(shù)據(jù),那我應(yīng)該是怎么做? 1.在工程未編譯前將usart2加上,即定義宏BSP_USING_UART2,利用RT-Thread在硬件初始化
    發(fā)表于 10-11 06:29

    使用羅德與施瓦茨CMX500的吞吐量應(yīng)用層測(cè)試方案

    5G NR(New Radio)吞吐量應(yīng)用層測(cè)試是評(píng)估5G網(wǎng)絡(luò)性能的一個(gè)重要方面,它主要關(guān)注的是在實(shí)際應(yīng)用條件下,用戶(hù)能夠體驗(yàn)到的數(shù)據(jù)傳輸速率。這種測(cè)試通常包括了對(duì)下行鏈路和上行鏈路的吞吐量進(jìn)行測(cè)量,以確保網(wǎng)絡(luò)可以滿(mǎn)足各種應(yīng)用場(chǎng)景的需求,比如高清視頻流、虛擬現(xiàn)實(shí)、增強(qiáng)現(xiàn)實(shí)
    的頭像 發(fā)表于 09-02 13:56 ?7959次閱讀
    使用羅德與施瓦茨CMX500的吞吐量<b class='flag-5'>應(yīng)用層</b>測(cè)試方案

    多層板的歷史、特點(diǎn)和關(guān)鍵技術(shù)

    多層板的制作方式是在絕緣基板或傳統(tǒng)板件(雙面板、多層板)表面交替制作絕緣、導(dǎo)電間連接孔,通過(guò)多次疊加形成所需層數(shù)的多層印制板。
    的頭像 發(fā)表于 08-15 16:38 ?1683次閱讀

    混合壓PCB板的成本如何控制?

    RO4350B),非關(guān)鍵區(qū)域使用FR-4,可降低40%材料成本6。 ? 銅箔厚度動(dòng)態(tài)調(diào)整 ? 電源局部使用2oz厚銅,其他區(qū)域保持1oz,節(jié)省銅材用量50%的同時(shí)確保性能6。 二、設(shè)計(jì)階段降本 ? 層數(shù)精簡(jiǎn) ? 通過(guò)優(yōu)化布線(xiàn)將8
    的頭像 發(fā)表于 08-15 11:33 ?894次閱讀

    如何從PCB焊盤(pán)移除阻焊和錫膏

    使用焊盤(pán)屬性中 Solder Mask Expansion 的 “ Tented ” 選項(xiàng):該選項(xiàng)會(huì)移除所有阻焊,導(dǎo)致焊盤(pán)頂層 / 底層的阻焊無(wú)開(kāi)口(即完全覆蓋)。阻焊擴(kuò)展值為正值時(shí)表示向外擴(kuò)展,若需要阻焊
    的頭像 發(fā)表于 07-22 18:07 ?5231次閱讀
    如何從PCB焊盤(pán)移除阻焊<b class='flag-5'>層</b>和錫膏<b class='flag-5'>層</b>

    基于SM4的文件加密解密功能實(shí)現(xiàn)(ECB模式)

    : ?? 相關(guān)技術(shù)實(shí)現(xiàn)思路如下: 一、SM4加密解密 大部分的代碼官網(wǎng)都有,我這里先介紹一下我的開(kāi)發(fā)中踩坑的記錄 如果看官方文檔里的代碼,你會(huì)發(fā)現(xiàn),他對(duì)于加密
    發(fā)表于 06-29 13:21

    PCB疊設(shè)計(jì)避坑指南

    至目標(biāo)厚度 設(shè)計(jì)完成關(guān)鍵步驟:用工具驗(yàn)證疊設(shè)計(jì)完成后,如何驗(yàn)證?傳統(tǒng)方法依賴(lài)工程師經(jīng)驗(yàn),現(xiàn)在 華秋DFM軟件提供了一站式解決方案 。 1、阻抗神器 結(jié)合各種生產(chǎn)因素,自動(dòng)計(jì)算或
    發(fā)表于 06-24 20:09

    核心揭密 | 動(dòng)態(tài)性能:Samtec Nitrowave?電纜的關(guān)鍵構(gòu)成

    前 言 Samtec始終致力于開(kāi)發(fā)新技術(shù)以改進(jìn)其產(chǎn)品。但我們的客戶(hù)可能會(huì)對(duì)技術(shù)的海量信息感到困惑。有時(shí),客戶(hù)其實(shí)只需要對(duì)比自己的需求,清晰了解我們的產(chǎn)品和技術(shù)即可,并了解其對(duì)自身應(yīng)用的支撐和加
    發(fā)表于 06-18 17:51 ?1383次閱讀
    核心揭密 | 動(dòng)態(tài)性能<b class='flag-5'>層</b>:Samtec Nitrowave?電纜的關(guān)鍵構(gòu)成

    和七負(fù)載均衡的核心區(qū)別

    在現(xiàn)代分布式系統(tǒng)和云計(jì)算架構(gòu)中,負(fù)載均衡(Load Balancing, LB)是確保高可用性、可擴(kuò)展性和性能優(yōu)化的關(guān)鍵技術(shù)。負(fù)載均衡器根據(jù)不同的OSI模型層級(jí)工作,主要分為四(L4)和七(L7)兩種類(lèi)型。它們各自適用于不同的場(chǎng)景,并在性能、功能和實(shí)現(xiàn)方式上存在顯著差
    的頭像 發(fā)表于 05-29 17:42 ?1321次閱讀

    感知、傳輸應(yīng)用層一體化:工控一體機(jī)廠家聚徽詳解集成技術(shù)方案

    過(guò)程的全面智能化與高效化。本文將深入探討工控一體機(jī)中感知、傳輸、應(yīng)用層一體化的集成技術(shù)方案,剖析其工作原理、技術(shù)優(yōu)勢(shì)以及實(shí)際應(yīng)用案例。 一、工控一體機(jī)概述 工控一體機(jī)是一種專(zhuān)為工業(yè)環(huán)境設(shè)計(jì)的計(jì)算機(jī)設(shè)備,具備高可
    的頭像 發(fā)表于 05-27 14:35 ?1226次閱讀

    PCB的EMC設(shè)計(jì)(一):的設(shè)置與排布原則

    PCB的電磁兼容性(EMC)設(shè)計(jì)首先要考慮的設(shè)置,這是因?yàn)閱伟?b class='flag-5'>層數(shù)的組成、電源和地層的分布位置以及平面的分割方式對(duì)EMC性能有著決定性的影響。為昕MarsPCBlayerstack層數(shù)
    的頭像 發(fā)表于 05-17 16:17 ?1302次閱讀
    PCB的EMC設(shè)計(jì)(一):<b class='flag-5'>層</b>的設(shè)置與排布原則