2018年7月10日 星期二

[Micro:bit] 蒸汽彼特(STEAM on Micro:bit)之創意發明王養成班教材──主題8:小彼特許願樹

蒸汽彼特(STEAM on Micro:bit)

之創意發明王養成班教材[1]

主題8:小彼特許願樹


FB2http://gg.gg/TedLeeMicrobitFB/
URL2http://gg.gg/TedLeeMicrobit/

Line:ted2016.kpvs
Email:Lct4246@gmail.com
FB1http://gg.gg/TedLeeFB/
Bloghttp://gg.gg/TedLeeBlog/
URL1http://gg.gg/TedLeeURL/

July 10, 2018
88x31.png[2]

難易度(Difficulty)

★★★★☆

任務

萬能的彼特大神啊,請幫我實現三個願望吧!
(利用擴充板外接的LED(Light Emitting Diode,發光二極体)來展示許願的过程與結果。

學習鷹架

許願樹長成啥樣哩?看看香港的林村許願樹(123。那台灣人是如何許願的呢?請看

材料

品名 數量 單位
Micro:bit主板 1
USB傳輸線 1
KSB040鋰電也擴充板 1
CM-4 4號嬌點整理盒 1
LED 3
KSB034 IO擴充板 1
鋁箔紙 1
杜邦線(母母,20 cm 5
    • 共用工具組:熱溶膠、剪刀、美工刀、油性筆、透明膠帶、雙面膠、膠水、白膠、鐵尺、切割墊若干。

    解說 

    1. 外觀設計:利用对稱原理,在稿紙上畫出半邊許願樹的外框,对摺後再描出另外半邊。然後,以油性筆畫樹的外觀,並將LED放置适當的位置
    2. 硬体接線
      KSB034 LED1 LED2 LED3
      P1 長腳
      P2 長腳
      P12 長腳
      GND 短腳 短腳 短腳
    3. 功能程式碼
      程式初始化(initialization)顯示開機畫面後,將LED1-3関鍵,並將lucky_no清為零。

      按鈕A許第一個願望。

      按鈕B許第二個願望。

      按鈕A+B許第三個願望,並祈求老天爺應允──呼叫老天爺副程式(subroutine)makeAWish。

      副程式makeAWish:隨機產生一個0-3的乱數lucky_no(lucky_no=0~3),表示共n個願望可以成真,並響n次音效。

      完整程式碼
    1. let lucky_no = 0
    2. input.onButtonPressed(Button.A, () => {
    3.     pins.digitalWritePin(DigitalPin.P1, 1)
    4. })
    5. input.onButtonPressed(Button.B, () => {
    6.     pins.digitalWritePin(DigitalPin.P2, 1)
    7. })
    8. input.onButtonPressed(Button.AB, () => {
    9.     pins.digitalWritePin(DigitalPin.P12, 1)
    10.     makeAWish()
    11. })
    12. function makeAWish()  {
    13.     lucky_no = Math.random(4)
    14.     basic.showNumber(lucky_no)
    15.     for (let i = 0; i < lucky_no; i++) {
    16.         music.beginMelody(music.builtInMelody(Melodies.BaDing), MelodyOptions.Once)
    17.         basic.pause(2000)
    18.     }
    19. }
    20. basic.showIcon(IconNames.Surprised)
    21. pins.digitalWritePin(DigitalPin.P1, 0)
    22. pins.digitalWritePin(DigitalPin.P2, 0)
    23. pins.digitalWritePin(DigitalPin.P12, 0)
    24. lucky_no = 0

      學員作品选粹

      文山教育基金會2018夏令營隊第C1C2梯。

      教學活動設計

      1. 活動1:增加許願數,誏小彼特外接最多的LED。
      2. 活動2:如果想要外接的LED數目超过小彼特所能提供的I/O接腳數時,可以如何處理?
      3. 活動3:再增加一塊小彼特來玩小彼特許願樹無限/線版,參考程式碼:RXTX
      4. 活動4:在許願前播放一段轉盤灯秀,製造懸疑的氣氛。

        積木指标

        Basic、Input、Functions、Variables、Loops、Music、Input。

        編程指标

        副程式、乱數、重覆結構(repetitive structure)非同步事件處理(asynchronous event handling)

        硬体指标

        GPIO控制、LED元件。

          STEAM指標
          TEAM。

          和108課綱的对照

          • 科技領域核心素養:科-J-A2 具備理解情境與獨立思考的能力,並運用適當科技工具與策略處理,以解決並處理生活問題與生命議題。
          • 科技領域/資訊科技學習重點
            • 學習表現:資t-IV-1 能了解資訊系統的基本組成架構與運算原理。
            • 學習內容:資P-IV-2 結構化程式設計。

                参考資料
                1. 本PBL教材皆採:任務解說(含筆者多年教學經驗分享)、教學活動設計三大段的寫作架構撰文。
                2. 六種授權條款

                沒有留言: