在〈mBlock & Arduino(23)使用 Me 搖桿模組打地鼠〉中的計分顯示是透過 Scratch 貓咪來顯示,Makeblock 提供七段顯示器模組,有四個顯示位數,我們試著使用它來作為計分顯示:
Me 七段顯示器時鐘
Me 七段顯示器實際上可以透過程式來調整亮度、個別指定數字顯示等,不過,這些得在 Arduino IDE 中撰寫程式才能控制,在 mBlock 中提供的「設置顯示器方塊」,只能指定數字顯示,若為整數但不足四位,還會自動附上小數點,如果你指定數字 1,那麼會顯示 1.000,如果指定數字 23,那麼會顯示數字 23.00:
沒辦法指定個別數字的話,在 mBlock 中可發揮的功能就受到些限制,不過,還是可以用程式來作些處理,舉例來說,想要製作個時鐘的話,可以如下:
簡單來說,這個程式會將「小時」與「分鐘」處理為小數形式,例如 10 點 20 分的話,就使用小數 10.20。
比較麻煩的是小時的部份,如果小時不是兩位數的話,例如 9 點 30 分的話,若以小數 9.30 表示,那七段顯示器會顯示為 9.300,這樣子不好看,因此,在這種情況下,我乘上負號,以 -9.30 表示,顯示起來的效果也還不錯;為了有讀秒的效果,我希望小數點會閃動,這只要乘上 100,也就是將之變為整數就可以了,來看看顯示的效果:
Me 七段顯示器計分板
接著就來為〈mBlock & Arduino(23)使用 Me 搖桿模組打地鼠〉加上七段顯示器,作為計分板之用,在這之前,請將〈mBlock & Arduino(23)使用 Me 搖桿模組打地鼠〉中的搖桿改接至連接埠 7,然後再將七段顯示器接至連接埠 6!
為什麼?七段顯示器不是被標示為藍色,可以接在連接埠 5 嗎?如果你的 mBlock 使用 USB 連接控制板子就不行!
因為連接埠 5 中的腳位是對應 TX、RX,記得〈mBlock & Arduino(21)使用 Me 藍牙模組〉中的說明嗎?預設 TX、RX 是作為 USB 模擬串列埠時使用,因此若使用了 USB 連接板子傳送資料,就不能使用這兩個腳位,當然,如果使用 Me 藍芽模組也就不行用連接埠 5 了,連接埠 5 只有在程式燒錄至板子,且未使用 Me 藍芽模組下,才有機會使用了。
這就是為什麼我們要將搖桿移至連接埠 7,將連接埠 6 讓給七段顯示器使用的原因,反正搖桿是標示為灰色,連接埠 7 當然可以使用!
接著只要將〈mBlock & Arduino(23)使用 Me 搖桿模組打地鼠〉的程式中,有「顯示」方塊的部份,改為七段顯示器就可以了,例如「開始前倒數」:
「遊戲開始」的部份,改為只顯示得分:
其實也可以實作出倒數的部份,方式可彷照上頭時鐘程式,將得分與倒數處理為小數形式,這個留給你自己試試看囉!
最後,「遊戲結束」也改為七段顯示器:
接下來,你就可以執行程式了,這就是使用電路模組的好處,對於擅長程式而不擅長電子電路的人來說,可以快速地實現想法,想想看,如果自己接這些線路,會是怎麼接呢?有機會也可以試試看,這會是個很好的練習,如果你對電子電路的實現有興趣的話!