[ Micro:bit ] 電子骰仔教學

任務目標

透過 Micro:bit 上透過搖晃取得骰子點數並顯示於 LED。


學習目標

  • 遙動偵測
  • 條件判斷
  • 變數
  • 亂數產生
  • 迴圈
  • LED 顯示與清空
  • 暫停
  • Blockly 語法
  • Python 語法

前置準備

  • 一台電腦
  • 覽瀏器 ( 本範例使用 Chrome )

使用料件

  • Micro:bit
  • Micro USB Cable

電子骰仔程式邏輯

當偵測到搖動時
       隨機產生 1 ~ 6 之間的數
       如果隨機數等於 1,則
              LED 顯示 1 點
       否則如果隨機數等於 2,則
              LED 顯示 2 點
       否則如果隨機數等於 3,則
              LED 顯示 3 點
       否則如果隨機數等於 4,則
              LED 顯示 4 點
       否則如果隨機數等於 5,則
              LED 顯示 5 點
       其他情況
              LED 顯示 6 點

電子骰仔程式撰寫

一、Blockly 語法

Step 1. 開啟線上編輯器
❖ 1.1  開啟瀏覽器並輸入下方網址
       https://makecode.microbit.org/#


Step 2. 撰寫 Blockly 程式
❖ 2.1  依電子骰仔程式邏輯進行 Blockly 程式撰寫

※ 程式說明 ※

【 當手勢發生晃動 】方塊:代表使用者要執行此區塊中的程式
【 變數 設為 】方塊:宣告一個 randomNo 的變數,並透過亂數產一 1 ~ 6 間的數
【 如果 那麼 】方塊:依 randomNo 的變數值顯示相對應的點數於 LED 上

Step 3. 燒錄程式到 Micro:bit

❖ 3.1  ① 將所撰寫的程式命名
       ② 儲存所撰寫的 Blockly 程式到電腦中
       ③ 將上一步驟中的程式移到 Micro:bit 進行燒錄
       ④ 在 Micro:bit 上進行測試

Step 4. 成果

透過 Micro:bit 上透過搖晃取得骰子點數並顯示於 LED


二、Python 語法

Step 1. 開啟線上編輯器
❖ 1.1  開啟瀏覽器並輸入下方網址
       https://python.microbit.org/v/1


Step 2. 撰寫 Python 程式
❖ 2.1  依電子骰仔程式邏輯進行 Python 程式撰寫

※ 程式說明 ※

第 1 行:程式注解最前面以 【 # 】字符號代表,注解請勿使用中文
第 2 行:匯入 micro:bit 套件
第 3 行:在 LED 上顯示【 - 】
第 7 行:① 【 while 】代表 Pyhton 的迴圈,
            True 代表條件為真、False 代表條件為假,
            此行代表 【 持續不斷執行的迴圈 】
        ② 以【 : 】做結尾
第 8 行:① 以 【 Tab 】 鍵為縮排代表是在迴圈中的事件
        ② 如果偵測到晃動
        ③ 以【 : 】做結尾
第 9 行:① 以 【 Tab 】 鍵為縮排代表是在偵測到晃動的事件
        ② 清空畫面
第 10 行:① 以 【 Tab 】 鍵為縮排代表是在偵測到晃動的事件
         ② 暫停 1 秒鐘, 
          1000 毫秒 ( milliseconds ) = 1 秒 ( seconds )
第 11 行:① 以 【 Tab 】 鍵為縮排代表是在偵測到晃動的事件
         ② 在 LED 上顯示點數
第 12 行:① 以 【 Tab 】 鍵為縮排代表是在迴圈中的事件
         ② 暫停 0.01 秒鐘, 
          10 毫秒 ( milliseconds ) = 0.01 秒 ( seconds )

Step 3. 燒錄程式到 Micro:bit

❖ 3.1  ① 將所撰寫的程式命名
       ② 儲存所撰寫 Python 的 hex 程式到電腦中
       ③ 將上一步驟中的程式移到 Micro:bit 進行燒錄
       ④ 在 Micro:bit 上進行測試

Step 4. 成果

透過 Micro:bit 上透過搖晃取得骰子點數並顯示於 LED


GitHub
【 GitHub Blockly 】 https://github.com/ArcherHuang/Micro-bit/tree/master/Game/Blockly
【 GitHub Python  】 https://github.com/ArcherHuang/Micro-bit/tree/master/Game/Python
【      Name      】 microbit-Dice
List of blogs
ALL RIGHTS RESERVED. COPYRIGHT © 2018. Designed and Coded by Makee.io