跳到:
ESP32 教學 1/55 - SunFounder ESP32 IoT 學習套件軟件同 Arduino IDE 簡介 ESP32 教學 2/55 - 咩係 ESP32、相機擴展板、開箱 SunFounder 嘅 ESP32 IoT 套件 ESP32 教學 3/55 - 電阻、LED、麵包板項目:Hello LED -ESP32 IoT 學習套件 ESP32 教學 4/55 - 數據類型 定義變量 Int、bool、char、序列監視器 - ESP32 IoT 套件 ESP32 教學 5/55 - LED 漸變,控制 LED 亮度 - ESP32 物聯網學習套件 ESP32 教學 6/55 - 使用 RGB LED 項目 2.3 - SunFounder 嘅 ESP32 IoT 學習套件 ESP32 教學 7/55 - 使用陣列配合 ESP32 Arduino 程式設計 - SunFounder 嘅 ESP32 IoT 學習套件 ESP32 Tutorial 8/55 -Walking Light 74HC595 Shift register -SunFounder's ESP32 IoT Learning kit ESP32 教學 9/55 - 用按鈕切換 LED,按一下開,按一下關 - SunFounder ESP32 IoT 套件 ESP32 教學 10/55 - 使用七段顯示器 74HC595 嘅數字計數器 - ESP32 IoT 學習套件 ESP32 教學 11/55 - 使用 LCD1602 LCD2004 同 ESP32 - SunFounder 嘅 ESP32 IoT 學習套件 ESP32 教學 12/55 - WS2812 RGB 燈帶 4 項目,配合 SunFounder 嘅 ESP32 IoT 學習套件 ESP32 教學 13/55 - Arduino 用有源蜂鳴器發出嗶聲 | SunFounder 嘅 ESP32 IoT 學習套件 ESP32 教學 14/55 - 使用 SunFounder ESP32 IoT 學習套件播放自訂音樂音符 ESP32 教學 15/55 - 用 ESP32 L293D 控制直流馬達速度 | SunFounder 嘅 ESP32 IoT 學習套件 ESP32 教學 16/55 - 使用 ESP32 同 L293D 嘅迷你水泵 | SunFounder 嘅 ESP32 IoT 學習套件 ESP32 教學 17/55 - 使用 ESP32 同電位器控制伺服馬達 - ESP32 IoT 學習套件 ESP32 教學 18/55 - 使用 ESP32 偵測傾斜 | SunFounder 嘅 ESP32 IoT 學習套件 ESP32 教學 19/55 - 使用紅外線感測器偵測障礙物 | SunFounder 嘅 ESP32 IoT 學習套件 ESP32 教學 20/55 - 循線模組 | SunFounder 嘅 ESP32 IoT 學習套件 ESP32 教學 21/55 - 用 PIR 動作感應器偵測人體 | SunFounder 嘅 ESP32 IoT 學習套件 ESP32 教學 22/55 - 用 LED Arduino 感受光線 | SunFounder 嘅 ESP32 IoT 學習套件 ESP32 教學 23/55 - 使用 ESP32 讀取電位器電壓 | SunFounder 嘅 ESP32 IoT 套件 ESP32 教學 24/55 - 量度土壤濕度用於灌溉 | SunFounder 嘅 ESP32 IoT 學習套件 ESP32 教學 25/55 - 使用 NTC 同 LCD 測量溫度 | SunFounder 嘅 ESP32 IoT 學習套件 ESP32 教學 26/55 - 使用搖桿配合 Arduino 採取行動 | SunFounder 嘅 ESP32 IoT 套件 ESP32 教學 27/55 - 用超聲波感測器量度距離 | SunFounder 嘅 ESP32 IoT 學習套件 ESP32 教學 28/55 - DHT11 溫度感測器配合 LCD | SunFounder 嘅 ESP32 IoT 學習套件 ESP32 教學 29/55 - 用 ESP32 讀取紅外線遙控器按鍵| SunFounder 嘅 ESP32 IoT 學習套件 ESP32 教學 30/55 - 使用 Adafruit IO 服務透過 MQTT 喺網頁上控制伺服摩打 | SunFounder 嘅 ESP32 IoT 學習套件 ESP32 教學 31/55 - 專案 LED 燈帶配合避障功能 | SunFounder 嘅 ESP32 IoT 學習套件 ESP32 教程 32/55 - 汽车倒车距离警告(带LCD同蜂鸣器)| SunFounder嘅物联网学习套件 ESP32 教學 33/55 - 使用 SunFounder 嘅 ESP32 IoT 學習套件整數碼骰仔 ESP32 教學 34/55 - 用 RGB LED 同旋鈕整顏色漸變 | SunFounder 嘅 ESP32 IoT 學習套件 ESP32 教學 35/55 - 植物監測器,土壤、溫度同光線 | SunFounder 嘅 ESP32 IoT 學習套件 ESP32 教學 36/55 - 猜數字遊戲 | SunFounder 嘅 ESP32 IoT 學習套件 ESP32 教學 37/55 - 使用藍牙應用程式配合 ESP32 BLE | SunFounder 嘅 ESP32 IoT 學習套件 ESP32 教學 38/55 - 用手機控制 RGB LED | SunFounder 嘅 ESP32 IoT 學習套件 ESP32 教學 39/55 - 用 ESP32 做藍牙音樂播放器 | SunFounder 嘅 ESP32 IoT 學習套件 ESP32 教學 40/55 - 讀寫 Micro SD 卡 | SunFounder 嘅 ESP32 IoT 學習套件 ESP32 教學 41/55 - 使用 Micro SD 卡嘅 MP3 播放器 | SunFounder 嘅 ESP32 IoT 學習套件 ESP32 教學 42/55 - 用相機影相並儲存喺 Micro SD CAM-1 | SunFounder 嘅 ESP32 套件 ESP32 教程 43/55 - 物聯網互聯網天氣站 | SunFounder 嘅 ESP32 物聯網學習套件 ESP32 教學 44/55 - ESP32 相機網絡伺服器透過 WiFi 傳輸視頻串流 CAM-2 | SunFounder 嘅 ESP32 套件 ESP32 教學 45/55 - 自訂串流伺服器配合 LED 控制 CAM-3 l SunFounder 嘅 ESP32 學習套件 ESP32 教學 46/55 - 使用 HiveMQ MQTT 進行遠程溫度監控 | SunFounder 嘅 ESP32 套件 ESP32 教學 47/55 - 使用 MQTT 透過互聯網嘅 WS2812 CheerLights | SunFounder 嘅 ESP32 IoT 套件 ESP32 教學 48/55 - 遠程溫度監控同 LED 控制 MQTT | SunFounder 嘅 ESP32 IoT 套件 ESP32 教學 49/55 - 透過 Adafruit IoT 控制直流摩打 | SunFounder 嘅 ESP32 套件 ESP32 教學 50/55 - 喺世界任何地方控制 RGB LED | SunFounder 嘅 ESP32 套件 ESP32 Tutorial 51/55 - Temperature and Humidity over WiFi with DHT | SunFounder's ESP32 IoT Learning Kit ESP32 教學 52/55 - WS2812 CheerLights MQTT 全球同步連 LCD | SunFounder ESP32 IoT 套件 ESP32 教學 53/55 - 建立 LCD 網絡時鐘 | SunFounder 嘅 ESP32 IoT 學習套件 ESP32 教學 54/55 - 透過 Wi-Fi 設定 WS2812 LED 燈條顏色 | SunFounder 嘅 ESP32 IoT 學習套件 ESP32 教學 55/55 - 點樣量度 12V、24V 或者 100V 直流電壓 | SunFounder 嘅 ESP32 IoT 學習套件
ESP32 教學 22/55 - 用 LED Arduino 感受光線 | SunFounder 嘅 ESP32 IoT 學習套件
喺呢個教學入面,我哋會探討點樣用ESP32微控制器配合光敏電阻(LDR)嚟量度光強度。透過讀取LDR嘅電阻值,我哋可以觸發動作,例如當光線水平超過某個臨界值時啟動蜂鳴器。呢個項目會示範光線水平同ESP32模擬讀取能力之間嘅互動,等我哋可以根據環境光嚟建立響應式應用程式。(喺影片5:30位置)
硬件講解
我哋喺呢個項目入面會用到嘅主要元件包括ESP32微控制器、一個LDR同一個10 kΩ電阻。LDR會根據照射喺佢表面嘅光強度而改變電阻值:光線越強,電阻值越低;光線越弱,電阻值越高。呢個特性令我哋可以透過將LDR同電阻以分壓電路形式連接,嚟量度唔同嘅光線水平。
ESP32微控制器內置Wi-Fi同藍牙功能,令佢好適合用喺物聯網項目。佢有幾個模擬引腳可以讀取唔同嘅電壓水平,我哋會利用呢啲引腳嚟監測LDR兩端嘅電壓。呢個電壓會被轉換成一個ESP32可以處理嘅模擬值,並用嚟觸發動作,例如啟動蜂鳴器。
數據手冊詳情
製造商 Espressif Systems
零件編號 ESP32
邏輯/IO電壓 3.3 V
供電電壓 3.0 - 3.6 V
輸出電流(每個GPIO) 最大40 mA
PWM頻率指引 1 kHz - 40 kHz
輸入邏輯臨界值 高電平:最低2.0 V,低電平:最高0.8 V
電壓降 / RDS(on) / 飽和 最大0.3 V
熱限制 -40 °C 至 125 °C
封裝 QFN48
備註 / 變體 支援多種Wi-Fi同藍牙協議
使用一個10 kΩ電阻同LDR串聯嚟做分壓。
確保ESP32以3.3 V供電,以免損壞。
正確連接LDR同電阻嚟量度光強度。
如有需要,可以使用電容做去耦嚟穩定電源供應。
檢查模擬讀取值,確保佢哋喺預期範圍之內。
接線說明
ESP32-22_light_sensor-wiring
要將LDR同電阻接到ESP32,首先將LDR其中一個端子連接到ESP32嘅3.3 V電源引腳。LDR嘅另一個端子應該連接到10 kΩ電阻嘅其中一個端子。然後將電阻嘅另一個端子連接到接地。
跟住,將一條跳線由LDR同電阻之間嘅連接點連接到ESP32嘅引腳35。呢個設置會形成一個分壓電路,令ESP32可以根據照射喺LDR上嘅光強度嚟讀取變化嘅電壓。確保所有連接穩固,並且LDR嘅位置可以準確感應光線變化。
程式碼示例同講解
喺程式碼入面,我哋首先初始化串列通訊嚟監測LDR嘅讀取值。呢度嘅關鍵識別符係analogValue,佢儲存咗引腳35嘅讀取值。
void setup() {
Serial.begin(115200);
}
void loop() {
int analogValue = analogRead(35);
Serial.printf("ADC analog value = %d\n",analogValue);
delay(100);
}
呢段程式碼以115200嘅鮑率初始化串列監視器,並持續讀取引腳35嘅模擬值。呢個值會被打印到串列監視器,等我哋可以觀察佢點樣隨光線水平變化。
當光強度改變時,LDR嘅電阻值會變化,因此ESP32讀取到嘅電壓亦會改變,反映光線狀況(喺影片12:45位置)。
示範 / 預期效果
當你運行程式並觀察串列監視器時,你應該會見到ADC analog value根據環境光線條件而波動。當你遮住LDR時,數值應該會增加,表示電阻值較高;而將佢暴露喺強光下時,數值應該會顯著下降。呢種行為可以用嚟根據預設嘅臨界值觸發蜂鳴器或其他動作。
如果讀取值冇按預期變化,請檢查接線問題,確保LDR冇浮空,並確認ESP32供電正確。咁樣可以幫助避免常見嘅陷阱,確保運作順暢(喺影片15:30位置)。
影片時間戳
00:00 開始
1:48 LDR介紹
8:33 接線講解
11:07 Arduino程式碼講解
13:07 喺Arduino IDE入面選擇ESP32開發板同COM埠
14:49 讀取值示範
17:24 了解日間同夜間數值
18:47 DAC數值同讀取電壓
圖片
ESP32-22_light_sensor
ESP32-22_light_sensor-wiring
ESP32-22_light_sensor-wiring
代碼
821-ESP32 Tutorial 22/55- Arduino code for Light dependant resistor
語言: C++
檢視程式碼
void setup() {
// initialize serial communication at 115200 bits per second:
Serial.begin(115200);
}
void loop() {
// read the analog value
int analogValue = analogRead(35);
// print out the values you read:
Serial.printf("ADC analog value = %d\n",analogValue);
delay(100); // delay in between reads for clear read from serial
}