經過幾年 ESP8266 的專案開發經驗,其中也實作過一些 Arduino 案例,所以想留下一些 Arduino 的知識,以備之後不用常常再上網找相關資訊。在此留下一些 Arduino 的經驗談,作為給初學者的基本基礎知識。
每個部分有一些詳細的理論說明、摘要以及較高階的方法。初學者不需要全部都理解,重要的是開始動手做,在實作過程中學習才是最有效率的方式。
如果您是一個初學者,肯定過程中一定會有一些您不理解的地方。不用擔心,這是絕對正常的,所以先不要氣餒,只要持續在接下來的步驟中閱讀了其他範例,整體架構就會漸漸變得清晰起來,所以請不要放棄!
我也會提供一些相關 Arduino 的參考網頁、Wiki 和其他資源網頁連接。如果您想進一步了解某個主題,這些都是不錯的起點想法。同樣,如果您不了解這些主題中的任何一個,對於初學者來說也不用太擔心,一些邏輯可能讓你困惑,甚至使你沮喪。如果是這種情況,就先暫時跳過這些案例,但是不要放棄!
類似這樣的理論課程會是很有幫助,但是建議你還是要透過自己動手做實驗來學習。將此篇入門指南作為起點,作為參考,只要製作自己的實例,修改這邊提供給您的範例,嘗試新的想法,不懂的地方問問 Google,您的可能性會是無限的!
什麼是 Arduino?
首先第一件事情:Arduino 是什麼?
讓我們看一下 Arduino 網站 上的介紹:
『Arduino 是一個基於易於使用的硬體和軟體的開源電子平台。Arduino 開發板能夠讀取輸入(如感測器上的指示燈、手指按於按鍵上而送出的訊號或 Twitter 的訊息),接著再將訊息轉換為輸出(如啟動馬達、開啟 LED 或在網路上發佈訊息等)。您可以通過向 Arduino 控制板上的微控制器發送一組指令來告訴它該怎麼做。要達到這些功能,你必須學會使用基於 Wiring 的 Arduino 編輯程式語言,和基於 Processing 的 Arduino 開發工具(IDE)。』
這實際上說明了一切。您可以在 此處 找到官方的完整介紹。

(圖片來源:arduino.cc)
有關 Arduino Uno 控制板的規格:
Arduino 開發板本身是一塊藍色的電路板,大小相當於一張信用卡(也有其他尺寸的開發板,例如更小的 Arduino Nano 或功能更強的 Arduino Mega)。
以下是 Arduino Uno(最常見的入門型號)的主要規格:
| 規格項目 | 數值 |
|---|---|
| 微控制器 | ATmega328P |
| 工作電壓 | 5V |
| 輸入電壓(建議) | 7~12V(Vin 引腳) |
| 數位 I/O 引腳 | 14 個(其中 6 個支援 PWM 輸出) |
| 類比輸入引腳 | 6 個(10 位元解析度,0~1023) |
| 每引腳最大電流 | 40mA |
| Flash 記憶體 | 32KB(其中 0.5KB 用於 bootloader) |
| SRAM | 2KB |
| EEPROM | 1KB |
| 時脈速度 | 16MHz |
I/O 引腳(輸入/輸出)可以用作:
- 輸入引腳:連接按鈕或旋鈕、溫度感測器、光線感測器、甚至是鍵盤與滑鼠、數位樂器等。
- 輸出引腳:連接發光二極體(LED)、驅動馬達、在家中控制路燈、連接到小型顯示器、甚至連接到網際網路,以便它可以檢查你的郵件,發出鳴叫聲等。
透過 USB 連接,您也可以用它來控制您的電腦,或使用您的電腦來控制 Arduino。如您所見,應用是非常廣泛的!
您可以從 Arduino 官方商店 或 PCHome、蝦皮、露天等當地經銷商處購買 Arduino 開發板。
若要了解如何使用 Arduino 控制板,請查看 Arduino 官方部落格 或 Instructables 上的 Arduino 頻道。
開始之前:如何不燒掉 Arduino
在開始將撰寫完成的程式碼燒錄入 Arduino 之前,最好先了解會燒毀損壞電路板的幾種常見原因。以下這 12 點是每位 Arduino 初學者都必須牢記的安全守則:
- ❌ 每個引腳輸出超過 40mA 的電流
Arduino 的每個輸出引腳最大只能提供 40mA 的電流,因此,您不能直接驅動馬達或揚聲器,也不能在不串聯限流電阻的情況下直接連接 LED。一般 LED 的工作電流約為 10~20mA,請務必加上適當的限流電阻(例如 220Ω 或 330Ω)。
- ❌ 將輸出短路接到 +5V、+3.3V 或 GND 引腳
如果輸出引腳的電壓為 5V,而您直接將它接地,則會消耗大量電流,幾乎會立即燒毀您的 Arduino。
- ❌ 引腳直接接觸導電表面
確保不要將運作中的 Arduino 放在導電(金屬)表面上,因為這會使底部的引腳短路。建議放在防靜電泡棉或木頭墊板上。
- ❌ 所有輸出引腳的總電流超過 200mA
Arduino 上的 ATmega 控制晶片最多只能承載 200mA 的總電流。如果同時驅動多個高耗電設備(例如 10 個每個 20mA 的 LED),會損壞您的電路板。若需要驅動多個高電流設備,請使用電晶體或 MOSFET 驅動電路。
- ❌ 向輸入引腳提供超過工作電壓的電壓
向引腳輸入超過 5V(或 3.3V,取決於開發板工作電壓)的電壓是非常危險的。請注意,如果將 5V 的 Arduino 輸出連接到 3.3V 的感測器晶片,也可能會燒毀該晶片,需要加上電壓分壓電路或電位轉換器(Level Shifter)。
- ❌ 向 5V 引腳提供超過 5V 的電壓
Arduino 開發板的 5V 直接進入 ATmega 晶片,其最大承受電壓極限為 6V,超過就會損毀。
- ❌ 向 Vin 引腳提供超過 12V 的電壓
板上有一個板載 5V 穩壓器,如果以 12V 以上的電壓供電,會因過熱而導致穩壓器燒毀。建議使用 7~9V 的乾淨直流電源。
- ❌ 從 5V 引腳抽取超過 500mA 的電流(使用外部電源時)
板載的 5V 穩壓器最大大約只能提供 500mA 的電流。USB 電源也有限流保險絲保護,限制在 500mA 以內。需要更多電流時,請使用外部穩壓電源模組。
- ❌ 從 3.3V 引腳抽取超過 50mA 的電流
板載 3.3V 穩壓器只能提供 50mA 的電流。這意味著您無法將耗電的 3.3V 設備(例如 ESP8266 或 nRF24L01 無線模組)直接連接到 Arduino:您需要外接一個外部 3.3V 穩壓器(例如 AMS1117-3.3)。
- ❌ 反接電源極性
如果將 5V 或 Vin 引腳與 GND 引腳接反,電路板將會立即燒毀。圓形 DC 電源插孔有二極體保護,但 Vin/5V 引腳沒有。使用前請務必以三用電表確認電壓和極性。
- ❌ 使用 USB 電源時,將負載連接到 Vin 引腳
如果 Arduino 的 5V 來自 USB 連接,此時將負載連接到 Vin 引腳,電流會逆向流過穩壓器,從而導致穩壓器損壞。
- ❌ 靜電放電 (ESD)
儘管大多數晶片都有二極體防護靜電,但最好還是使用防靜電腕帶,或者在乾燥環境下觸摸開發板前先觸摸接地的金屬物放電,桌子下面避免鋪地毯。
軟體開發環境
Arduino IDE
為了對 Arduino 進行程式編寫,我們需要下載安裝 Arduino IDE(整合開發環境)。目前最新版本為 Arduino IDE 2.x,介面更現代、有自動補全功能,建議直接安裝新版。
您可以前往 Arduino 官方下載頁面 下載最新版本。

Windows 安裝步驟:
- 進入官方網站的下載頁面,選擇 Windows 版本的安裝程式(.exe)。
- 如果您想支持該開源項目,可以考慮 donate 一些錢,之後再點擊「JUST DOWNLOAD」,或直接點選「下載」。
- 下載完成後開啟並執行安裝檔(.exe)。
- 在 UAC 彈窗中點擊「是」,授予系統管理員權限。
- 閱讀並同意軟體許可協議(License Agreement)。
- 選擇要安裝的元件,您將需要安裝 Arduino 軟體與 USB 驅動程式(這非常重要,否則電腦將無法識別連接的開發板)。
- 接受預設的安裝路徑,或選擇另一個路徑,然後點擊安裝。
- 過程中若系統提示您是否要安裝 Arduino USB 驅動程式(裝置軟體),請點選「安裝」,這樣電腦才能辨識 Arduino 板子。
- 等待安裝完成,在桌面上可以看到 Arduino IDE 的圖示,雙擊即可啟動。
(完整的官方安裝指南也可以在 Arduino 官方網站 上找到。)
第一個程式:Blink(讓 LED 閃爍)
安裝完 IDE 之後,最好的入門實驗就是讓 Arduino 上內建的 LED 燈閃爍起來,這就是著名的 “Blink” 程式,相當於程式設計中的 “Hello World”!
以下是 Blink 的程式碼:
// 宣告常數:Arduino Uno 的內建 LED 連接在 Pin 13
const int LED_PIN = 13;
// setup() 在開機或重置時只執行一次
void setup() {
// 將 LED_PIN 設定為輸出模式
pinMode(LED_PIN, OUTPUT);
}
// loop() 持續重複執行
void loop() {
digitalWrite(LED_PIN, HIGH); // 開啟 LED(輸出高電壓 5V)
delay(1000); // 等待 1000 毫秒(1 秒)
digitalWrite(LED_PIN, LOW); // 關閉 LED(輸出低電壓 0V)
delay(1000); // 再等待 1 秒
}
程式說明:
setup():在 Arduino 啟動時只執行一次,通常用來設定引腳模式、初始化序列埠等。loop():會持續不斷地重複執行,就像一個無限迴圈,是 Arduino 程式的核心部分。digitalWrite(pin, value):控制數位引腳的輸出,HIGH代表 5V,LOW代表 0V。delay(ms):讓程式暫停執行指定的毫秒數(1000ms = 1 秒)。
只需要將程式碼貼入 IDE,按下「上傳」按鈕(向右的箭頭圖示),稍等幾秒後,您的 Arduino 板子上的 LED 就會開始每秒閃爍一次!
硬體和電子產品
在正式動手之前,了解基本的電子零件是十分重要的。如果您是電子學的新手,這些知識是很有價值的起步點。隨著您動手做實驗的次數增加,這些零件之間的物理現象和運作邏輯就會變得更加清晰。
電子學在本質上就是物理學的實踐應用!以下是我們在 Arduino 開發中經常會接觸到的基礎電子元件與設備:
麵包板 (Breadboard)
電阻器 (Resistor)
發光二極體 (LED)
電容器 (Capacitor)
二極體 (Diode)
電晶體 (Transistor)
可變電阻 (Potentiometer)
光敏電阻 (LDR)
無源蜂鳴器 (Buzzer)
這些元件就像是積木一樣。透過控制電路中電流的流向、大小,配合我們所寫的程式碼,就能創造出千變萬化的智慧裝置。
歐姆定律(Ohm’s Law)— 初學者必知
在使用這些電子元件之前,有一個最基礎的公式您必須了解,那就是歐姆定律:
電壓(V)= 電流(I)× 電阻(R)
也可以寫成:
- I(電流 A)= V(電壓 V)÷ R(電阻 Ω)
- R(電阻 Ω)= V(電壓 V)÷ I(電流 A)
實際範例:計算 LED 限流電阻
假設我們要將一顆 LED 連接到 Arduino 的 5V 引腳:
- LED 工作電壓(正向電壓):約 2V
- LED 工作電流:約 20mA(0.02A)
- 電路中需要的電壓降:5V – 2V = 3V
- 所需電阻值:R = 3V ÷ 0.02A = 150Ω
實際上建議選擇標準值 220Ω 或 330Ω 的電阻,可以保護 LED 同時亮度也足夠。
電路符號對照
以下為初學者提供各個電子零件的電路符號說明,這些符號在電路圖中隨處可見,認識它們對於看懂電路設計非常重要:
電阻器電路符號
發光二極體電路符號
電容器電路符號
二極體電路符號
電晶體電路符號
可變電阻電路符號
光敏電阻電路符號
初學者常見問題 & 實用建議
- Q:Arduino 和樹莓派(Raspberry Pi)有什麼差別?
Arduino 是一個微控制器開發板,適合即時控制硬體(如控制馬達、讀取感測器),執行單一特定任務;而樹莓派是一台完整的小型電腦,跑 Linux 系統,適合需要作業系統支援的複雜應用。兩者各有所長,很多專案甚至會同時使用兩者。
- Q:我需要很強的電子或程式背景才能學嗎?
完全不需要!Arduino 的設計目標就是讓非工程師背景的人也能輕鬆上手。只要有基本的邏輯思維,按照教學一步步操作,很快就能做出有趣的作品。
- Q:我應該買哪一款 Arduino 開始學?
最推薦初學者從 Arduino Uno 開始,它的資源最豐富、教學最多、最容易排除問題。等熟悉之後,再根據專案需求選擇其他型號(如需要更多引腳的 Mega、超小型的 Nano、或內建 Wi-Fi 的 MKR 系列)。
- 💡 小技巧:多多善用 Serial.println() 指令,可以在 IDE 的「序列埠監控視窗」中即時輸出數值,是偵錯(Debug)的最佳工具!
進階學習資源
- 📘 Arduino 官方教學文件 — 最完整的官方參考
- 🎥 Paul McWhorter Arduino 教學系列(YouTube) — 深入淺出的英文影片教學
- 🛒 Arduino 官方商店 — 購買正版開發板
- 📦 Tinkercad Circuits — 免費線上 Arduino 模擬器,不需要實體硬體也能練習
- 🔌 Fritzing — 用來繪製 Arduino 電路接線圖的免費軟體
接下來,各位可以前往 Arduino程式控制入門課程 中,一個單元接著一個單元,一步步地了解相關電子元件的深入說明,並透過實際動手操作,建立屬於自己的 Arduino 實作能力!



