24小時(shí)聯(lián)系電話(huà):18217114652、13661815404
中文
行業(yè)資訊
如何開(kāi)發(fā)使用藍牙與您的產(chǎn)品通信的移動(dòng)應用程序
如何開(kāi)發(fā)使用藍牙與您的產(chǎn)品通信的移動(dòng)應用程序
創(chuàng )建使用手機進(jìn)行連接和交互的設備比為嵌入式設備創(chuàng )建和設計 GUI 更便宜。通過(guò)消除對嵌入式顯示器的需求,它還大大降低了硬件成本。
總體而言,讓用戶(hù)通過(guò)藍牙或 Wi-Fi 連接到您的設備極大地增強了整體用戶(hù)體驗。
因此,讓我們看看如何選擇連接到手機的最佳技術(shù),以及您應該用來(lái)創(chuàng )建自己的移動(dòng)應用程序的最佳平臺。
低功耗藍牙的工作原理
由于其廣泛采用和低功耗,藍牙是放置在您的嵌入式系統中的完美連接方法。
但是,首先我們需要了解一些有關(guān)藍牙工作原理的關(guān)鍵概念。
外圍設備和中央設備
使用藍牙低功耗,設備分為兩種類(lèi)型:外圍設備或中央設備。
外圍設備是通常在低功率嵌入式設備上找到的設備,而中央設備是那些具有更“中央”功能的設備,旨在連接多個(gè)外圍設備。
分配正確類(lèi)型的設備對于確保您的嵌入式設備進(jìn)行正確連接至關(guān)重要。如果手機正在偵聽(tīng)來(lái)自中央設備的事件,則無(wú)需充當外圍設備。
一旦您的嵌入式設備(例如心率監測器)連接到中央設備,它現在就成為中央設備的“從屬設備”,而中央設備在連接后稱(chēng)為“主設備”。
這種類(lèi)型的結構稱(chēng)為 GATT 或通用訪(fǎng)問(wèn)配置文件 (GAP),并使用屬性協(xié)議 (ATT)。GATT 結構用于在中央設備和外圍設備之間雙向傳遞信息。
廣告
當藍牙低功耗中央設備需要連接到任何外圍設備時(shí),外圍設備將發(fā)送廣告數據,其中包括任何中央設備建立正確連接的重要信息。
廣告數據最多可達 31 個(gè)字節,并且可以在從低端毫秒到長(cháng)達幾秒的間隔之間發(fā)送。
您可以決定讓外圍設備更頻繁地發(fā)送廣告數據,但如果設備使用電池供電(很可能會(huì )如此),您可以通過(guò)減少發(fā)送數據的頻率來(lái)節省電量。
在廣告數據方面,速度和功率是兩個(gè)權衡。
配置文件、服務(wù)和特征
設置了 BLE GATT 結構,以便您可以在降壓模型中組織您希望在設備之間發(fā)送的信息。
最廣泛的結構類(lèi)型是配置文件。配置文件只是服務(wù)的“集合” ,它是配置文件的子集。
在服務(wù)中,有一個(gè)包含您的數據的特征列表。該數據可以是字符串、十六進(jìn)制值、十進(jìn)制等。
需要通過(guò)特性發(fā)送和接收哪些數據取決于設計人員。
現在我們了解了 BLE 工作原理的結構,讓我們開(kāi)始研究可以使用此 BLE 功能的設備。
使用藍牙 LE 的示例設備
樂(lè )鑫 ESP32
ESP32 開(kāi)發(fā)板
目前市場(chǎng)上最受歡迎的微控制器之一是 Espressif Systems 的ESP32 微控制器。
該微控制器具有大量功能,包括 BLE、Wi-Fi、具有兩個(gè)哈佛架構 Xtensa LX6 CPU 的強大雙核系統、高達 520 KB 的內部 SRAM,并支持 16 MB 片外 SPI 閃存。
此外,該 MCU 最多可連接 41 個(gè)外設,非常適合任何涉及多個(gè) GPIO 的項目。
HM-10 串口模塊
HM-10 藍牙串口模塊
如果您需要將藍牙連接到現有項目并且不想切換微控制器,則 HM-10 藍牙 UART 模塊是一個(gè)很好的選擇。
HM-10 模塊使用 UART 與您的微控制器通信,這有正面和負面的影響。
積極的一面是它易于使用。只需連接 +3.3V、接收線(xiàn)、傳輸線(xiàn)和地線(xiàn)即可與模塊正常通信。
另一方面,沒(méi)有更改上述參數的方法,例如設備的服務(wù)或特性,因為一切都通過(guò)串行 UART 進(jìn)行通信。
此外,如果空間有限,則使用 HM-10 模塊會(huì )為您的項目添加另一個(gè)分立板,占用寶貴的空間。
HM-10 可以輕松快速地連接到任何原型,但如果您需要更改設備上的配置文件和特性或可用空間非常有限,您可能需要使用其他選項。
Arduino Nano 33 物聯(lián)網(wǎng)
Arduino Nano 33 物聯(lián)網(wǎng)開(kāi)發(fā)板
Arduino Nano 33 IoT是 Arduino的開(kāi)發(fā)板,在已經(jīng)很流行的 Arduino Nano 上集成了 Wi-Fi 和 BLE。
它具有低功耗 Arm Cortex-M0 32 位處理器,以及通過(guò) ECC608 加密芯片進(jìn)行的安全通信。
它還包括一個(gè) 6 軸 IMU,非常適合機器人、無(wú)人機或其他硬件相關(guān)項目。
低功耗藍牙是為您的項目添加無(wú)線(xiàn)功能的絕佳解決方案。
將功能設置到嵌入式設備中的簡(jiǎn)單性,以及當今手機中的流行,使得它很難與其他技術(shù)相抗衡。
本文介紹了低功耗藍牙的工作原理、具有 BLE 功能的流行設備、創(chuàng )建成功的移動(dòng)應用程序所需的步驟,以及用于創(chuàng )建移動(dòng)應用程序的不同開(kāi)發(fā)環(huán)境和語(yǔ)言。