關閉

Arduino 電子零件與電路符號完整教學:電阻、LED、按鍵、電容與麵包板入門

完整介紹 Arduino 常見電子零件與電路符號,包括電阻、LED、按鍵、電容與麵包板,並提供接線方式、限流計算、INPUT_PULLUP、去彈跳及故障排除教學。

本篇介紹 Arduino 常見的電阻、LED、按鍵、電容與麵包板,並說明電路符號、接線方法及初學者實作重點。

Arduino 是學習電子電路與嵌入式控制最常見的入門平台,但許多初學者在開始接線前,常會先遇到幾個問題:電阻要怎麼看?LED 為什麼要串電阻?按鍵為什麼需要上拉或下拉?電容有什麼作用?麵包板內部到底怎麼連通?電路圖上的符號又代表什麼意思?

本篇文章將以 Arduino 初學者最常使用的電子零件為核心,完整介紹電阻、LED、按鍵、電容與麵包板,並搭配 Arduino IDE 安裝設定、LED 閃爍測試、按鍵控制 LED、序列監控測試、供電、重啟與序列監控觀念、常見故障排除、Q&A 與進階學習方向,幫助讀者建立完整的 Arduino 電路入門基礎。

1. 為什麼學 Arduino 要先認識電子零件與電路符號?

許多初學者以為學 Arduino 只要會寫 digitalWrite()、digitalRead() 就可以,但真正的 Arduino 專案通常都會連接外部電子零件,例如 LED、按鍵、感測器、繼電器、LCD 或馬達。

如果不了解電子零件的功能,就算程式正確,電路也可能無法正常運作,甚至可能造成 LED 燒毀、Arduino 腳位過載或電源短路。

2. Arduino 入門常見電子零件總覽

在 Arduino 入門階段,最常使用的電子元件通常不會太複雜,但每一個都非常重要。電阻、LED、按鍵、電容與麵包板,是學習 Arduino 電路設計時最基本的五大元件。

這些元件看起來簡單,但它們會出現在幾乎所有 Arduino 基礎專案中,例如 LED 閃爍、按鍵開關、感測器讀取、蜂鳴器警報、LCD 顯示與 IoT 資料收集。

3. 電阻 Resistor 完整教學

3.1 電阻的功能

電阻是最基本也最常用的電子元件,主要功能是限制電流通過。以 Arduino 控制 LED 為例,如果 Arduino 腳位直接接 LED 而沒有串接電阻,LED 可能因電流過大而燒毀,也可能讓 Arduino GPIO 腳位承受過大電流。

在 Arduino 入門應用中,電阻常用於 LED 限流、保護 GPIO 腳位、建立按鍵上拉或下拉電路、製作分壓電路,以及降低訊號干擾。

3.2 電阻的電路符號

傳統電阻符號:
---/\/\/\/---

歐規電阻符號:
---[  R  ]---

在 Arduino 教學文章或電路圖中,只要看到 R、R1、R2 或鋸齒狀符號,通常就是電阻。

3.3 Arduino 常見電阻值

3.4 LED 限流電阻計算

LED 串接電阻時,可以用歐姆定律估算電阻值。這個計算可以幫助你避免 LED 電流過大,也能避免 Arduino 腳位負載過重。

公式:
R = (Vcc - Vf) / I

Vcc:Arduino 輸出電壓,例如 5V
Vf:LED 順向電壓,例如紅色 LED 約 2V
I:希望流過 LED 的電流,例如 0.01A
範例:
R = (5V - 2V) / 0.01A
R = 300Ω

實際可選用 330Ω 電阻。

4. LED 發光二極體完整教學

4.1 LED 是什麼?

LED 全名是 Light Emitting Diode,也就是發光二極體。它具有方向性,電流必須由正極流向負極才會發光。

在 Arduino 專案中,LED 常用來顯示狀態,例如電源指示、錯誤警示、感測器觸發、按鍵狀態或程式執行狀態。

4.2 如何判斷 LED 正負極?

4.3 LED 電路符號

LED 電路符號概念:

     |>| 
-----| |-----
      ↗ ↗

箭頭代表發光方向。

4.4 Arduino LED 基本接線

Arduino D13 → 330Ω 電阻 → LED 正極
LED 負極 → Arduino GND

4.5 Arduino LED 閃爍程式

const int ledPin = 13;

void setup() {
  pinMode(ledPin, OUTPUT);
}

void loop() {
  digitalWrite(ledPin, HIGH);
  delay(1000);

  digitalWrite(ledPin, LOW);
  delay(1000);
}

上傳程式後,LED 應該會亮 1 秒、熄滅 1 秒,持續循環。如果 LED 沒有亮,請先檢查 LED 正負極、電阻是否串接、GND 是否連接,以及 Arduino IDE 是否選對開發板與序列埠。

5. 按鍵 Button 完整教學

5.1 按鍵在 Arduino 中的用途

按鍵是最常見的輸入元件,可以讓使用者控制 Arduino,例如按下按鍵讓 LED 亮、切換模式、啟動感測、重置流程或觸發警報。

Arduino 可以透過 digitalRead() 讀取按鍵輸入。不過按鍵接線如果沒有上拉或下拉,輸入腳位可能會出現不穩定狀態。

5.2 按鍵電路符號

按鍵電路符號概念:

---o  o---

按下時,兩端接點導通。

5.3 什麼是 Floating Input?

Arduino 的數位輸入腳位如果沒有明確接到 HIGH 或 LOW,就可能受到環境雜訊影響而亂跳,這種狀態稱為 floating input。

為了讓按鍵輸入穩定,通常需要使用上拉電阻、下拉電阻,或 Arduino 內建的 INPUT_PULLUP。

5.4 下拉電阻 Pull-down 接法

5V → 按鍵 → Arduino D2
Arduino D2 → 10KΩ 電阻 → GND

未按下:D2 讀到 LOW
按下:D2 讀到 HIGH

5.5 內建上拉 INPUT_PULLUP 接法

Arduino D2 → 按鍵 → GND

未按下:D2 讀到 HIGH
按下:D2 讀到 LOW

INPUT_PULLUP 是 Arduino 初學者很推薦使用的方式,因為可以少接一顆 10KΩ 電阻,但要注意邏輯會反過來:按下是 LOW,放開是 HIGH。

5.6 按鍵控制 LED 程式

const int buttonPin = 2;
const int ledPin = 13;

void setup() {
  pinMode(buttonPin, INPUT_PULLUP);
  pinMode(ledPin, OUTPUT);
}

void loop() {
  int buttonState = digitalRead(buttonPin);

  if (buttonState == LOW) {
    digitalWrite(ledPin, HIGH);
  } else {
    digitalWrite(ledPin, LOW);
  }
}

6. 電容 Capacitor 完整教學

6.1 電容的作用

電容可以暫時儲存電荷,在電壓變化時吸收或釋放能量。Arduino 電路中,電容常被用來穩定電源、降低雜訊、避免感測器讀值不穩,或改善按鍵彈跳。

在實際專案中,如果感測器讀值跳動、馬達啟動時 Arduino 重啟、按鍵按一次卻觸發多次,都可能和電源雜訊或訊號不穩有關,這時就可能需要電容輔助。

6.2 電容電路符號

無極性電容:
---| |---

有極性電解電容:
---| |---
   + -

無極性電容通常不分方向,但電解電容有正負極,接反可能造成損壞,因此接線時要特別注意。

6.3 Arduino 常見電容值

6.4 什麼是按鍵彈跳?

機械按鍵在按下或放開的瞬間,接點可能會在極短時間內快速導通與斷開,造成 Arduino 誤判為多次按下,這就是按鍵彈跳。

按鍵彈跳可以透過硬體電容濾波,也可以透過程式 debounce 處理。初學者建議先學程式 debounce,因為比較容易觀察與修改。

6.5 程式去彈跳範例

const int buttonPin = 2;
const int ledPin = 13;

int lastButtonState = HIGH;
int ledState = LOW;
unsigned long lastDebounceTime = 0;
unsigned long debounceDelay = 50;

void setup() {
  pinMode(buttonPin, INPUT_PULLUP);
  pinMode(ledPin, OUTPUT);
}

void loop() {
  int reading = digitalRead(buttonPin);

  if (reading != lastButtonState) {
    lastDebounceTime = millis();
  }

  if ((millis() - lastDebounceTime) > debounceDelay) {
    if (reading == LOW) {
      ledState = HIGH;
    } else {
      ledState = LOW;
    }
  }

  digitalWrite(ledPin, ledState);
  lastButtonState = reading;
}

7. 麵包板 Breadboard 完整教學

7.1 麵包板的用途

麵包板可以讓電子零件不用焊接就能互相連接,非常適合 Arduino 初學者進行測試。當電路確認可行後,再考慮焊接到洞洞板或製作 PCB。

使用麵包板時,最重要的是理解內部哪些孔位相通、哪些孔位不相通。很多初學者接線看起來正確,但電路不動,原因通常就是插錯排或沒有跨過中間溝槽。

7.2 麵包板中間區域如何連通?

常見麵包板中間區域:

A B C D E    F G H I J
| | | | |    | | | | |
同一列相通   同一列相通

一般麵包板中,A–E 的同一排孔位相通,F–J 的同一排孔位相通,中間溝槽兩側不相通。

7.3 麵包板電源軌

麵包板兩側通常有紅色與藍色電源軌。紅色常用來接 5V 或 3.3V,藍色常用來接 GND。不過有些麵包板的電源軌中間會斷開,需要用跳線連接。

7.4 Arduino 與麵包板基本接線

Arduino 5V  → 麵包板紅色電源軌
Arduino GND → 麵包板藍色電源軌
Arduino D13 → 電阻 → LED 正極
LED 負極 → GND

7.5 初學者常見麵包板錯誤

8. Arduino IDE 安裝與基本設定

要將程式上傳到 Arduino UNO,需要先安裝 Arduino IDE。安裝完成後,透過 USB 將 Arduino UNO 連接到電腦,接著選擇正確的開發板與序列埠。

如果是 Windows 電腦,部分 Arduino 相容板可能需要安裝 CH340 USB 驅動。若 Arduino IDE 找不到 COM Port,請先檢查 USB 線是否支援資料傳輸,再檢查 Windows 裝置管理員。

選擇開發板:
工具 → 開發板 → Arduino AVR Boards → Arduino Uno

選擇序列埠:
工具 → 連接埠 → 選擇 Arduino UNO 對應的 COM Port

開啟 Blink:
檔案 → 範例 → 01.Basics → Blink

9. 完整實作:按鍵控制 LED

9.1 實作目標

本實作要完成一個最基礎的 Arduino 輸入與輸出控制:按下按鍵時 LED 亮起,放開按鍵時 LED 熄滅。

這個範例可以同時練習 LED 輸出、按鍵輸入、INPUT_PULLUP、麵包板接線與 GPIO 腳位控制。

9.2 所需材料

9.3 接線方式

LED 部分:
Arduino D13 → 330Ω 電阻 → LED 正極
LED 負極 → GND

按鍵部分:
Arduino D2 → 按鍵 → GND
程式使用 INPUT_PULLUP

9.4 完整程式碼

const int buttonPin = 2;
const int ledPin = 13;

void setup() {
  pinMode(buttonPin, INPUT_PULLUP);
  pinMode(ledPin, OUTPUT);
}

void loop() {
  int buttonState = digitalRead(buttonPin);

  if (buttonState == LOW) {
    digitalWrite(ledPin, HIGH);
  } else {
    digitalWrite(ledPin, LOW);
  }
}

9.5 測試結果

完成接線並上傳程式後,按下按鍵時 LED 應該亮起,放開按鍵時 LED 應該熄滅。如果 LED 反應相反,請檢查程式邏輯是否使用 INPUT_PULLUP。如果完全沒有反應,請檢查接線、GND、LED 正負極與按鍵方向。

10. 供電、重啟與序列監控測試

Arduino 不像 Linux 或 Windows 服務需要手動啟動。當 Arduino 接上 USB 或外部電源後,就會自動執行已經上傳到板子內的程式。

若要停止 Arduino 程式執行,可以拔除 USB 線或外部電源。若要重啟,可以按下板上的 RESET 按鈕、重新插拔 USB、重新上傳程式,或關閉再打開外部電源。

10.1 使用序列監控視窗測試按鍵

const int buttonPin = 2;

void setup() {
  Serial.begin(9600);
  pinMode(buttonPin, INPUT_PULLUP);
}

void loop() {
  int buttonState = digitalRead(buttonPin);
  Serial.println(buttonState);
  delay(200);
}

打開 Arduino IDE 的序列監控視窗後,未按下按鍵時通常顯示 1,按下按鍵時通常顯示 0。這可以幫助你確認按鍵輸入是否正常。

11. 常見故障排除

11.1 LED 不亮

LED 不亮時,請先檢查 LED 正負極是否接反、是否有串接限流電阻、Arduino 腳位是否設定正確、程式是否成功上傳、GND 是否接好,以及杜邦線是否鬆脫或插錯列。

11.2 LED 一直亮或一直不亮

如果 LED 一直亮或一直不亮,可能是程式邏輯寫反、按鍵使用 INPUT_PULLUP 時誤把 LOW 當成未按下、D2 腳位短路到 GND 或 5V,或按鍵方向插錯。

11.3 按鍵按一次卻觸發多次

這通常是按鍵彈跳造成的。可以使用 debounce 程式、加電容濾波,或改用穩定的按鍵模組。

11.4 麵包板接線看起來正確但不動

這種情況通常要檢查是否插在同一排導通孔、是否跨過中間溝槽、電源軌是否中間斷開、5V 與 GND 是否短路,以及 Arduino GND 是否與外部電路共地。

11.5 Arduino IDE 無法上傳程式

12. Arduino 電子零件常見 Q&A

Q1:Arduino LED 一定要接電阻嗎?

建議一定要接。電阻可以限制流過 LED 的電流,避免 LED 燒毀,也能保護 Arduino GPIO 腳位。

Q2:LED 接反會壞掉嗎?

一般低電壓測試時,LED 接反通常只是不會亮,但仍不建議長時間錯接。正確方式是 LED 正極接 Arduino 輸出,負極接 GND。

Q3:按鍵一定要外接 10KΩ 電阻嗎?

不一定。如果使用 Arduino 的 INPUT_PULLUP,就可以不用外接 10KΩ 上拉電阻。不過要記得 INPUT_PULLUP 的邏輯是未按下 HIGH、按下 LOW。

Q4:電容可以隨便接嗎?

不可以。無極性電容通常不分方向,但電解電容有正負極,接反可能造成損壞。

Q5:麵包板左右兩邊是相通的嗎?

通常中間溝槽左右兩邊不相通,需要用跳線連接。電源軌也可能中間斷開,因此接線前最好用三用電表確認導通。

Q6:Arduino 初學者應該先買哪些零件?

建議先準備 Arduino UNO、麵包板、LED、220Ω 或 330Ω 電阻、10KΩ 電阻、按鍵、杜邦線、電容與可變電阻。這些零件足夠完成多數入門實驗。

Q7:學完這些元件後可以做什麼?

可以開始做 LED 控制、按鍵開關、蜂鳴器警報、感測器讀取、LCD 顯示、溫度監控、馬達控制與簡單 IoT 專案。

13. 進階學習方向

熟悉電阻、LED、按鍵、電容與麵包板後,就可以進一步學習 Arduino 的感測器、通訊協定與控制應用。

結論

Arduino 入門最重要的不是一開始就學複雜模組,而是先把基礎電子零件與電路符號搞懂。電阻負責限制電流與穩定訊號,LED 可以顯示輸出狀態,按鍵可以作為輸入控制,電容能協助濾波與去彈跳,而麵包板則能讓你快速測試各種電路。

只要能理解這些基礎元件,你就已經具備學習 Arduino 感測器、LCD、I2C、SPI、UART、RS232、馬達控制與 IoT 應用的基礎能力。這也是從 Arduino 初學者進入嵌入式系統與物聯網開發的重要第一步。