Оглавление:

ШИМ с ESP32 - Диммирование светодиода с ШИМ на ESP 32 с Arduino IDE: 6 шагов
ШИМ с ESP32 - Диммирование светодиода с ШИМ на ESP 32 с Arduino IDE: 6 шагов

Видео: ШИМ с ESP32 - Диммирование светодиода с ШИМ на ESP 32 с Arduino IDE: 6 шагов

Видео: ШИМ с ESP32 - Диммирование светодиода с ШИМ на ESP 32 с Arduino IDE: 6 шагов
Видео: Уроки Ардуино #11 - плавное управление нагрузкой, ШИМ сигнал 2024, Ноябрь
Anonim
ШИМ с ESP32 | Затемнение светодиода с ШИМ на ESP 32 с Arduino IDE
ШИМ с ESP32 | Затемнение светодиода с ШИМ на ESP 32 с Arduino IDE

В этой инструкции мы увидим, как генерировать сигналы ШИМ с ESP32 с использованием Arduino IDE, а ШИМ в основном используется для генерации аналогового вывода от любого MCU, и этот аналоговый вывод может быть любым от 0 В до 3,3 В (в случае esp32) и от 0 В до 5 В (в случае arduino uno), и эти сигналы ШИМ (аналоговый выход) используются для затемнения (регулируемый выход, освещение светодиода с разной яркостью) светодиода.

Шаг 1. Вещи, которые вам нужны

Вещи, которые нужно
Вещи, которые нужно
Вещи, которые нужно
Вещи, которые нужно
Вещи, которые нужно
Вещи, которые нужно

Для этого урока вам понадобятся следующие вещи: ESP32

Резисторы 220 Ом

Цвет светодиода

макет

Мало прыгунов

Шаг 2: понимание ШИМ на ESP32

Понимание ШИМ на ESP32
Понимание ШИМ на ESP32

ESP32 имеет 16-канальный ШИМ-контроллер, и эти 16 каналов являются независимыми и могут быть настроены независимо для получения сигналов ШИМ с разными свойствами для различных требований. Перед тем, как пройти через код и весь процесс, вам необходимо знать следующие вещи: >> их 16 (От 0 до 15) каналов pwm в ESP32. Вам нужно выбрать свой канал ШИМ. >> После этого нам нужно выбрать частоту для ШИМ, мы можем перейти на 5000 Гц. >> Здесь у нас есть разрешение от 1 до 16 бит в ESP32, но в этом руководстве мы будем использовать только 8 бит Это означает, что яркость будет регулироваться значениями от 0 до 255. >> Вам необходимо настроить светодиод для ШИМ, чтобы сделать это, вам нужно использовать следующую строку кода и упомянуть о ledchannel (мы используем канал 0 из ESP32), который вы используете для ШИМ, и freq - это частота (мы используем 5000 Гц) ШИМ и разрешение, которое вы используете (мы используем разрешение 8 бит).ledcSetup (ledChannel, freq, resolution); Значения в нашем случае: const int freq = 5000; const int ledChannel = 0; const int Resolution = 8; >> затем укажите, какой вывод светодиода вам нужен, используя следующую команду: ledcAttachPin (ledPin, ledChannel); - здесь ledPin - это номер контакта. Мы будем использовать & ledChannel - это канал, который мы должны выбрать для PWM.5. Наконец, чтобы управлять яркостью светодиода с помощью ШИМ, вы используете следующую функцию: >> основной важной частью кода будет следующая команда, которая будет записывать аналоговый выход на вывод светодиода: ledcWrite (ledChannel, dutycycle); эта команда выше требуется ledChannel и dutyCycle, где канал - это номер канала, который мы будем использовать, а рабочий цикл - это значение, которое мы записываем как вывод на вывод светодиода.

Шаг 3: Подключения

Подключения
Подключения

Соединительная часть очень проста. Вам нужно подключить светодиод с резистором к GPIO16, как показано на схеме.

Шаг 4: Установите ESP32 BOARDS в Arduino IDE

Установите ESP32 BOARDS в Arduino IDE
Установите ESP32 BOARDS в Arduino IDE

Убедитесь, что у вас есть Arduino IDE на вашем ПК и вы установили платы ESP32 в свою Arduino IDE, и если это не так, пожалуйста, следуйте приведенным ниже моим инструкциям, чтобы установить его.:

Шаг 5: Код

Код
Код

Скопируйте следующий код и загрузите его на свой ESP32: // номер контакта светодиода int ledPin = 16; // 16 соответствует GPIO16 // настройка свойств ШИМ const int freq = 5000; const int ledChannel = 0; const int Resolution = 8; void setup () {// настраиваем функциональные возможности ШИМ светодиода ledcSetup (ledChannel, freq, resolution); // подключаем канал к управляемому GPIO ledcAttachPin (ledPin, ledChannel);} void loop () {// увеличиваем яркость светодиода для (int dutyCycle = 0; dutyCycle <= 255; dutyCycle ++) {// меняем светодиод яркость с ШИМ ledcWrite (ledChannel, dutyCycle); задержка (15); } // уменьшаем яркость светодиода на (int dutyCycle = 255; dutyCycle> = 0; dutyCycle -) {// изменение яркости светодиода с помощью ШИМ ledcWrite (ledChannel, dutyCycle); задержка (15); }}

Шаг 6: Тестирование функциональности ШИМ

Тестирование функциональности ШИМ
Тестирование функциональности ШИМ

После загрузки кода вы увидите, как интенсивность ваших светодиодов меняется, и это подводит нас к концу этой инструкции. Получайте удовольствие, используя ШИМ с ESP32 в своих проектах.

Рекомендуемые: