[ Micro:bit ] 平衡球教學

任務目標

  • 目標球的位置隨機產生
  • 移動來源球來到碰觸目標球即獲勝

學習目標

  • 程式進入點
  • 角色位置、移動
  • 隨機產生
  • 加速度感測值取得
  • 條件判斷
  • 變數
  • 迴圈
  • 暫停
  • Blockly 語法

前置準備

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

使用料件

  • Micro:bit
  • Micro USB Cable

平衡球程式邏輯

程式啟動時
   設定我所在的位置於 (2,2)
   設定目標所在的位置隨機產生 0 ~ 4 間的數

持續執行
    如果我所在位置等於目標所在位置,則重新度定目標所在的位置隨機產生 0 ~ 4 間的數
    否則如果加速度感測值的 x 軸大於 0,則將我的 x 軸 + 1 並暫停 0.1 秒
    否則如果加速度感測值的 x 軸小於 0,則將我的 x 軸 - 1 並暫停 0.1 秒
    否則如果加速度感測值的 y 軸大於 0,則將我的 y 軸 + 1 並暫停 0.1 秒
    否則如果加速度感測值的 y 軸小於 0,則將我的 y 軸 - 1 並暫停 0.1 秒

平衡球程式撰寫

一、Blockly 語法

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


Step 2. 撰寫 Blockly 程式
❖ 2.1  依平衡球程式邏輯進行 Blockly 程式撰寫

※ 程式說明 ※

當程式啟動時
    ① 宣告 me 的變數,並設定所在的位置於 (2,2)
    ② 宣告 target 的變數,並設定所在的位置隨機產生 0 ~ 4 間的數

持續執行
    如果 me 所在位置等於 target 所在位置,則
        重新度定 target 所在的位置隨機產生 0 ~ 4 間的數
    否則如果加速度感測值的 x 軸大於 0,則
        將 me 的 x 軸 + 1 並暫停 0.1 秒
    否則如果加速度感測值的 x 軸小於 0,則
        將 me 的 x 軸 - 1 並暫停 0.1 秒
    否則如果加速度感測值的 y 軸大於 0,則
        將 me 的 y 軸 + 1 並暫停 0.1 秒
    否則如果加速度感測值的 y 軸小於 0,則
        將 me 的 y 軸 - 1 並暫停 0.1 秒

Step 3. 燒錄程式到 Micro:bit

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

Step 4. 成果

偵測東、西、南、北的指南針


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