IOT(Internet of Things) Using Arduino MCU ABC - Session 2
Arduino MCU(8/16 位元微型控制板), 是義大利開發的
開放原始碼(open source)
的軟硬體平台, 所以有很多國家的工廠在生產, 同樣規格或變更/加強 Arduino 原始規格的微型控制(MCU)電子元件/線路的複製或改良的微控制板(MCU).
由於使用者的不同實驗目的或生產產品的功能定位, 所以Arduino AVR 有一系列的不同規格的微型控制板(MCU), 大概可分為以下幾種系列 Uno, Mega2560, Duemilanove, Mega, or Diecimila ..等(請參考原廠的 MCU & Accessory Series 介紹, 其網址如右所示: Arduino.cc Hardware Reference):
Name | Processor | Operating Voltage/Input Voltage | CPU Speed | Analog In/Out | Digital
IO/PWM | EEPROM[KB] | SRAM[KB] | Flash[KB] | USB | UART |
Uno | ATmega328 | 5V/7-12V | 16Mhz | 6/0 | 14/6 | 1 | 2 | 32 | Regular | 1 |
Due | AT91SAM3X8E | 3.3V/7-12V | 84Mhz | 6/0 | 54/15 | - | 96 | 512 | 2 Micro | 4 |
Leonardo | ATmega32u4 | 5V/7-12V | 16Mhz | 6/0 | 54/15 | 1 | 2.5 | 32 | Micro | 1 |
Mega2560 | ATmega2560 | 5V/7-12V | 16Mhz | 16/0 | 54/15 | 4 | 8 | 256 | Regular | 4 |
Mega ADK | ATmega2560 | 5V/7-12V | 16Mhz | 16/0 | 54/15 | 4 | 8 | 256 | Regular | 4 |
Micro | ATmega32u4 | 5V/7-12V | 16Mhz | 12/0 | 20/7 | 1 | 2.5 | 32 | Micro | 1 |
Mini | ATmega328 | 5V/7-9V | 16Mhz | 8/0 | 14/6 | 1 | 2 | 32 | - | - |
Nano | ATmega168 | 5V/7-9V | 16Mhz | 8/0 | 14/6 | 0.512 | 1 | 16 | Mini-B | 1 |
Nano | ATmega328 | 5V/7-9V | 16Mhz | 8/0 | 14/6 | 1 | 2 | 32 | Mini-B | 1 |
Ethernet | ATmega328 | 5V/7-12V | 16Mhz | 6/0 | 14/4 | 1 | 2 | 32 | Regular | - |
Esplora | ATmega32u4 | 5V/7-12V | 16Mhz | - | - | 1 | 2.5 | 32 | Micro | - |
ArduinoBT | ATmega328 | 5V/2.5-12V | 16Mhz | 6/0 | 14/6 | 1 | 2 | 32 | - | 1 |
Fio | ATmega328P | 3.3V/3.7-7V | 8Mhz | 8/0 | 14/6 | 1 | 2 | 32 | Mini | 1 |
Pro (168) | ATmega168 | 3.3V/3.35-12V | 8Mhz | 6/0 | 14/6 | 0.512 | 1 | 16 | - | 1 |
Pro (328) | ATmega328 | 5 V/5-12V | 16Mhz | 6/0 | 14/6 | 1 | 2 | 32 | - | 1 |
Pro Mini | ATmega168 | 3.3V/3.35-12V | 8Mhz | 6/0 | 14/6 | 0.512 | 1 | 16 | - | 1 |
Pro Mini | ATmega168 | 5V/5-12V | 16Mhz | 6/0 | 14/6 | 0.512 | 1 | 16 | - | 1 |
LilyPad | ATmega168V | 2.7-5.5V | 8Mhz | 6/0 | 14/6 | 0.512 | 1 | 16 | - | - |
LilyPad | ATmega328V | 2.7-5.5V | 8Mhz | 6/0 | 14/6 | 0.512 | 1 | 16 | - | - |
LilyPad USB | ATmega32u4 | 3.3V/3.8-5V | 8Mhz | 4/0 | 9/4 | 1 | 2.5 | 32 | Micro | - |
LilyPadSimple | ATmega328 | 2.7-5.5V/2.7-5.5V | 8Mhz | 4/0 | 9/4 | 1 | 2 | 32 | - | - |
LilyPadSimpleSnap | ATmega328 | 2.7-5.5V/2.7-5.5V | 8Mhz | 4/0 | 9/4 | 1 | 2 | 32 | - | - |
Yún(Dual CPU MCU) ATmega32u4 5V/5V 16Mhz 12/0 20/7 1 2.5 32Type-A
Atheros AR9331
Uno | ATmega328 | 5V/7-12V | 16Mhz | 6/0 | 14/6 | 1 | 2 | 32 | Regular | 1 |
Due | AT91SAM3X8E | 3.3V/7-12V | 84Mhz | 6/0 | 54/15 | - | 96 | 512 | 2 Micro | 4 |
Leonardo | ATmega32u4 | 5V/7-12V | 16Mhz | 6/0 | 54/15 | 1 | 2.5 | 32 | Micro | 1 |
Mega2560 | ATmega2560 | 5V/7-12V | 16Mhz | 16/0 | 54/15 | 4 | 8 | 256 | Regular | 4 |
Mega ADK | ATmega2560 | 5V/7-12V | 16Mhz | 16/0 | 54/15 | 4 | 8 | 256 | Regular | 4 |
Micro | ATmega32u4 | 5V/7-12V | 16Mhz | 12/0 | 20/7 | 1 | 2.5 | 32 | Micro | 1 |
Mini | ATmega328 | 5V/7-9V | 16Mhz | 8/0 | 14/6 | 1 | 2 | 32 | - | - |
Nano | ATmega168 | 5V/7-9V | 16Mhz | 8/0 | 14/6 | 0.512 | 1 | 16 | Mini-B | 1 |
Nano | ATmega328 | 5V/7-9V | 16Mhz | 8/0 | 14/6 | 1 | 2 | 32 | Mini-B | 1 |
Ethernet | ATmega328 | 5V/7-12V | 16Mhz | 6/0 | 14/4 | 1 | 2 | 32 | Regular | - |
Esplora | ATmega32u4 | 5V/7-12V | 16Mhz | - | - | 1 | 2.5 | 32 | Micro | - |
ArduinoBT | ATmega328 | 5V/2.5-12V | 16Mhz | 6/0 | 14/6 | 1 | 2 | 32 | - | 1 |
Fio | ATmega328P | 3.3V/3.7-7V | 8Mhz | 8/0 | 14/6 | 1 | 2 | 32 | Mini | 1 |
Pro (168) | ATmega168 | 3.3V/3.35-12V | 8Mhz | 6/0 | 14/6 | 0.512 | 1 | 16 | - | 1 |
Pro (328) | ATmega328 | 5 V/5-12V | 16Mhz | 6/0 | 14/6 | 1 | 2 | 32 | - | 1 |
Pro Mini | ATmega168 | 3.3V/3.35-12V | 8Mhz | 6/0 | 14/6 | 0.512 | 1 | 16 | - | 1 |
Pro Mini | ATmega168 | 5V/5-12V | 16Mhz | 6/0 | 14/6 | 0.512 | 1 | 16 | - | 1 |
LilyPad | ATmega168V | 2.7-5.5V | 8Mhz | 6/0 | 14/6 | 0.512 | 1 | 16 | - | - |
LilyPad | ATmega328V | 2.7-5.5V | 8Mhz | 6/0 | 14/6 | 0.512 | 1 | 16 | - | - |
LilyPad USB | ATmega32u4 | 3.3V/3.8-5V | 8Mhz | 4/0 | 9/4 | 1 | 2.5 | 32 | Micro | - |
LilyPadSimple | ATmega328 | 2.7-5.5V/2.7-5.5V | 8Mhz | 4/0 | 9/4 | 1 | 2 | 32 | - | - |
LilyPadSimpleSnap | ATmega328 | 2.7-5.5V/2.7-5.5V | 8Mhz | 4/0 | 9/4 | 1 | 2 | 32 | - | - |
Yún(Dual CPU MCU) ATmega32u4 5V/5V 16Mhz 12/0 20/7 1 2.5 32Type-A
Atheros AR9331 |
|
|
|
|
|
|
|
|
|
|
Linux microprocessor |
Processor | Atheros AR9331 |
Architecture | MIPS @400MHz |
Operating Voltage | 3.3V |
Ethernet | IEEE 802.3 10/100Mbit/s |
WiFi | IEEE 802.11b/g/n |
USB Type-A | 2.0 Host |
Card Reader | Micro-SD only |
RAM | 64 MB DDR2 |
Flash Memory | 16 MB |
Arduino MCU 區分了如此多的系列, 無非就是考量終端使用者的使用需求, 有些人需要外接的
控制元件的多寡
Arduino 的控制程式語言使用了類似 Java,C 語言的 Arduino Programming Language(Base on Processing / Wiring) 開發環境, 閣下可以使用官方的 Arduino IDE 程式控制碼編
譯軟體來編譯及下載到微控制板上(**不過有些微形控制板(MCU)是無法被直接下載已經編譯
的程式碼, 還需經過 RS-232 <-> USB 的線路轉換後, 才能從 Arduino IDE 下載至 MCU 上).