Кодты іздеу

ESP32 Оқулық 5/55 - Жарықдиодтың жарықтығын басқару, LED сөндіру - ESP32 IoT оқу жиынтығы

ESP32 Оқулық 5/55 - Жарықдиодтың жарықтығын басқару, LED сөндіру - ESP32 IoT оқу жиынтығы

Бұл оқу құралы ESP32 микроконтроллерін, атап айтқанда SunFounder ESP32 IoT Learning Kit (бейнеде 00:04) көмегімен жарықдиодтың жарықтығын басқаруды көрсетеді. Бұл жоба импульстік ені модуляциясын (PWM) және оның жарық көздерінің қарқындылығын басқарудағы қолданылуын үйренетін жаңадан бастаушыларға өте қолайлы. ESP32-нің кіріктірілген PWM мүмкіндіктері тегіс, дәл басқаруға мүмкіндік береді, бұл шығармашылық жобалар үшін көптеген мүмкіндіктер ашады.

Практикалық қолданылуы:

  • Реттелетін жарықтығы бар қоршаған орта жарықтандыру жүйелерін құру.
  • Біртіндеп өшетін қарапайым түнгі шам жасау.
  • Әртүрлі күйлер үшін динамикалық индикатор шамын жасау (мысалы, батарея зарядының төмендігі, желіге қосылу).
  • Күрделі интерактивті қондырғылар жасау үшін басқа сенсорлармен және жетектермен біріктіру.

Аппараттық құралдар/Компоненттер

Жоба SunFounder ESP32 Starter Kit (бейнеде 00:12) пайдаланады, оған ESP32 микроконтроллері, кеңейту тақтасы, әртүрлі компоненттер және 18650 литий батареясы кіреді. Сондай-ақ сізге жарықдиод және 220 Ом резистор қажет болады (бейнеде 04:32).

Сым қосу нұсқаулығы

Бейнедегі сым қосу схемасына (бейнеде 01:46 және 04:18) және 04:40 уақыт белгісіндегі егжей-тегжейлі түсіндірмеге жүгініңіз. Сым қосу жарықдиодтың анодын резисторға, резисторды ESP32-нің GPIO 26 пиніне, ал жарықдиодтың катодын жерге қосуды қамтиды.

LED_with_Resistor


220 Ом резистормен тізбектей жалғанған жарықдиод.  Төменде макет тақтасындағы сым қосу көрсетілген. 

LED_fade_ESP32

Кодты түсіндіру

Arduino коды жарықдиодтың жарықтығын басқару үшін Импульстік Ені Модуляциясын (PWM) пайдаланады. Негізгі конфигурацияланатын бөліктер:

  • ledPin: Жарықдиодқа қосылған GPIO пинін анықтайды (бейнеде 09:41, 26-ға орнатылған). Басқа пинді қолдансаңыз, оны өзгертіңіз.
  • fadeAmount: Жарықдиод жарықтығының өзгеру жылдамдығын басқарады (бейнеде 10:06). Жоғары мән тезірек өшуді/жануды қамтамасыз етеді. Код жарықтық минималды (0) немесе максималды (255) мәнге жеткенде бағытты автоматты түрде өзгертеді (бейнеде 11:44).

const int ledPin = 26;  // Жарықдиод үшін 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); 
}

Тірі жоба/Демонстрация

Бейнеде өшетін жарықдиодтың жұмысы көрсетілген (бейнеде 14:51). Нұсқаушы өшу жылдамдығын басқару үшін fadeAmount айнымалысын қалай реттеу керектігін көрсетеді (бейнеде 15:16 және 15:51). Кодты ESP32-ге жүктеу процесі де көрсетілген (бейнеде 14:20).

Бөлімдер

  • [00:00] Кіріспе және жобаға шолу
  • [00:12] ESP32 Starter Kit-ке шолу
  • [01:46] Сым қосу схемасы және түсіндірме
  • [02:03] Сандық сигналдар және PWM
  • [04:18] Жарықдиодты қосу
  • [06:33] Кодты түсіндіру: Функциялар
  • [09:11] Кодты түсіндіру: Жарықдиодты өшіру/жандыру
  • [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
}

Ресурстар мен сілтемелер

Әлі ресурстар жоқ.

Файлдар📁

Файлдар жоқ.