ESP32 для начинающих: Умный дом своими руками - страница 22

Шрифт
Интервал



}


```

Этот код позволяет считывать и выводить значения с потенциометра. Значение будет варьироваться от 0 до 4095 в зависимости от положения ручки.

# Использование аналоговых выходов

Хотя ESP32 не имеет аналоговых выходов в традиционном понимании, мы можем использовать широтно-импульсную модуляцию (ШИМ) для создания аналоговых сигналов. Чтобы сделать это, подключите светодиод (или любой другой световой элемент) к цифровому контакту, поддерживающему ШИМ (например, GPIO 25):

```cpp


const int pwmPin = 25;..// Номер контакта для ШИМ


const int pwmFreq = 5000;..// Частота ШИМ


const int pwmChannel = 0;..// Канал ШИМ


const int pwmResolution = 8;..// Разрешение ШИМ

void setup() {


..ledcSetup(pwmChannel, pwmFreq, pwmResolution);..// Настройка канала ШИМ


..ledcAttachPin(pwmPin, pwmChannel);..............// Привязка контакта


}

void loop() {


..for (int dutyCycle = 0; dutyCycle <= 255; dutyCycle++) {


....ledcWrite(pwmChannel, dutyCycle);..// Установка значения ШИМ


....delay(15);........................ // Задержка для плавного изменения яркости


..}


..for (int dutyCycle = 255; dutyCycle >= 0; dutyCycle–) {


....ledcWrite(pwmChannel, dutyCycle);..// Установка значения ШИМ


....delay(15);........................ // Задержка для плавного изменения яркости


..}


}


```

Этот код изменяет яркость светодиода, используя функцию ШИМ от 0 до 100% с определенной задержкой, создавая эффект плавного затухания и появления света.

Заключение

Использование цифровых и аналоговых входов и выходов – это основа работы с ESP32 в создании "умного дома". Примеры, приведенные в этой главе, наглядно демонстрируют, как можно взаимодействовать с физическими устройствами. Правильное понимание и использование I/O портов обеспечит вам гибкость и возможность создавать более сложные решения для автоматизации вашего дома. Попробуйте адаптировать эти примеры для своих нужд, и вы увидите, как простые идеи могут стать основой для интересных проектов.

Подключение датчиков и выполнение операций считывания

Подключение датчиков и выполнение операций считывания – это важный этап в создании системы "умного дома", где данные от окружающей среды становятся основой для автоматизации и управления. В этой главе мы займёмся практическими аспектами подключения различных типов датчиков к микроконтроллеру ESP32 и проведём операции считывания. Узнаем, как правильно интегрировать датчики, обрабатывать их данные и использовать полученные результаты в проектах.