Isi kandungan:

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, November
Anonim
Image
Image
Matlamat
Matlamat

Bagi mereka yang tidak terbiasa dengan elektronik, PWM bermaksud kawalan kuasa. Dan dalam pemasangan ini, kami menunjukkan cara menggunakannya untuk mengawal intensiti cahaya LED, serupa dengan peredup lampu, dengan pilihan untuk menggelapkan dan mencerahkan.

Mekanisme ini juga membolehkan anda, misalnya, menghubungkan pemandu ke motor. Ini adalah salah satu daripada banyak kemungkinan.

- Catatan: PWM bermaksud Modulasi Pulse-Width.

Langkah 1: Matlamat

Pemasangan terdiri daripada potensiometer, yang merupakan perintang berubah-ubah, yang dipantau oleh ESP. Dalam skema ini, saya menggunakan kod sumber yang sama dengan yang saya gunakan dengan Arduino. Kerana banyak kelebihannya, kami menggunakan Arduino IDE dengan ESP dalam projek lain juga.

Dalam pemasangan, ESP disambungkan ke USB hanya untuk bekalan kuasa. Kami juga mempunyai pin kursor, yang merupakan pin potensiometer tengah, disambungkan di port AD, dan positif dan negatif.

Oleh kerana voltan berbeza, adalah mungkin untuk membaca nilai yang berbeza dalam AD. Oleh itu, dengan memutar potensiometer, adalah mungkin untuk meningkatkan atau menurunkan kecerahan LED.

Langkah 2: Perhimpunan

perhimpunan
perhimpunan

Skema elektrik sangat mudah: menggunakan ESP8266 dalam konfigurasi NodeMCU, kami akan mengaktifkan USB. Jadi di sini, potensiometer harus dihubungkan dari satu hujung ke negatif, dan yang lain dari positif. Medium, yang merupakan kursor, tetap di ADC 0, kerana ESP ini hanya mempunyai port yang membaca nilai analog.

Langkah 3: WiFi ESP8266 NodeMCU ESP-12E

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

Langkah 4: Kod Sumber

Persediaan

Dalam fungsi Setup, kita menentukan tingkah laku pin yang kita gunakan, dalam hal ini LED dan POTENTIOMETER.

batal persediaan () {Serial.begin (115200) // Instrução para colocar o gpio que iremos utilizar como entrada, // podemos fazer a leitura nesse pino pinMode (A0, INPUT); // A0 é uma stablee que indica o pino que ligamos nosso potenciômetro // Instrução para colocar o gpio que iremos utilizar como saída, // podemos alterar seu valor livremente para Hemat ou LOW pinMode (LED_BUILTIN, OUTPUT); // LED_BUILTIN uma uma conste que indica o LED do ESP8266}

Gelung

Dalam fungsi ini, logiknya adalah untuk membaca nilai POT dan memberikan nilai ini (yang merupakan intensiti kecerahan) dalam LED.

gelung void () {// 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 (potencia); // 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 configur girarmos o potenciômetro em sentido horário. potencia = 1023 - potencia; // atribui o valor lido do potenciômetro para configurar a intensidade do brilho do LED analogWrite (LED_BUILTIN, potencia); }

Disyorkan: