使用Arduino開發BBC micro:bit(一):環境設定

BBC micro:bit是一款採用32位元ARM核心晶片的微電腦控制實驗板,板子的正面有25個LED和兩個按鍵,背面則有微控制器和感測器IC。

BBC micro:bit控制板背面

BBC(英國廣播公司,British Broadcasting Corporation)是一家獨立運作的公共媒體機構,曾在1980年代推出“BBC Micro”系列個人電腦,是英國資訊教育的主要推手之一。BBC Micro電腦由Acorn Computers(艾康電腦)開發製造,現在大家熟知、廣泛用於手機和3C產品的ARM處理器,最早也是由這家公司研發出來的。

micro:bit是BBC “Make it Digital”數位紮根教育計畫中的一環,這項計畫集結了世界29個軟硬體大廠和機構,包括ARM, Freescale, Nordic Semiconductor, 微軟、三星、Lancaster大學…等等。2016年時,每一位在英國就讀7年級的小朋友,都能免費獲贈一片micro:bit。

板子上的大腦是由Nordic(諾迪克半導體)公司研發,整合了ARM處理器、記憶體、週邊控制器和低功耗藍牙通訊的nRF51系列系統晶片(System on Chip,簡稱SoC);Nordic是總部位於奧斯陸的挪威半導體公司,專長和主力產品是無線射頻(RF)以及低功耗無線通訊(如:藍牙)。

使用Arduino開發micro:bit程式

BBC提供micro:bit圖像式開發環境,方便小朋友或初次接觸微電腦的人士,使用滑鼠拖拉的方式完成專案;對高年級或具電腦背景的使用者,BBC也提供JavaScript和Python (MicroPython) 程式開發環境。

住在加拿大渥太華的程式設計師Sandeep Mistry開發了一個 “arduino-nRF5” 核心套件,讓人們得以用Arduino編寫micro:bit,和其他採用Nordic nRF51和nRF52系列晶片的微控制板的程式。如此,micro:bit也就納入Arduino平台,享用其豐富的軟硬體模組和程式庫資源。

底下的安裝步驟摘譯自“arduino-nRF5”說明文件和Adafruit的Program your micro:bit with Arduino!

  1. 在Arduino IDE的偏好設定面板的「額外的開發板管理員網址」欄位,加入這個網址:https://sandeepmistry.github.io/arduino-nRF5/package_nRF5_boards_index.json 額外的開發板管理員網址
  2. 選擇「工具→開發板→開發板管理員」,搜尋“nordicc nrf5”關鍵字,再點擊「安裝」搜尋到的“Nordic Semiconductor nRF5 Boards”: Nordic Semiconductor nRF5 Boards
  3. 用USB線連接micro:bit和電腦,Windows 10系統會自動安裝驅動程式,macOS和Linux則無須安裝驅動程式,Windows 7則須手動安裝mbed序列埠驅動程式;micro:bit將被電腦識別成一個「隨身碟」。
  4. 下載SoftDevice(直譯為「軟體裝置」,簡稱SD,相當於控制板的藍牙驅動程式)並將它拖入micro:bit「隨身碟」,micro:bit將把SD檔燒入控制板的記憶體。

全部準備就緒後,在Arduino IDE的「工具」主功能表,選擇 “BBC micro:bit” 控制板、SoftDevice選擇“S110”版,以及micro:bit所在的序列埠:

Arduino IDE micro:bit

在編輯器中輸入底下的「閃爍LED」程式:

const byte COL1 = 3;     // 第一行LED的控制腳
const byte LED = 26;     // 第一列LED的控制腳

void setup() {  
  pinMode(COL1, OUTPUT);
  digitalWrite(COL1, LOW); 
  pinMode(LED, OUTPUT);
}

void loop(){  
  digitalWrite(LED, HIGH);
  delay(500);
  digitalWrite(LED, LOW);
  delay(500);
}

micro:bit控制板1.3版的電路圖(PDF格式)可看出,把LED矩陣的第一行(col 1)接地、第一列(row 1)輸入高電位,即可點亮左上角的第一個LED:

micro:bit LED矩陣電路

編譯程式並上傳到micro:bit控制板的結果:

閃爍micro:bit的第一個LED

Posts created 468

One thought on “使用Arduino開發BBC micro:bit(一):環境設定

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

Related Posts

Begin typing your search term above and press enter to search. Press ESC to cancel.

Back To Top