高三電子實習|180 分鐘互動課程

做出一套會判斷、會記錄、會警報的門磁保全系統。

從 GPIO 讀值開始,完成按鈕設定、門磁入侵判斷、LED 閃爍、蜂鳴器警報、LCD 顯示與 DHT11 環境資料。學習單直接在頁面上完成並檢查。

3小時課程
5種互動任務
7組硬體連接
SECURITY CONSOLELIVE
SECURITY SET
SAFE
Temp: 25.0°C
Humd: 50.0%
MODEARMED
DOORSAFE
D2 LEDREADY
BZ 33QUIET

學習紀錄

先留下你的學習資料

01 / LESSON MAP

三小時課程地圖

每一段都有一個可操作的成果,完成後再進入下一段。

0:00–0:45
01

認識系統

辨識 Mega 2560 腳位、數位輸入輸出、低態與高態動作,讀懂門磁與按鈕的 HIGH/LOW。

  • 元件辨識
  • 接線安全
  • GPIO 邏輯
0:45–1:45
02

建立功能

拆解 Arduino C 程式,加入保全模式、DHT11 讀值、LCD 顯示與非阻塞警報流程。

  • 程式架構
  • 狀態判斷
  • 計時器
1:45–3:00
03

接線與測試

完成拖拉接線、模擬按鈕與門磁事件,最後用學習單檢查每個判斷與輸出。

  • 線路驗證
  • 情境測試
  • 課後挑戰

02 / COMPONENTS

專案使用元件

先掌握每個元件的任務,再閱讀程式中的控制邏輯。

M

Arduino Mega 2560

主控制器,讀取輸入並控制 LED、蜂鳴器、LCD 與感測器。

GPIO 2 / 3 / 4 / 31 / 33
▤

LCD2004 I2C

黃綠色背光的 20×4 字元顯示器,可顯示 4 行文字,透過 I2C 使用 SDA、SCL 兩條訊號線。

4-LINE · SDA 20 · SCL 21 · 0x27
°

DHT11

讀取溫度與濕度。資料線接 GPIO 3,每 2 秒讀取一次。

DATA → GPIO 3
●

D4 按鈕

低態按鈕。未按下是 HIGH,按下接地後是 LOW;長壓 2 秒設定保全。

GPIO 4 · INPUT_PULLUP
▯

門磁開關

判斷門的開關狀態。使用內部上拉,開路讀 HIGH,關閉讀 LOW。

GPIO 31 · INPUT_PULLUP
●

LED D2

低態動作輸出。GPIO 2 輸出 LOW 時點亮,入侵後每 0.2 秒切換。

GPIO 2 · ACTIVE LOW
)))

自激式蜂鳴器

高態驅動。GPIO 33 輸出 HIGH 時發聲,警報響 3 秒、停 1 秒。

GPIO 33 · ACTIVE HIGH

03 / CODE LAB

Arduino C 程式架構

程式使用狀態變數與 millis() 計時,讓 LED、LCD、DHT11 與蜂鳴器可以同時工作。

PROGRAM FLOW04_LCD_BZ_SW_DHT
setup() 讀取按鈕與門磁 按鈕長壓 2 秒?設定 / 解除保全 是 更新保全模式 否 讀取 DHT11 / LCD LED / BZ / LCD 輸出

判斷輸入 → 更新狀態 → 依狀態輸出。這個循環每次 loop() 都會快速重複。

ANNOTATED SOURCE
正在載入 04_LCD_BZ_SW_DHT.ino…

04 / WIRING MAP

開發板與元件接線圖

使用下方控制檢查線路,先看全圖,再放大確認腳位。

WIRING DIAGRAM
100%
Arduino Mega 2560 門磁保全系統接線圖

05 / INTERACTIVE WORKSHEET

課後學習單:完成 5 個任務

目前得分0 / 5
01
PIN MATCH

下拉選單配對

未完成

把每個元件配到正確的 Mega 2560 腳位。

02
DRAG WIRES

拖拉接線

未完成

把左側訊號拖到右側正確端點。若裝置不支援拖曳,也可先點選訊號,再點選右側端點。每條線都要完成。

DHT11 DATA
BUTTON D4
DOOR D31
BUZZER D33
GPIO 3
GPIO 4
GPIO 31
GPIO 33
03
PLACE PARTS

元件移動

未完成

把元件拖到對應的功能區。若裝置不支援拖曳,也可先點選元件,再點選目標功能區。

INPUT
D4 / D31
SENSE
DHT11
OUTPUT
D2 / BZ
DISPLAY
LCD2004
輸入控制
環境感測
警報輸出
狀態顯示
04
CLICK SIMULATION

按鈕與門磁模擬

未完成

先長按 D4 設定保全,再打開門磁,觀察狀態變化。

SECURITY OFF
SAFE
Temp: 25.0°C
Humd: 50.0%
LED D2BZ 33
05
CHECKPOINT

選擇題

未完成

選出正確答案,完成本次課程檢核。

Q1|低態 LED 何時點亮?
Q2|D4 按鈕沒有按下時讀值?
Q3|LCD2004 的 I2C 使用哪兩支腳位?

06 / AFTER CLASS

課後延伸

把課堂上的狀態機再往前推一步。

A

加入解除密碼

讓 D4 長壓 2 秒不只設定保全,解除時要求輸入四位數密碼。

B

記錄入侵時間

使用 millis() 記錄事件開始時間,顯示在序列埠監控視窗。

C

改成兩段警報

先用 LED 閃爍提示,再讓蜂鳴器延遲發聲,測試不同警報階段。