I/O Board的基本教學,如何將micro:bit program加入

micro:bit I/O board 是一款 micro:bit 的 extension board , 能夠接駁 5V output 及 3.3 V 的 Input , 最多能夠一次接駁8個output ( 4 motors ) 及 6 Input , I2C connection , 供電方面則能以4.5 - 9V電池供電。

圖左方的是 I/O F5 version , 接駁位為 fischertechnik 的紅綠頭 ,

圖右方的是 I/O T5 version , 接駁位為 jumper wire .

I/O board 詳細說明 :

電源位置 POWER SUPPLY - BATTERY 留意正負極,主要用4粒AA的電盒(6V)/FT電盒  

電源位置 POWER SUPPLY - ADAPTER 可以直接駁9V電池使用,也可用直流電  

M1,M2,M3,M4  為OUTPUT ,是 BBC  micro:bit 的P8 - P16 ( 可接駁 : 馬達、燈泡)

I1 - I6  用於輸入裝置,是BBC micro:bit 的P0 , P1 , P2 , P3, P4 和 P5 (可接駁 : light sensor)  

5V OUTPUT 用作提供電源給SENSOR,複雜的IN/OUTPUT ( 例如 : Ultrasonic sensor)

I2C 是 SDA/SCL 2條線路 , 是 BBC micro:bit 的 P19,P20 , 是用作接駁一些複雜的 In/Output , I2C 能讓原本需7-8個Pins的複雜裝置簡化成 SDA/SCL 2個Pins 來接駁 ( 例如 : LCD1602 顯示器)

編程方法 :

首先在瀏覽器輸入 https://makecode.microbit.org/ 來進行編程。

1. 先按下Advanced 進階

2. 找到Pins 腳位

3. 找需要的編程

digital read pin 主要用於INPUT

digital write pin 主要用於OUTPUT

digital 與 analog 的分別 :

analog 是可以控制電流大小(0-1023) 0是沒有電流, 1023是最大電流。

digital 是純粹開啟和關閉(1和0) , 0是沒有電流, 1是最大電流。

練習一 : 開啟 Motor

電線接駁方法 :

P13/P14 : Motor 馬達

黑色供電位 : 9V電池

編程教學 :

Microsoft MakeCode for micro:bit - Mozilla Firefox

首先我們在on start 上加入show icon, 內容隨意設計。

目的是當開電源時看到micro:bit LED燈亮了, 證明micro:bit 正常運作。

Microsoft MakeCode for micro:bit - Mozilla Firefox

on button A pressed , 然後加入 digital write pin P13 = 1 , P14 = 0

控制電流以1為正極, 0為負極。1/0 和0/1都是可以運行。

為何是 P13/P14 ?

因為我們插線時把Motor插至 IO board的P13/P14。

Q : 載入編程到MICRO:BIT後 , 按下button A 看看Motor有什麼反應?

A: Motor 會以轉動起來 , 但需長按button A 才能保持時間轉動。

練習二.加入秒數讓Motor運行長時間

Microsoft MakeCode for micro:bit - Mozilla Firefox

加入 pause ms (5000) 後 , 按下 Button A後 , Motor便會保持轉動5秒。

練習三. 停下Motor

Microsoft MakeCode for micro:bit - Mozilla Firefox

把 P13/P14 都寫成 0 , 然後利用Button B 來發出指令。

當 P13/P14 都是 0 的時候 , 沒有電流會供至Motor , Motor便會停下。

練習四.改變Motor的轉動方向

Microsoft MakeCode for micro:bit - Mozilla Firefox

剛才 Motor是以 P13 = 1 的方向轉動 , 這次我們供電至 P14 , 把P14 寫成 1 ;

Motor 的轉動方向會改變。

練習五. 改變 Motor的速度

Microsoft MakeCode for micro:bit - Mozilla Firefox

使用analog write pin的話可以改變電流的大小,從而改變馬達的速度.

analog的數值為 0 - 1023 , 0是沒有電流, 1023是最大電流。

Goolge Doc 版本 :