Arduino IDE 第一次上手就精通:從安裝到感測器實作

本篇教學將引導您完成 Arduino IDE 的基本操作,從安裝軟體、上傳第一個程式,到連接真實世界的感測器,並在最後總結出一套標準的開發測試流程。


1. 目標:Arduino IDE 的基本操作

Arduino IDE (Integrated Development Environment) 是撰寫程式、上傳到 Arduino 控制板、並與之互動的核心工具。讓我們先來熟悉它的幾個關鍵功能。

1.1. 安裝 Arduino IDE

Arduino IDE 提供兩種主要版本:傳統的桌面應用程式 (IDE 1.8.x / 2.x) 和雲端的網頁編輯器 (Web Editor)。對於初學者,我們推薦安裝最新的桌面版 IDE 2.x,它擁有更現代的介面與更強大的功能。

  1. 前往官網下載:開啟瀏覽器,前往 Arduino Software 官方頁面
  2. 選擇對應版本:根據您的作業系統 (Windows, macOS, Linux) 選擇對應的安裝檔。
  3. 安裝程式:下載後,執行安裝檔並依照畫面指示完成安裝。

小提示:Arduino Web Editor 是一個不錯的雲端替代方案,它能自動儲存您的專案,並在任何電腦上存取,但需要穩定的網路連線。

1.2. 控制板管理員 (Boards Manager)

Arduino IDE 原生支援官方的控制板(如 Uno, Mega, Nano)。但當您使用第三方廠商的控制板(如 ESP32, ESP8266)時,就需要透過「控制板管理員」來新增支援。

  1. 開啟管理員:在 IDE 選單中,點擊 Tools > Board > Boards Manager...
  2. 搜尋與安裝:在開啟的視窗中,您可以搜尋特定控制板的名稱(例如 esp32)。找到後,選擇最新版本並點擊 Install

Boards Manager (此處為示意圖,非真實圖片)

1.3. 程式庫管理員 (Library Manager)

程式庫 (Library) 是他人預先寫好的程式碼集合,能讓您輕易地操作複雜的硬體(如感測器、螢幕)或實現特定功能(如網路連線)。

  1. 開啟管理員:點擊 Tools > Manage Libraries...
  2. 搜尋與安裝:在視窗中輸入您想找的程式庫關鍵字(例如 DHTAdafruit NeoPixel)。找到目標後,點擊 Install

1.4. 基本程式碼結構

每一個 Arduino 程式(稱為 "Sketch")都包含兩個最核心的函式:setup()loop()

// setup() 函式:在開機或重置時僅執行一次
void setup() {
  // 在這裡進行初始設定
  // 例如:將內建 LED 的腳位設定為「輸出」模式
  pinMode(LED_BUILTIN, OUTPUT);
}

// loop() 函式:在 setup() 執行後,會週而復始地重複執行
void loop() {
  // 在這裡撰寫主要執行的程式邏輯
  // 例如:讓 LED 亮一秒、暗一秒
  digitalWrite(LED_BUILTIN, HIGH); // 點亮 LED
  delay(1000);                     // 等待 1000 毫秒 (1秒)
  digitalWrite(LED_BUILTIN, LOW);  // 熄滅 LED
  delay(1000);                     // 等待 1 秒
}

2. 上傳第一個程式 ("Hello, World!" in Hardware)

讓 LED 閃爍是硬體世界的「Hello, World!」。我們將使用 IDE 內建的 Blink 範例來完成這個任務。

2.1. 開啟範例程式

  1. 在 IDE 選單中,點擊 File > Examples > 01.Basics > Blink
  2. IDE 會開啟一個新的視窗,裡面已經寫好了讓內建 LED 閃爍的完整程式碼。

2.2. 選擇控制板 (Arduino Uno)

告訴 IDE 您正在使用哪一款控制板,它才能用正確的方式編譯程式。

  1. 將您的 Arduino Uno 用 USB 線連接到電腦。
  2. 在 IDE 選單中,點擊 Tools > Board > Arduino AVR Boards > Arduino Uno

2.3. 選擇連接埠 (Port)

連接埠是電腦與 Arduino 溝通的虛擬通道。

  1. 點擊 Tools > Port
  2. 您會看到一個或多個連接埠。請選擇標有您控制板名稱的那個。
    • Windows: 通常顯示為 COM 開頭,例如 COM3 (Arduino Uno)
    • macOS: 通常顯示為 /dev/cu.usbmodem... 開頭。

補充:什麼是序列埠 (Serial Port)?
序列埠是一種通訊方式,它將資料以「序列」的方式,一次一個位元 (bit) 地在單一線路上傳輸。在 Arduino 的世界裡,USB 線模擬了一個虛擬序列埠,讓您的電腦可以和 Arduino 交換程式碼與資料。

2.4. 序列埠監控視窗 (Serial Monitor)

這是一個極其重要的除錯工具,它能顯示從 Arduino 透過 Serial.print() 傳回來的文字或數據。

  1. 開啟方式:點擊 IDE 右上角的放大鏡圖示,或使用快捷鍵 Ctrl+Shift+M / Cmd+Shift+M
  2. 設定鮑率 (Baud Rate):請確保監控視窗右下角的鮑率與您程式中 Serial.begin() 設定的數值一致(例如 9600),否則會看到亂碼。

2.5. 上傳程式

  1. 驗證 (Verify):點擊 IDE 左上角的「打勾」圖示。IDE 會檢查您的程式碼是否有語法錯誤(編譯)。
  2. 上傳 (Upload):點擊「向右箭頭」圖示。IDE 會先驗證程式碼,如果沒有錯誤,便會將其上傳到您的 Arduino 控制板中。

上傳成功後,您應該會看到 Arduino Uno 板上標有「L」的橘色 LED 開始以一秒一次的頻率閃爍!


3. 連接溫濕度感應器 DHT11

接下來,我們來做一個更實用的專案:讀取環境的溫濕度。

3.1. 連接方式與 Pin 腳說明

DHT11 感測器通常有 3 或 4 個 Pin 腳。我們需要連接 VCC (電源)、GND (接地) 和 DATA (資料)。

注意:如果您使用的是獨立的 DHT11 元件而非模組,通常需要在 VCC 和 DATA 之間連接一個 10K 歐姆的上拉電阻,以確保訊號穩定。

3.2. 程式庫的選擇與安裝

要讀取 DHT11 的數據,我們需要一個對應的程式庫。最推薦的方式是使用程式庫管理員。

  1. 開啟程式庫管理員Tools > Manage Libraries...
  2. 搜尋:在搜尋框中輸入 DHT sensor library
  3. 安裝:找到由 Adafruit 發布的程式庫,點擊 Install。IDE 可能會提示您安裝其相依的其他程式庫(如 Adafruit Unified Sensor),請點擊 Install All

3.3. 程式庫結構說明

安裝好的程式庫為我們做了所有複雜的工作。在程式中,我們只需要:
1. 用 #include <DHT.h> 來引入程式庫的功能。
2. 定義感測器連接的腳位和型號。
3. 建立一個 DHT 物件來操作感測器。

3.4. 開啟範例程式

最快的學習方式就是從範例開始。

  1. 點擊 File > Examples > DHT sensor library > DHTtester
  2. IDE 會載入一個完整的溫濕度讀取程式。

3.5. 上傳並測試

  1. 檢查範例程式中的 DHTPIN 是否設定為您實際連接的腳位(例如 2)。
  2. 上傳程式到您的 Arduino。
  3. 開啟序列埠監控視窗 (記得將鮑率設為 9600)。

您應該能看到監控視窗開始每隔幾秒鐘輸出一行當前的溫度和濕度讀數!


4. 總結:Arduino 開發的標準流程

經過以上練習,我們可以透過下方的流程圖來總結一個清晰、具迭代性的 Arduino 開發工作流程。

特別注意:在點擊「上傳」之前,務必再次確認 Tools 選單中的 控制板 (Board)連接埠 (Port) 是否選擇正確。這是初學者最常遇到上傳失敗的原因!

graph TD A[開始] --> B(硬體連接); B --> C(撰寫程式); C --> D(引入程式庫); D --> E(設定 IDE); E --> F((檢查開發板與連接埠)); F --> G(編譯與上傳); G --> H{測試與除錯}; H -- "運作正常" --> I[結束]; H -- "需要修改或優化" --> C; style F fill:#f9f,stroke:#333,stroke-width:2px