生活中,您是否有注意到有些燈光除了「開關」與「閃爍」外,還有如同「呼吸」一樣的變化呢?「呼吸」的意思是指,像波浪一樣有著高低起伏,應用在燈光上,就會變成漸漸變亮與漸漸變暗的效果。今天要為大家介紹使用Micro:bit控制BOSON燈條,達到「呼吸燈」的效果。
作者/攝影 |
撰寫:郭皇甫攝影:郭皇甫 |
文章分類 | 教學技術文 |
時間 | 30mins |
成本 | |
難度 | **(1~10) |
材料表 |
請先將Micro:bit與Micro:bit擴充板準備好,接著將「彩色LED燈條模組」接上P1引腳。硬體設置好後,就可開始編寫程式,程式的概念很簡單,我們要做到的是讓燈條亮度慢慢增加,再慢慢減少,並且一直重複這個模式,請依照下列步驟進行:
Step1:初始化引腳與變數。首先找到【變數】→【建立變數】,將新變數命名為「light」後,找到「變數item設為0」方塊,設定item為light,並將方塊放入「當啟動時」內。接著找到【引腳】→「類比信號寫入」與「對應…從低…從高…到低…到高」方塊,將「引腳」改為P1,並將「對應…從低…從高…到低…到高」方塊放入「類比信號寫入」的「數字」內,並設定好「對應…」方塊內的數值(如圖2所示)
Step2:重複燈條漸亮、漸暗。要讓燈條達到漸亮的效果,您可以從「如何讓數值變大」的方向來思考。首先,引腳的數值決定了燈條的亮度,若數值愈大,燈條的亮度愈高,而在Step1時,我們已經將P1的腳位數值對應到「變數light」中,並且將數值範圍從0~1023改為0~255,這樣的方式也可以讓數字變得較好計算。所以,當「變數light」的數字為0,亮度最小,反之亮度最大。瞭解後,我們要來做一些簡單的加減運算。
a.變數light每次加5。從【變數】找到「變數設為」與「light」方塊,並將item改為light;從【數學】找到「+」方塊,並接在「變數設為」方塊的後方,將「+」後方的數字改為5。(如圖4所示)
b.變數light每次減5。與上述唯一不同的地方是使用「-」方塊,而不是「+」方塊。(如圖5所示)
c.重複次數。不論是加5或是減5,只要各重複51次,即能達到最大255與最小0,因此,請找到【迴圈】裡的「重複…次…執行」,將次數改為51。(如圖6所示)
d.數位引腳讀取數字。將變數light的數字設定好重複執行累加與累減後,我們還要將變數light每次得到的數字放進P1腳位裡,所以在這邊我們放進「類比信號寫入」的方塊,將「引腳」改為P1、「數字」改為「light」。(如圖7所示)
e.加入延遲秒數。最後,我們從【基本】找到「暫停(ms)」方塊,將數字改為30,並接在「類比信號寫入」的下方。(如圖8所示)
最後,完整的程式碼如下:
將程式碼下載到Micro:bit上,看看燈條是否會漸亮、漸暗了呢?您也可以試著使用BOSON的旋鈕直按控制燈條,也能達到漸亮、漸暗的效果喔!今天的介紹就到這邊,下次還會有哪些好玩的應用呢?敬請期待喔!