搜尋程式碼

ESP32 教學 5/55 - LED 漸變,控制 LED 亮度 - ESP32 物聯網學習套件

ESP32 教學 5/55 - LED 漸變,控制 LED 亮度 - ESP32 物聯網學習套件

呢個教學示範點樣用ESP32微控制器控制LED嘅亮度,特別係SunFounder ESP32 IoT學習套件(影片00:04)。呢個項目好適合初學者學習脈衝寬度調變(PWM)同埋佢喺控制光源強度方面嘅應用。ESP32內置嘅PWM功能可以做到平滑、精確嘅控制,為創意項目打開咗無限可能。

實際應用:

  • 製作可調亮度嘅環境照明系統。
  • 整一個有漸變效果嘅簡單夜燈。
  • 開發用嚟顯示唔同狀態嘅動態指示燈(例如:低電量、網絡連接)。
  • 同其他感測器同執行器整合,創造複雜嘅互動裝置。

硬件/組件

呢個項目用到SunFounder ESP32入門套件(影片00:12),包括ESP32微控制器、擴展板、各種組件同18650鋰電池。你仲需要一個LED同一個220歐姆電阻(影片04:32)。

接線指南

參考影片入面嘅接線圖(影片01:46同04:18)同埋時間戳04:40嘅詳細解釋。接線涉及將LED嘅陽極連接到電阻,電阻連接到ESP32嘅GPIO 26引腳,LED嘅陰極連接到地線。

LED_with_Resistor


LED同220歐姆電阻串聯。下面係麵包板上嘅接線。

LED_fade_ESP32

程式碼解釋

Arduino程式碼用脈衝寬度調變(PWM)嚟控制LED嘅亮度。主要可配置嘅部分包括:

  • ledPin:定義連接LED嘅GPIO引腳(影片09:41,設定為26)。如果你用唔同嘅引腳就要改呢個值。
  • fadeAmount:控制LED亮度變化嘅速度(影片10:06)。數值越大,漸變越快。當亮度達到最低值(0)或最高值(255)時,程式碼會自動反轉方向(影片11:44)。

const int ledPin = 26;  // LED嘅GPIO引腳
int brightness = 0;
int fadeAmount = 5;

void setup() {
  ledcAttachPin(ledPin, 0); // 將引腳連接到PWM通道
}

void loop() {
  ledcWrite(ledPin, brightness); 
  brightness = brightness + fadeAmount;
  if (brightness <= 0 || brightness >= 255) {
    fadeAmount = -fadeAmount;
  }
  delay(50); 
}

實際項目/示範

影片示範咗LED漸變效果嘅實際運作(影片14:51)。導師展示點樣調整fadeAmount變數嚟控制漸變速度(影片15:16同15:51)。上傳程式碼到ESP32嘅過程都有示範(影片14:20)。

章節

  • [00:00] 介紹同項目概覽
  • [00:12] ESP32入門套件概覽
  • [01:46] 接線圖同解釋
  • [02:03] 數碼訊號同PWM
  • [04:18] 接線LED
  • [06:33] 程式碼解釋:函數
  • [09:11] 程式碼解釋:LED漸變
  • [13:33] 上傳程式碼
  • [14:51] 實際示範同調整

圖片

LED_fade_ESP32
LED_fade_ESP32
LED_with_Resistor
LED_with_Resistor
791-ESP32 Tutorial 5/55 - LED Fade, control brightness of an LED in Arduino
語言: C++
const int ledPin = 26;  // The GPIO pin for the LED
int brightness = 0;
int fadeAmount = 5;

void setup() {
  ledcAttach(ledPin, 5000, 8);  // Attach the LED pin
}

void loop() {
  ledcWrite(ledPin, brightness);  // Write the new brightness value to the PWM pin
  brightness = brightness + fadeAmount;
  if (brightness <= 0 || brightness >= 255) {
    fadeAmount = -fadeAmount;
  }
  delay(50);  // Wait for 50 milliseconds
}

資源與參考資料

暫時冇資源。

文件📁

冇文件可用。