Daftar Isi:

ESP8266 Menggunakan PWM Dengan Potensiometer: 4 Langkah
ESP8266 Menggunakan PWM Dengan Potensiometer: 4 Langkah

Video: ESP8266 Menggunakan PWM Dengan Potensiometer: 4 Langkah

Video: ESP8266 Menggunakan PWM Dengan Potensiometer: 4 Langkah
Video: Input Analog NodeMCU ESP8266 with Potensiometer 2024, Juli
Anonim
Image
Image
Sasaran
Sasaran

Bagi mereka yang tidak terbiasa dengan elektronik, PWM berarti kontrol daya. Dan dalam perakitan ini, kami menunjukkan cara menggunakannya untuk mengontrol intensitas cahaya LED, mirip dengan peredup pada lampu, dengan opsi untuk menggelapkan dan mencerahkan.

Mekanisme ini juga memungkinkan Anda, misalnya, untuk menghubungkan driver ke motor. Ini hanya salah satu dari banyak kemungkinan.

- Catatan: PWM adalah singkatan dari Pulse-Width Modulation.

Langkah 1: Tujuan

Perakitan terdiri dari potensiometer, yang merupakan resistor variabel, dipantau oleh ESP. Dalam skema ini, saya menggunakan kode sumber yang sama yang akan saya gunakan dengan Arduino. Karena banyak kelebihannya, kami menggunakan Arduino IDE dengan ESP di proyek lain juga.

Dalam perakitan, ESP terhubung ke USB hanya untuk catu daya. Kami juga memiliki pin kursor, yang merupakan pin potensiometer tengah, terhubung di port AD, dan positif dan negatif.

Karena tegangan bervariasi, dimungkinkan untuk membaca nilai yang berbeda di AD. Oleh karena itu, dengan memutar potensiometer, dimungkinkan untuk menambah atau mengurangi kecerahan LED.

Langkah 2: Perakitan

perakitan
perakitan

Skema listriknya sangat sederhana: menggunakan ESP8266 dalam konfigurasi NodeMCU, kami akan menyalakan USB. Jadi di sini, potensiometer harus dihubungkan dari satu ujung ke ujung negatif, dan ujung lainnya dari positif. Medium, yaitu kursor, tetap berada di ADC 0, karena ESP ini hanya memiliki port yang membaca nilai analog.

Langkah 3: WiFi ESP8266 NodeMCU ESP-12E

WiFi ESP8266 NodeMCU ESP-12E
WiFi ESP8266 NodeMCU ESP-12E

Langkah 4: Kode Sumber

Mempersiapkan

Pada fungsi Setup, kita mendefinisikan behavior dari pin yang kita gunakan, dalam hal ini LED dan POTENTIOMETER.

void setup(){ Serial.begin(115200) // Instruo untuk colocar atau gpio que iremos utilizar como entrada, // podemos fazer a leitura nesse pino pinMode(A0, INPUT); // A0 uma konstanta que indica o pino que ligamos nosso potenciômetro // Instrução untuk colocar o gpio que iremos utilizar como saída, // podemos alterar seu valor livremente para HIGH ou LOW pinMode(LED_BUILT); // LED_BUILTIN dan selalu ada indikasi LED melakukan ESP8266 }

Lingkaran

Dalam fungsi ini, logikanya adalah membaca nilai POT dan menetapkan nilai ini (yang merupakan intensitas kecerahan) di LED.

void loop(){ // faz a leitura do pino A0 (no nosso caso, o potenciômetro, retorna um valor entre 0 e 1023) int potencia = analogRead(A0); Serial.println(potensi); // como o LED no ESP8266 trabalha de maneira contrária, ou seja, quanto maior o valor atribuído, menor a intensidade. Faremos o cálculo para aumentarmos o brilho konforme girarmos o potenciômetro em sentido horário. potensi = 1023 - potensi; // atribui o valor lido do potenciômetro para configurar a intensidade do brilho do LED analogWrite(LED_BUILTIN, potencia); }

Direkomendasikan: