2011年9月8日 星期四

metaboard

什麼是 Metaboard ?

Metaboard 是一個 USB 介面的 AVR 產品雛型開發板 (prototyping board),它的設計跟 Arduino 幾乎完全相容, 而且硬體和韌體都是 Open Source 的。

image
▲ Metaboard 的外觀

Metaboard 特色如下:

  • 複雜度低,而且超便宜
  • 單層印刷電路 (Single Sided PCB),因此可以在家裏自行製作板子。
  • 沒用到 SMD 元件,容易組裝
  • 板子尺寸與 connector layout 跟 Arduino 幾乎完全相容,而且也可以透過 USB 介面用 Arduino IDE 上傳韌體
  • 支援 USB,因此可以實作諸如 keyboards, Mice, Joysticks 等 USB 裝置。
  • 硬體和韌體完全 Open Source
硬體電路

Metaboard 的電路圖如下:

image

韌體

Metaboard 最適合搭配 USBaspLoader 使用,USBaspLoader 會模擬 USBasp 燒錄器。

整合 Metaboard 與 Arduino

為了從 Arduino IDE 上傳韌體到 Metaboard,你必須調整 "arduino-00xx/hardware/boards.txt",把底下這串設定加到 boards.txt 中:

其中一組是 ATmega168 的設定,另一組是 ATmega328p 的設定,請自行選擇。調整好 boards.txt 的設定後, Arduino IDE 選單「Tools > Board」底下就會多出 Metaboard 可供使用:

image

Metaboard 與 Arduino 的差別

Metaboard 幾乎跟 Arduino 完全相容,不過還是有些不一樣的地方:

  • 韌體上傳程序:Metaboard 需要一個用來選擇 bootloader mode 的 jumper,而且必須按下 reset 鍵才能切到 bootloader。
  • 上傳協定:Metaboard 模擬 USBasp,而非 Arduino 的 STK500 協定。
  • USB 介面:Metaboard 使用 USB 介面,這代表 Metaboard 可以用來實作諸如 keyboards, Mice, Joysticks 等 USB 裝置,不過 Metaboard 沒辦法直接用 USART 與電腦進行序列通訊。
延伸閱讀

2 意見:

GCY 提到...

之前有想做不過沒什麼時間做了XD

coopermaa 提到...

拿 Arduino 來改一改也可以啊