Micro:bit小測

在這個頁面,老師會提出一些問題考驗各位是否能完成,有時也會公布老師的作法,但請各位小朋友應儘量靠自己去實作出來!並且在自己的Google Site中記錄自己的研究過程

利用迴圈來點亮Led

設定二個變數x,y,利用它們來表示led的座標,使用巢狀迴圈的方式就能簡單地完成這項任務了,下方老師提供二種寫法,可以試試,看似簡單但含有很重要的基本程式運行觀念

隨著板子角度改變而移動的光點(1120320)

Micro:bit啟動時,正中央的led會亮且閃爍,這個亮點會隨著板子傾斜角度而移動,按下A鍵,則亮點回到正中央

提示:micro:bit 的 5x5 LED 矩陣總共有 25 個燈,每個燈都有各自的座標,從左上 (0,0) 開始,x 往右為 0~4,y 往下為 0~4 

老師的做法

主要利用遊戲積木建立一個光點實體,再利用加速度感測儀的特性取得x和y軸的數值用以判斷板子目前往哪個方向傾斜…然後設定光點的座標改變

倒數5秒放會加速的煙(1130319)

按a鍵時,Micro:bit的Led螢幕從5倒數,然後開始放煙火,但這煙火的展示速度會加快→直到最後全亮,按B鍵就可以重設,再按A鍵就可再來一次,提示各位可以參考:

steam.oxxostudio.tw/category/microbit/example/easy-animation.html#google_vignette 

steam.oxxostudio.tw/category/microbit/example/countdown.html 

steam.oxxostudio.tw/category/microbit/example/led-speed-time.html 

移動的光點進階一下(1120324

做這個例子前,先幫Micro:bit裝上電池擴充板(這板子上就有蜂鳴器),等於原本的例子再加上聲音表現的部份,光點往不同方向移動時會發出不同的音效,開機時、按A鍵時…音效及光點會閃爍的效果

Micro:bit音樂演奏器(1120325

這一樣是運用加速度感測器,利用判斷式來分出板子傾的不同方向並設定不同的音高(八度音)且led會顯示傾斜方向的箭頭,當板子平放時則不發出聲音也沒有箭頭

做好後你可以試試用它來演奏一首簡單的樂曲

追隨主人的光點(1120325)

接續上頭隨著板子傾斜而移動的光點,這兒的考驗是另一塊板子(喔!)要有二塊Micro:bit,沒人碰的那塊上有著跟手拿著的一樣的光點,神奇的是那光點會跟著手拿的這塊同步移動…

提示:當然是運用廣播積木完成囉!

利用數位寫入控制Led

將Micro:bit插上io擴充板,不管是使用v1.5或是v2都可以發出聲音,這個範例是讓4顆Led分別亮→熄,搭配Do,Mi,Sol,Do不同的音高

提示:運用麵包板及杜邦線來接Led,請注意:並不是所有的PIN都可以使用(有些是Micro:bit預設用掉了,比如要讓蜂鳴器發出聲音,Micro:bit就會佔用P0) 

呼吸的Led燈泡(1120407)

利用Micro:bit控制一顆LED小燈泡由暗到亮再到暗的循環,像是呼吸一樣, 它的電來自於Ksb043 IO擴展板,利用所接的腳位下類比訊號…注意一點:使用3v,led燈泡其實2v就夠了,如果使用太高的電壓很容易就會把它給燒毀

操控多顆Led(1120411)

這個練習主要是利用Micro:bit控制多顆Led的明暗,用到的是Makecode的引腳積木,數位寫入只能是0和1,而類比寫入卻可以分出0-1023不同的層次,這個範例中也加入了蜂鳴器

※懂得運用變數及當程式越寫越長,可以考慮使用涵數來分離程式碼,讓程式變得更易讀取及維護

請思考一件事:隨著程式越寫越長,積木越來越多,是不是造成閱讀上及修改上的困擾,有什麼方法改善呢?提示一下:就是適度地運用涵數及變數在你的程式碼中…

這兒有個針對小朋友的能力小測:請完成上面操控多顆Led的線路配置及程式撰寫(需靠自己思考),重點是以數位及類比模式分別控制Led(Micro:bit板上的以及外接的)並搭配音效的展示,將由老師一一檢視,完成者請截下自己的程式圖發到GoogleSite ,之後老師將發給你超音波模組及TM1637七段顯示器繼續研究…

這個範例把取得的數據利用Micro:bit顯示,你覺得有什麼缺點?

加上超音波模組(1120412)

除了控制數顆Led之外(只在啟動時蜂鳴器及Led表演一次),我們加上一顆超音波模組,並將取得的數據(前方障礙物的距離)顯示在Micro:bit的Led陣列上

※一般在材料行(多在網路上買)買的超音波要注意工作電壓是多少,要買寬電壓的版本,因為我們目前的裝置提供3v的電壓

※你可以想想能不能利用取得的數據來操控那四顆Led的情形,比如隨著物品越靠越近,Led亮越多顆…也可以搭配聲音的提醒變化,你需要一些思考及創意~

把這幾個零件都湊上去表演一下(1120413)

這個練習是希望小朋友能更了解利用各個不同的腳位去接輸入及輸出(IO)並且寫程式去操控它們(程式部份也要懂得怎麼寫才會運作順暢),而且好閱讀好維護(利用變數、涵數)

Micro:bit測距儀(1120425)

利用IO板接上了SONAR用它來取得前方障礙物的距離數據,藉以操控LED和SERVO就可以做出這個啦!

做出這個機構之後,小朋友就可以還回KSB043這塊IO擴充板,換上另一塊KSB048電機擴充板,準備做會跑的車子囉!

製作利樂包小車

利用隨手可得的飲料盒子(洗乾淨)搭配KSB048電機擴充板,Micro:bit搖身一變→一輛小車子

Micro:bit廣播遙控小車 

利用Micro:bit的廣播積木,使用另一塊Micro:bit當控制端控制小車運動(前進、後退、左右轉及停止),請練習這些動作的積木都以函式方式來撰寫,並在主程式中呼叫

避障小車

利用超音波模組讓自己的小車會閃避前方的障礙物

Micro:bit循線小車 

製作一台會順著黑色行進的車子