当前位置: 首页>JAVA>正文

bld設計公司,BLE外設設計

bld設計公司,BLE外設設計

外設的定義
外設是什么,一般來說主機通常是電腦,手機等設備,相對而言,他們對功耗的要求要小得多
而低功耗主要考慮的是外設部分,所以外設一般是和手機、電腦等相連接的為低功耗高度
定制化的產品。
外設的工作離不開與主機的交互,所以一般的交互方式為:廣播數據,被主機發現并與主機
進行建立連接。斷開連接。然后在需要的時候建立連接。
---------------------
僅廣播模式
此模式下的外設不需要和主機建立連接,只需要工作在廣播模式下不斷的廣播有效的數據即可
主機只需要監聽器廣播,就可獲得有效數據。

其好處是:由于不建立連接,此種模式功耗最低。

這種模式的應用場景:
如,廣播者廣播中包含一個時間信息,一個掛鐘每天需要接收這個廣播來進行同步自己的時間
而且它不需要時刻監聽,只是偶爾監聽一次廣播。廣播者的廣播的間隔和頻率甚至不需要周期性廣播出去,只需要在特定的時間根據用戶的等待意愿設置一個間隔發送廣播。這樣能夠達到
最小的功耗特性。

-----------------------
可發現
除了僅廣播的外設的,所有其他的設備都是可發現的,可發現意味著外圍設備的廣播目標是
此區域的正在掃描的所有中央設備

bld設計公司、可發現主要是兩種類型:
有限可發現性:
一般在進行交互后,外圍設備能在一定時間內處于有限可發現狀態。如外設剛裝上電池
以后,或者在按下設備上的連接按鈕后,此時外設處于有限可發現狀態,主機掃描時
外設會顯示在主機界面的頂端。

一般可發現狀態:
外設不是都總是處于可發現狀態,如外設與主機配對完成。此時用戶就處于一般可發現
狀態,此時主機就不會再發現了。
----------------------------------
可連接性
和可發現設備的區別,可發現設備不與其他任何其他設備配對,而可鏈接設備通常可與
其他設備綁定和接收發起設備的連接請求。

但是這引起一個問題。任何主機可以與外設連接,會使得外設將花費大量時間進行協商,
導致能量的浪費,功耗的增大,還會帶來負面影響是,阻止外設綁定過的主機與其連接
所以又的引入解決方案:
外設的控制器可以配置為只接受有限的主機設備的連接請求。這些主機設備列表存儲在
白名單中。如果發起鏈接的設備不在這個列表里面,其請求將被忽略。
這個方案得以實施的前提是設備自身執行過綁定。而在此之前,該設備將處于混雜模式
接收任何設備的鏈接,這通常在設備首次設為可連接但是還未與任何設備綁定的時候
才會發生。
-----------------
公開服務
進入連接之后,外設通常會公開一個或多個服務,每個服務都封裝了外設中的某個組成
部分的原子行為,服務通過服務器的屬性協議公開,服務器上的屬性的集合統稱為
屬性數據庫。
屬性部分參考GATT 部分的分析
-----------------
特征
同樣的,特征也參考GATT 部分章節分析。
----------------------
以上就是一個外設所需要實現的部分。

低功耗的優化

一般來說,對于使用電池供電的外設來說,為了延長器使用時間,必須考慮為了達到低功耗
的目的而進行其優化,包括確定最佳的廣播間隔和連接間隔,優化屬性的的訪問,選擇是否
保持連接還是斷開重連等。

?


ble設備,?

先看看外圍設備的典型狀態圖

1,設備首次啟動外設將進入可發現廣播狀態,此時其可以被主機發現。
2,某個時刻一個主機會連接到外設并與之綁定。
3,在綁定成功情況下,外設進入可連接廣播,如果綁定沒有發生,外設回到可發現廣播狀態
4,已綁定的外圍設備將執行可連接廣播,只有與之配對的主機才能連接該外設。
  它們之間一旦重新連接進入了連接狀態,主機會根據自身的意圖倆管理連接的間隔
5,設備連接后,如果一旦斷開了連接,外設可能會進入下列兩種狀態,
  一是回到可連接廣播。即周期性地發送廣播報文以便主機根據其需要發起重連。
  二是關閉廣播,直到外設有數據要發送時再使用定向廣播與主機重新建立連接。

?對于外設優化功耗的方法有下面幾種

ble開發、可發現廣播
在外設中,一個優化功耗的根本辦法在于為廣播和連接進行選擇時間的間隔,
一個適合的間隔可能讓電池工作好幾年,而一個糟糕的間隔只能讓它工作幾個星期。
怎樣選擇一個好的間隔呢?
位于可發現模式的時候,外設希望盡快被發現。此時設備會廣播發射功率,設備名等
供主機掃描后用來排序或顯示等。
當前,為了外設更傾向于使用較快的頻率發送廣播,將廣播間隔設定為250ms有助于在
發現速度和節能之間取得較好的折中

綁定
在外設建立了連接之后,連接的時間間隔由主機決定。
此時快速的連接間隔(7.5-25ms)將會耗掉大量的能量。但是好處是主機可以很快發現
外設提供的服務集和特性集。
如果連接間隔很慢(1s-4s之間),主機將耗費一段相當長的時間來確定如何使用外設。

但是綁定完成之后,此時應該可以盡量減少連接間隔以減少能量。后面再討論如何優化

可連接廣播
斷開連接后的外設可以周期性地進行廣播,以便讓主機重新發起鏈接。此時,廣播需要
綜合考慮多種因素,既要保證主機的重連速度,又要考慮外設自身的功耗。

以一個心率帶來說,一般它不在鏈接中的時間要比處在鏈接的時間多得多。比如,
在用戶慢跑的一個小時內會保持連接,如果一個星期鍛煉三次,一周內心率帶只連接
了三個小時,而在其他的165個小時內則處于可連接廣播態,如此類的設備來說,使用
較長的廣播間隔帶來的好處十分明顯。

此時,在用戶戴上心率帶的時候,可以針對廣播分陪更多的功率,如將廣播間隔設為
100ms,會給用戶一種印象,一戴上心率帶連接就能在瞬間完成。
如果此時主機此時暫不能發起鏈接,可以降低心率帶的廣播速率,換一個更大的廣播間隔
來節能。

?

轉載于:https://www.cnblogs.com/yunxiangworld/p/8018851.html

https://www.nshth.com/java/338549.html
>

相关文章:

  • bld設計公司
  • ble設備
  • ble開發
  • panel設計
  • in外設官網
  • ble module顯示屏
  • pdf去水印軟件免費版,java批量去除pdf簽名,刪除簽名圖標
  • java多線程面試題及答案,JAVA8線程池THREADPOOLEXECUTOR底層原理及其源碼解析
  • java編程,java.lang.Class:是反射的源頭
  • java基礎面試題及答案,HTML CSS 基礎 面試題
  • java編寫軟件工具,Xson:Java對象序列化和反序列化工具
  • nlp預訓練模型,NLP-D62-nlp比賽D31刷題D15
  • kafka如何使用,kafka javax.management.InstanceAlreadyExistsException: kafka.consumer:
  • ssm畢設項目企業部門報銷管理g9d62(java+VUE+Mybatis+Maven+Mysql+sprnig)
  • java小游戲合集,java 煙花_Java 美麗的煙花
  • table列合并,poi操作excel之列合并
  • 找不到指定模塊怎么辦,在烏版圖安裝軟件包時候報錯:E:無法定位軟件包
  • 學云計算好就業嗎,對不起,云計算技術又走錯路了
  • 數電模電基礎知識總結,數電模電實驗課程
  • java的基礎知識,「JavaSE」-面向對象
  • 擴展內存,Java編程內存分析簡要
  • java多線程面試題及答案,【階段一】java之面向對象上
  • java 工作流框架,Activiti工作流使用之SpringBoot整合Activiti
  • 模型的應用形態包括哪些,模型設計準則
  • c語言程序設計培訓班南寧,南寧從零開始學習編程
  • 服務器,Spring Security oAuth2創建認證服務器模塊
  • Java jdk14.0.1安裝簡單步驟
  • 安裝ug12.0當前頁面的腳本發生錯誤,ug提示找不到html文件,[圖文教程] 以下文件無法加載,導致打開操作失敗: 使用當前搜索選項找不到文件,部件已卸載.
  • java執行cmd命令找不到指定文件,java編譯找不到文件_解決cmd運行java程序“找不到文件”提示的方案
  • 線上學畫畫的機構排名,拍樂云推出業內首個「線上美術教學音視頻方案」,打造極致互動體驗
  • day18-java
  • 取兩者中較小值函數,求兩個數中的較大值
  • java多線程面試題及答案,python中的多任務-多線程和多進程
  • 關于Arthas如何遠程監視Java程序
  • Java8 Stream流中的 collect() 方法,遠比你想象中的強大
  • 劉德華《天若有情》,天若有情