999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

APP Invertor編程讓Micro:bit板連接手機(jī)

2020-07-15 06:12:41白二娃
電腦報(bào) 2020年24期
關(guān)鍵詞:按鈕文本設(shè)備

白二娃

我們已經(jīng)用Micro:bit做過不少編程試驗(yàn),也用APP Invertor編寫過手機(jī)APP。今天我們將兩者結(jié)合起來,編寫一個(gè)APP,讓安卓手機(jī)和Micro:bit通過藍(lán)牙連接起來。由于實(shí)現(xiàn)兩個(gè)設(shè)備連接后進(jìn)行基礎(chǔ)交互的代碼量較多,篇幅所限我們僅實(shí)現(xiàn)兩設(shè)備通過藍(lán)牙掃描和連接。后續(xù)實(shí)現(xiàn)交互的代碼您可以在掃碼下載源代碼后自行分析學(xué)習(xí)。

一、 器材列表

1. 安卓手機(jī)

2. Micro:bit板及數(shù)據(jù)線

3. APP Inventor編程平臺app.gzjkw.net或ai2.17coding.net

4. 擴(kuò)展下載網(wǎng)站iot.appinventor.mit.edu

5. Micro:bit編程平臺makecode.microbit.org

二、 下載項(xiàng)目擴(kuò)展

為了更好兼容Micro:bit的低功耗藍(lán)牙,我們沒有使用APP Invertor自帶的藍(lán)牙連接組件,而是添加了新的藍(lán)牙擴(kuò)展。

打開APP Invertor的支持網(wǎng)站(iot.appinventor.mit.edu)。在左邊Internet of Things菜單中可以找到BluetoothLE和BBC Micro:bit頁面。

1. BluetoothLE是APP Invertor專用的低功耗藍(lán)牙擴(kuò)展。在BluetoothLE頁面中點(diǎn)擊“Download the BluetoothLE extension ”把.aix擴(kuò)展文件下載到本地備用,也可以復(fù)制aix文件的網(wǎng)絡(luò)地址(http://iot.appinventor.mit.edu/assets/resourc

es/edu.mit.appinventor.ble-201907

01.aix)在導(dǎo)入項(xiàng)目擴(kuò)展時(shí)填入。

安裝該擴(kuò)展后可以讓APP Invertor編寫的程序通過手機(jī)藍(lán)牙搜索和連接低功耗藍(lán)牙設(shè)備,并進(jìn)行通信。

2. 在BBC Micro:bit頁面中,點(diǎn)擊“Download the BBC Micro:bit extension”可以下載到Micro:bit的專用擴(kuò)展。或在導(dǎo)入擴(kuò)展時(shí)直接填寫下載網(wǎng)址(http://iot.appinventor.mit.edu/assets/resources/SimpleMicrobit.aix)。APP Invertor安裝該擴(kuò)展后可以在手機(jī)連接后與Micro:bit板上的按鈕、引腳、LED等設(shè)備交互。

本例中我們僅需要實(shí)現(xiàn)兩個(gè)設(shè)備的藍(lán)牙連接,無需用手機(jī)與Micro:bit板做更多交互,因此只有需要測試有交互功能的源代碼MicrobitLED.aia時(shí)才需要安裝。

三、 組件設(shè)計(jì)

我們需要APP有搜索、連接、斷開等按鈕,有顯示周圍藍(lán)牙設(shè)備的列表,有顯示當(dāng)前狀態(tài)的文字。選擇搜索到的Micro:bit設(shè)備后點(diǎn)連接可以通過藍(lán)牙實(shí)現(xiàn)連接,點(diǎn)斷開可以斷開藍(lán)牙(如圖1)。

1. 登錄app.gzjkw.net,新建項(xiàng)目lanya,在APP Invertor組件面板的最后一項(xiàng)Extension——擴(kuò)展中導(dǎo)入下載的項(xiàng)目擴(kuò)展文件edu.mit.appinventor.ble-20190701.aix,也可直接填入網(wǎng)址安裝擴(kuò)展包。

2. 將BluetoothLE拖入工作面板。

3. 界面布局→水平布局,水平對齊→居中,寬度→充滿;從用戶界面拖入3個(gè)按鈕,組件列表中改名為“掃描、連接、斷開”,并修改按鈕文本為相應(yīng)名稱。

4. 用戶界面→標(biāo)簽,修改標(biāo)簽名和標(biāo)簽文本為“狀態(tài)”,用于顯示當(dāng)前藍(lán)牙狀態(tài)。

5. 用戶界面→列表顯示框,改名為“藍(lán)牙列表”,用于顯示和選擇搜索到的藍(lán)牙設(shè)備列表。

四、 掃描按鈕邏輯設(shè)計(jì)

我們希望APP可以掃描可用的藍(lán)牙設(shè)備。當(dāng)點(diǎn)擊掃描按鈕,調(diào)用藍(lán)牙組件開始掃描,并更改狀態(tài)標(biāo)簽,顯示列表。

1. 切換至邏輯設(shè)計(jì)界面。

2. 組合模塊。掃描按鈕→當(dāng)掃描被點(diǎn)擊執(zhí)行。

3. BluetoothLE1→調(diào)用BluetoothLE1.StartScanning。組合積木:狀態(tài)→設(shè)置狀態(tài).文本為和文本→文本中填入“狀態(tài):掃描”。

4. 組合積木:藍(lán)牙列表→設(shè)置藍(lán)牙列表.可見性為和邏輯→真。設(shè)計(jì)這個(gè)可見性邏輯判斷是為了連接成功后可以隱藏列表,因?yàn)槿绻浇泻芏嗨{(lán)牙設(shè)備,列表會(huì)很長(如圖2)。

五、 藍(lán)牙列表邏輯設(shè)計(jì)

我們需要在列表中列出周圍所有可用的藍(lán)牙設(shè)備。

1. 組合模塊。BluetoothLE1→BluetoothLE1.DeviceFound,當(dāng)掃描到可用藍(lán)牙設(shè)備時(shí)。

2. 組合積木:藍(lán)牙列表→設(shè)置藍(lán)牙列表.元素字串為和BluetoothLE1→BluetoothLE1.DeviceList(如圖3)。

六、 連接按鈕邏輯設(shè)計(jì)

我們希望實(shí)現(xiàn)在列表中選中設(shè)備名稱后,點(diǎn)擊“連接”按鈕后通過藍(lán)牙連接Micro:bit。

1. 組合模塊。連接按鈕→當(dāng)“連接”被點(diǎn)擊。

2. 調(diào)用BluetoothLE1→Bluetoo

thLE1.StopScanning,停止掃描設(shè)備。

3. 組合積木:調(diào)用BluetoothLE1

→BluetoothLE1.連接,藍(lán)牙列表→選中項(xiàng)索引。通過藍(lán)牙連接選中的設(shè)備。

4. 設(shè)置狀態(tài).文本為“狀態(tài):連接中”。在手機(jī)中標(biāo)明當(dāng)前連接狀態(tài)(如圖4)。

七、 表示成功連接

當(dāng)成功連接設(shè)備時(shí),我們希望通過狀態(tài)文本獲知連接已經(jīng)成功,并關(guān)閉藍(lán)牙設(shè)備列表。

1. 組合模塊。BluetoothLE1→當(dāng)BluetoothLE1.Connected。

2. 設(shè)置狀態(tài).文本為“狀態(tài):已連接”。

3. 設(shè)置藍(lán)牙列表可見性為“假”,關(guān)閉藍(lán)牙設(shè)備列表(如圖5)。

八、 斷開按鈕邏輯設(shè)計(jì)

點(diǎn)擊斷開按鈕后,我們希望手機(jī)斷開設(shè)備連接,并通過顯示當(dāng)前狀態(tài)確認(rèn)斷開按鈕有效。

1. 組合模塊。斷開按鈕→當(dāng)“斷開”被點(diǎn)擊。

2. BluetoothLE1→調(diào)用Bluetoot

hLE1.斷開連接。

3. 組合模塊。BluetoothLE1→BluetoothLE1.Disconnected。

4. 設(shè)置狀態(tài)文本為“狀態(tài):已斷開”(如圖6)。

九、 出錯(cuò)時(shí)邏輯設(shè)計(jì)

程序運(yùn)行中可能會(huì)遇到各種錯(cuò)誤,如果程序沒有閃退的情況下我們希望能知道報(bào)錯(cuò)信息。

1. 組合模塊。Screen1→當(dāng)“Screen1”出現(xiàn)錯(cuò)誤。

2. 設(shè)置狀態(tài)文本為和文本→合并字符串,連接文本“錯(cuò)誤:”和出現(xiàn)錯(cuò)誤模塊本身的“消息”→“取消息”(如圖7)。

十、 給Micro:bit編程

手機(jī)中的程序還需要Micro:bit中的程序配合。當(dāng)藍(lán)牙連接和斷開時(shí)在LED屏幕上顯示圖像作為連接成功的標(biāo)示。

1. 在https://makecode.microbit.org/中編寫程序。新建項(xiàng)目。

2. 設(shè)置Micro:bit藍(lán)牙連接方式為免配對連接,這樣任何設(shè)備都可以連接Micro:bit板且無需輸入密碼,這樣可以節(jié)約調(diào)試時(shí)間,而且APP中我們也沒有寫配對相關(guān)的語句。

點(diǎn)擊右上角齒輪圖標(biāo)→項(xiàng)目設(shè)定→打開No Pairing Required: Anyone can connect via Bluetooth選項(xiàng)。

3. 添加藍(lán)牙擴(kuò)展。

4. 編程當(dāng)藍(lán)牙連接時(shí)和斷開時(shí)顯示不同圖標(biāo)(如圖8)。

十一、 連接調(diào)試

現(xiàn)在,在APP Invertor中將程序打包APK,手機(jī)掃二維碼下載安裝,給APP啟動(dòng)藍(lán)牙授權(quán)。將Micro:bit程序刷入Micro:bit板中。

手機(jī)打開APP,點(diǎn)擊掃描,看藍(lán)牙列表是否正常。在藍(lán)牙列表中選擇Micro:bit,點(diǎn)擊連接按鈕。開始Micro:bit與手機(jī)藍(lán)牙連接。通過手機(jī)上狀態(tài)顯示和Micro:bit的LED顯示圖標(biāo)判斷連接是否成功。

根據(jù)我的試驗(yàn),程序可能出現(xiàn)連接易斷開或在部分手機(jī)上出現(xiàn)閃退等問題。這可能是因?yàn)镸icro:bit本身運(yùn)算處理能力不足造成藍(lán)牙斷開,或是APP Invertor擴(kuò)展對一些型號的手機(jī)兼容性不好導(dǎo)致閃退。你可以更換其他品牌手機(jī),或者根據(jù)iot.appinventor.mit.edu對擴(kuò)展包的詳細(xì)說明來優(yōu)化程序。

如果經(jīng)過努力連接成功后你還有興趣,可以繼續(xù)添加拓展功能,比如點(diǎn)擊按鈕發(fā)送文本或預(yù)設(shè)的圖標(biāo)到設(shè)備中顯示等。

掃描本版二維碼后你可以下載到實(shí)現(xiàn)基礎(chǔ)連接的源代碼lanya.aia和有交互的源代碼MicrobitLED.aia。

猜你喜歡
按鈕文本設(shè)備
這些按鈕能隨便按嗎?
當(dāng)你面前有個(gè)按鈕
諧響應(yīng)分析在設(shè)備減振中的應(yīng)用
在808DA上文本顯示的改善
基于doc2vec和TF-IDF的相似文本識別
電子制作(2018年18期)2018-11-14 01:48:06
基于MPU6050簡單控制設(shè)備
電子制作(2018年11期)2018-08-04 03:26:08
500kV輸變電設(shè)備運(yùn)行維護(hù)探討
文本之中·文本之外·文本之上——童話故事《坐井觀天》的教學(xué)隱喻
內(nèi)心不能碰的按鈕
原來他們都是可穿戴設(shè)備
主站蜘蛛池模板: 精品99在线观看| 国产精品浪潮Av| 在线观看无码a∨| 91久久精品日日躁夜夜躁欧美| 91久久国产综合精品女同我| 亚洲国产精品VA在线看黑人| 欧美特黄一级大黄录像| 久久黄色免费电影| 国产v精品成人免费视频71pao| 色婷婷综合激情视频免费看| 一级黄色网站在线免费看| 青青草原国产一区二区| 欧美不卡视频在线| 91精品啪在线观看国产| 欧美综合区自拍亚洲综合天堂| 久99久热只有精品国产15| 成人av手机在线观看| 国产精品毛片一区视频播| 亚洲中字无码AV电影在线观看| 婷婷色狠狠干| 国产女人爽到高潮的免费视频| 伊大人香蕉久久网欧美| 国产欧美日韩一区二区视频在线| 高清国产在线| 视频一区亚洲| 秋霞一区二区三区| 中国国语毛片免费观看视频| 五月天久久综合| 欧美一区二区丝袜高跟鞋| 欧美黑人欧美精品刺激| 精品欧美一区二区三区久久久| 国产精品浪潮Av| 精品国产美女福到在线不卡f| 亚洲一级毛片免费看| 国产素人在线| 性喷潮久久久久久久久| 色网站在线视频| 亚洲一区二区日韩欧美gif| 亚洲福利视频一区二区| 毛片视频网址| 亚洲福利网址| 91九色最新地址| 亚洲永久免费网站| 国产成人乱无码视频| 香蕉色综合| 丁香五月亚洲综合在线 | 国产成人精品亚洲日本对白优播| 在线精品自拍| 午夜日本永久乱码免费播放片| 色综合中文综合网| 亚洲黄色网站视频| 日韩欧美网址| 女人天堂av免费| 久久国产高清视频| 全部毛片免费看| 国产av无码日韩av无码网站| 久久久久九九精品影院| 成人另类稀缺在线观看| 人妻无码中文字幕第一区| 日本AⅤ精品一区二区三区日| 亚洲成aⅴ人片在线影院八| 欧美高清三区| 亚洲日本韩在线观看| 免费一极毛片| 首页亚洲国产丝袜长腿综合| 亚洲精选高清无码| 久久毛片基地| 国产精品短篇二区| 国产av色站网站| 一本色道久久88综合日韩精品| 一级全黄毛片| 免费不卡在线观看av| a级毛片免费播放| 亚洲精品亚洲人成在线| 9999在线视频| 九九热这里只有国产精品| 色国产视频| 人妻少妇久久久久久97人妻| 亚洲男人天堂2018| 国产高颜值露脸在线观看| 国产精品黑色丝袜的老师| 日日噜噜夜夜狠狠视频|