天天看點

【原創】Appinventor 與Microbit BLE連接配接測試

1、前言

Microbit 自帶藍牙,以前用過BlockytlackyBLE來與App inventor通信。最近不知道出了什麼問題,手機側收發就會閃退。估計也是相容性的問題。自己也想測試一下,能否用其它BLE擴充實作通信。

本文主要給自己爬過的坑做個記錄。另一方面也希望能給Microbit的玩家一些參考。

2、使用的編輯器及插件

Mackecode用的是小喵科技的Makecode離線包,擴充用自帶的BLE藍牙插件。

【原創】Appinventor 與Microbit BLE連接配接測試

Appinventor 用的是wxbit的 Appinventor 漢化包,它的BLE擴充也是自帶了的。

【原創】Appinventor 與Microbit BLE連接配接測試

3、Microbit 部分

原理是,先設定Microbit的藍牙可被所人連接配接,再點儲存。我第一次測試時沒注意,結果APP查得到卻聯不上。

【原創】Appinventor 與Microbit BLE連接配接測試

剩下就簡單了。連接配接時顯示 勾,斷開時顯示 叉,收到資訊時 顯示Hello。

另,記得啟動uart服務,一會要用這個來通信。

【原創】Appinventor 與Microbit BLE連接配接測試

4、App inventor部分

4.1 界面部分

【原創】Appinventor 與Microbit BLE連接配接測試

非常簡單,能完成測試就好了。

4.2 邏輯部分

1) BLE掃描及連接配接

【原創】Appinventor 與Microbit BLE連接配接測試

第一次掃描時,Microbit的位址會直接顯示在清單中。記下 ,然後讓App直接對搜尋結果比對,然後連接配接Microbi。這樣可以加快測試速度。 然後改成下面的子產品。

【原創】Appinventor 與Microbit BLE連接配接測試

其實上圖綠色的一行已經不需要了,隻是為了測試好看而已。記得位址用的是文本,“:”号用的是英文。

連接配接後記得停止搜尋,不然它會一直做無用功。

【原創】Appinventor 與Microbit BLE連接配接測試

2) BLE偵聽

這裡有三個參數需要記住,分别服務UUID,發送UUID,以及接收UUID。在Makcode的幫助中可以查出來,分别是:
           

public static String UARTSERVICE_SERVICE_UUID = “6E400001B5A3F393E0A9E50E24DCCA9E”;

public static String UART_RX_CHARACTERISTIC_UUID = “6E400002B5A3F393E0A9E50E24DCCA9E”;

public static String UART_TX_CHARACTERISTIC_UUID = “6E400003B5A3F393E0A9E50E24DCCA9E”;

服務、收、發UUID 的差異在這裡
           
【原創】Appinventor 與Microbit BLE連接配接測試

分别是1B、2B、3B

我們偵聽子產品如下:

【原創】Appinventor 與Microbit BLE連接配接測試

因為我們是偵聽,是以用的是接收的特征UUID:“6E400002B5A3F393E0A9E50E24DCCA9E”。收到資訊就作以下處理,收到資訊後,标簽1就會顯示内容了。

【原創】Appinventor 與Microbit BLE連接配接測試

3)發送

發送的子產品如下:

【原創】Appinventor 與Microbit BLE連接配接測試

我們這次是發送,是以特征UUID用的是6E400003B5A3F393E0A9E50E24DCCA9E。

OK可以了。

5、測試

分别把Appinventor及Macode代碼下載下傳到手機(與可以用手機伴侶)和Microbit,經實測,雙向資料都是通過的。

本次測試一方面學習了BLE的用法,另也會用其它藍牙裝置提供了參考。

全文完。謝謝觀看!