TI-BLE协议栈的GAP
通用訪問配置文件(GAP):
Ble協議棧中的GAP層負責處理設備訪問模式,包括設備發現、建立連接、終止連接、初始化安全管理和設備配置,所以在ble協議棧中有不少函數均是以GAP為前綴,這些函數會負責以上的內容。
?
GAP層總是作為下面四個鐘角色之一:
☆Broadcaster? 廣播者——不可以連接的一直在廣播的設備;
☆Observer??? 觀測者——可掃描廣播設備,但不能發起建立連接的設備;
☆Peripheral?? 從機? ——可被連接的廣播設備,可以在單個鏈路層連接中作從機。
☆Central????? 主機? ——可以掃描廣播設備并發起連接,在單個鏈路層或多鏈路層中作為主機,在TI的ble協議棧中,一個主機可以連接三個從機。
?
在典型的藍牙低功耗系統中,從機設備廣播特定的數據,以便讓主機知道他是一個
可以連接的設備,廣播內容包括設備地址以及一些額外的數據,如設備名、服務等。主機收到廣播數據后,會向從機發送掃描請求ScanRequest,然后從機將特定的數據回應給主機,稱為掃描回應ScanResponse。主機收到掃描回應后,便知道這是一個可以建立連接的外部設備,這就是設備發現的全過程。此時,主機可以向從機發起建立連接的請求,連接請求包括下面一些參數。
?
△連接間隔——在兩個BLE設備的連接中使用調頻機制,兩個設備使用特定的信道收發數據,然后過一段時間后再使用新的信道。(鏈路層處理信道切換),兩設備在信道切換后收發數據稱之為連接事件,即使沒有應用數據的收發,兩個設備任然會通過交換鏈路層數據來維持連接,連接間隔就是兩個連接事件之間的時間間隔,連接間隔以1.25ms為單位,連接間隔的值為6(7.5ms)~3200(4s)。
?
△從機延時——這個參數的設置可以使從機跳過若干連接事件,這給了從機更多的靈活度,如果它沒有數據發送時,可以選擇跳過連接時間繼續休眠,以節省功耗。
?
△管理超時——這是兩個成功連接事件之間的最大允許的間隔,如果超過了這個時間(這個值的單位是10ms)而沒有成功的連接事件,設備被認為丟失連接,返回到未連接狀態,管理超時的范圍是100(100ms)~3200(32s)另外,超時值必須大于有效的連接間隔[有效的連接間隔=連接間隔*(1+從機延時)]。
?
△安全管理——只有已認證的連接中,特定的數據數據才能被讀寫,一旦連接建立,兩個設備進行配對,當配對完成后,形成加密連接的密鑰,在典型的應用中,外設請求集中器提供密鑰來完成配對工作。密鑰是一個固定的值,如000000,也可以隨機生成一個數據提供給使用者,當主機設備發送正確的密鑰后,兩設備交換安全密鑰并加密認證鏈接。在許多情況下,同一對外設和主機會不時的連接和斷開,ble的安全機制中有一項特性,允許兩個設備之間建立長久的安全密鑰信息,這種特性稱為綁定,他允許兩設備連接時快速的完成加密認證,而不需要每次連接時執行配對的完整過程。
總結
以上是生活随笔為你收集整理的TI-BLE协议栈的GAP的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: BLE简介及连接过程
- 下一篇: Generic Access Profi