小小云提示:教程作者caterpillar是來自臺(tái)灣的programmer,所以在一些專有名詞的使用上會(huì)和我們這邊使用的不太一樣啦,不過作者也有標(biāo)注出英文名稱,大家自行轉(zhuǎn)換喲(?????????)
Me RGB LED 模組內(nèi)建了四個(gè) RGB LED,只使用一個(gè) SIG 腳位來分別控制各個(gè) LED 的顏色與亮度,另兩個(gè)腳位分別為 VCC 與 GND:

四個(gè) LED 各有 LED1 至 LED4 的編號(hào):

可以想見的,如果要自行接線路來完成這個(gè)電路模組,會(huì)是稍微費(fèi)力的一件事,有了這個(gè)模組,我們就可以直接將心力放在想設(shè)計(jì)的應(yīng)用上,這是直接使用電路模組的好處。
千變?nèi)f化霓虹燈
你可以使用 mBlock 中的“設(shè)置 LED”方塊,指定要控制哪個(gè) LED:

這邊就來設(shè)計(jì)個(gè)隨機(jī)選定顏色的霓虹燈,首先寫個(gè)隨機(jī)設(shè)定 RGB 變數(shù)的randomRGB方塊:

雖說 LED 只有 RGB 三色,但是通過不同亮度混合,就可以創(chuàng)造出各種色彩,亮度設(shè)定是通過?Me RGB 模組本身電路來控制,因此,只要標(biāo)示有黃色的端口(3 到 8)都可以使用,例如,將 Me RGB 模組與端口?3 接在一起,然后撰寫以下程式:

接下來,只要重復(fù)執(zhí)行隨機(jī)顏色與設(shè)定 LED 就可以了:

點(diǎn)選一下 mBlock 上的綠旗,你就可以看到不斷變化顏色的 LED 秀了,如果想將程式直接燒錄至板子上,只要將綠旗方塊換為“Arduino 主程式”或是“Makeblock 主程式”方塊,然后執(zhí)行“編輯/Arduino mode”,按下“上傳至 Arduino”就可以了,

注意!因?yàn)?Arduino 上傳程式時(shí)不支持中文,因此,你的變數(shù)或自定義方塊不能是中文命名,這樣才能順利編譯并上傳至 Arduino。
燈光版打地鼠
因?yàn)橛兴膫€(gè) RGB LED,那么就來設(shè)計(jì)一個(gè)燈光版打地鼠好了,當(dāng)某個(gè)燈亮?xí)r,按下鍵盤上對(duì)應(yīng)的方向鍵就可以得分,為了增加點(diǎn)聲音效果,我們來加個(gè)蜂鳴器,不過,雖然板子上有個(gè)蜂鳴器,但是在 mBlock 中無法直接控制它,那么就來自自制蜂鳴器模組好了,很簡單,只要將你的蜂鳴器兩個(gè)腳位,分別插入 Me RJ25 轉(zhuǎn)接器上的 GND 與 S1 或 S2 孔就可以了,例如,我接在 GND 與 S1 孔:

這個(gè)蜂鳴器模組我將之連接至端口4 上頭,因此,為了控制蜂鳴器,程式中就必須指定腳位 8,例如,在游戲開始前,來個(gè)倒數(shù)計(jì)時(shí)并加上聲音:

接下來游戲開始,每次隨時(shí)選擇一個(gè) LED 顯示為藍(lán)色,停留一秒可以讓玩家按下鍵盤方向鍵,然后重設(shè) LED,可以看到,我的 Me LED 模組是接至端口3:

我沒有將方向鍵判斷寫在上頭,而是事件來觸發(fā),這樣子程式才不會(huì)冗長難閱讀:

打中的時(shí)候,會(huì)發(fā)出聲音,并累積分?jǐn)?shù),注意!打錯(cuò)了或是重復(fù)打擊是會(huì)扣分的喔!… XD
游戲結(jié)束時(shí),會(huì)顯示總分并播放音效:

最后,來個(gè)主程式,將整個(gè)程式串起來:

來看看實(shí)際的執(zhí)行效果吧!
感謝CodeData用戶:caterpillar的貢獻(xiàn) 著作權(quán)歸作者所有
整理:寧波家電物聯(lián)網(wǎng)云平臺(tái),中科極動(dòng)云
CONTACT US: http://www.iot-jd.com/