Bluetooth LE(低功耗蓝牙) - 第一部分
前言
? ? ?在寫這篇文章的時候,谷歌剛剛發布了Android Wear ,摩托羅拉也發布了 Moto 360 智能手表。Android Wear的API還是相當基本的,是很好的文檔材料,而且還會不斷的更新,所以我不打算寫一個關于他們的教程(至少現在還沒有)。有趣的是 Moto 360 支持 Android 4.3及之后的版本。這明顯是Bluetooth LE只有在Android 4.3及以后才被支持的原因,這也意味著 Moto 360 支持Bluetooth LE。Bluetooth LE?將不僅是可穿戴技術的核心技術,而且也是許多物聯網設備的核心技術。在這個系列博客中我們將了解?Bluetooth LE?在?Android 上的使用。
?Bluetooth 與 Bluetooth LE簡介
?藍牙自20世紀90年中后期就已經出現,并已成為短距離設備的對等網絡的標準。一個缺點是它需要消耗一點電量,這在移動設備上是一 個問題,而且在電池更小的可穿戴設備中需要消耗更多電。另一個缺點是兩個藍牙設備必須配對才可以相互通信。雖然配對過程只需要執行一次,但對用戶來說這是一個痛苦的經歷。
?Bluetooth Low Energy(低功耗藍牙),縮寫為Bluetooth LE,或BLE,作為藍牙4.0 (有時稱為藍牙智能)規范的一部分,并針對上述的這些具體問題而被引入。就提高電池壽命而言,許多制造商聲稱一些傳感器能維持數月甚至數年的時間(我必須承認我有點懷疑制造商的估計一般是基于最好的情況下,而不涉及實際的使用情況)。正如前面已經提到的,谷歌在Android 4.3(API?18)中加入了對BLE的支持。
Bluetooth 與 Bluetooth LE 的區別
? ? ? 對于那些已經熟悉藍牙開發的童鞋來說,BLE提供了一個諸如學習曲線的玩意,因為它是一個非常不同的野獸(譯者注:這句不知道該怎么翻譯啦,求各位幫忙看看, 原文是:?BLE presents something of a learning curve because it is a rather different beast?),所以讓我們大致地看下他們的主要區別。
? ? ?第一個主要區別是在配對過程。傳統的藍牙開發,配對兩個設配主要是用戶的任務,但使用BLE,配對的任務更多的在于開發商。這是一件好事,因為從用戶的角度來說整個配對過程變得更直接了當。
? ? ?另一個主要的區別是通信本身。傳統的藍牙開發通信方式有許多選擇,從根本上說都是基于和標準的Sockets非常相似的Sockets架構。本質上我們的數據通過Sockets傳遞,并且它是兩個設備知道數據流格式的一種實例。BLE則采用不同的方法,它以屬性為中心進行數據通信。在兩個設備之間共享的屬性本質上是一個原子數據(整數或字符串)。屬性可用于表示數據或控制傳感器的行為。例如,在一個心率監測儀中一個屬性可能包含了當前的心率值(數據)以及另一個可能包含心率值更新頻率的設置(行為)。
關于本系列文章
? ? ?在進一步了解之前,我們有必要定義一些角色。通常我們將傳感器(心率監視器,溫度傳感器,等)連接到一個主機(智能手機,平板電腦,等)。在我們的例子中,主機從一個屬性中讀數據的同時可以通過寫入一個新值到另一個屬性中以控制傳感器的行為。其實控制傳感器行為的情況會更多一點,因為主機也可以注冊監聽一個屬性的改變,這個我們將在適當的時候再去討論。
? ? ?在本系列的文章中我將使用的設備是??Texas Instruments SensorTag?? 它是一個具有BLE功能的多傳感器開發套件。價格很便宜,在£20(25美元)之內。同時還有環境溫度,紅外溫度,相對濕度,氣壓計,磁力計,加速度計,陀螺儀和手動開關等設備–所有這些都可以通過BLE訪問。在這個系列博客中我們將開發一個應用程序,顯示從SensorTag中獲得的環境溫度和濕度值。
? ? ?非常抱歉在這篇文章中沒有代碼,因為我覺得在深究BLE之前了解一點背景知識很重要。不過在下一篇文章肯定會給出一些代碼 -- 我保證!
?
轉載于:https://www.cnblogs.com/xiaorenwu702/p/4304378.html
總結
以上是生活随笔為你收集整理的Bluetooth LE(低功耗蓝牙) - 第一部分的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【CSS】font样式简写(转)- 不是
- 下一篇: 关于gui的skinnableConta