【Connection Events】【BLE】【原创】
生活随笔
收集整理的這篇文章主要介紹了
【Connection Events】【BLE】【原创】
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Connection Events
?本人在TI官網的學習筆記,現整理如下 兩臺BLE設備建立連接后,所有的通信事件都是通過Connection Events中發生的 ? ? ? ? ? 上圖為兩臺BLE建立連接后,用示波器從其中一臺設備中測量的波形 ? 紅色是時間軸 --- 橫軸, 耗電量 --- 黑色縱軸 ? 尖刺的波就是Connection Events ? 剩下的 Sleeping 是睡眠時間 ? 設備在建立連接后的大多數時間都是處于Sleeping的狀態的 ? 這種情況下,耗電量只有1uA ? 而在Connection Events中,最高的是十幾個毫安 ? 這就是BLE為什么省電的原因 ? 在每個Connection Events事件中,都需要由Master發起包,再由slave回復 ? ? Connection Parameters ? 通過修改這三個參數,就可以設置BLE連接的傳輸速度和功耗 ? 1、Connection Interval 指在一個Connection Events的開始到下一個Connection Events 的開始 的時間間隔 ? 單位是1.25ms,最小是7.5ms,最大是4.0s ? 2、Slave Latency 允許Slave設備在沒有數據要發的情況下,跳過一定數目的Connection Events 在這些Connection Events中不必回復master的包,這樣就能更加省電 ? 范圍可以是0~499 ? 3、Supervision Timeout 這個參數設定了一個超時時間,如果BLE在這個時間內沒有發生通訊的話,就會自動斷開 ? 單位是10ms,范圍是100ms ~ 32s ? 必須滿足如下公式: Supervision Timeout > (1 + slaveLatency)* (connectionInterval) ? slaveLatency不能算在 supervision Timeout的時間內,否則連接就會不正常斷開 ? 上圖slaveLatency 為0 時,master發包,slave必須回復, 如果不回復,master就會認為slave那邊接收不正常 slaveLatency 為 3 時, master 發包,slave允許有3個包不回復 ? 參數的影響: ? Connection Interval?縮短,master與slave通信更加頻繁,提高了功耗,提高數據吞吐速度,縮短數據發送時間 Connection Interval 加長,通信頻率降低,降低功耗,數據吞吐速度降低,數據發送等待時間更長 ? slaveLatency 減少或者設置為0,每次connection Envents中就都需要回應master的包 功耗上升,數據發送速度會提高 slaveLatency 加長,功耗下降,數據發送速度降低 ? 這些參數都是可以在連接建立以后動態修改的 ? 歡迎交流 如有轉載請注明出處新浪博客:http://blog.sina.com.cn/u/2049150530
博客園:http://www.cnblogs.com/sky-heaven/
知乎:http://www.zhihu.com/people/zhang-bing-hua
本文轉自張昺華-sky博客園博客,原文鏈接:http://www.cnblogs.com/sky-heaven/p/4203265.html,如需轉載請自行聯系原作者
總結
以上是生活随笔為你收集整理的【Connection Events】【BLE】【原创】的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 经典技术文章翻译(1):COM+集成:.
- 下一篇: Xamarin只言片语2——Xamari