如果需要利用micro:bit傳輸資料,例如感測加速度數值,然後需要傳到電腦上。做法上都是用第一台感測資料後,用廣播的方式傳送資料,第二台micro:bit一邊接收廣播,然後用序列寫入的方式傳進電腦,然後電腦再用這些資料做處理,這種算是很簡單的作法。
只用一台micro:bit可不可以直接把資料傳進電腦呢?是可以的,就是用藍牙,只是喔,過程有點麻煩。
首先micro:bit的晶片上,廣播和藍牙不可以同時使用,用了藍牙就不能用廣播。先在擴展上找bluetooth,點選第一個擴展積木。
隨後會出現一個對話視窗,告訴你它會移除廣播radio積木
接下來的程式就只有在當啟動時,開啟[藍牙加速度計服務]
為了方便連接,再到右上角齒輪點一下
接下來是電腦程式的撰寫,我的目標是希望直接拿到micro:bit的加速度資料,然後傳到電腦上自動繪圖。
第一步先看micro:bit 藍牙的規範
https://lancaster-university.github.io/microbit-docs/resources/bluetooth/bluetooth_profile.html
https://lancaster-university.github.io/microbit-docs/resources/bluetooth/bluetooth_profile.html
其中有寫到micro:bit的加速度計資料的UUID 是 E95DCA4B251D470AA062FA1922DFA9A8
這支程式就是做這件事情,先掃描周遭的藍牙裝置,選擇之後就可以連線取得加速度資料。
第一支程式成功後。我記錄micro:bit的address,就可以跳過掃描的過程,直接連線取得加速度資料來繪圖。
用的是這支程式
試過這個專案後,再看到micro:bit還可以直接用藍牙傳送以下資料,我覺得日後自己要做一些裝置應該是蠻有發展性的,不然現在很多micro:bit的藍牙服務都還要用別人寫好的手機app才能串接。