Cuprins:

ESP8266 Utilizarea PWM cu potențiometru: 4 pași
ESP8266 Utilizarea PWM cu potențiometru: 4 pași

Video: ESP8266 Utilizarea PWM cu potențiometru: 4 pași

Video: ESP8266 Utilizarea PWM cu potențiometru: 4 pași
Video: Arduino curs în limba română. [13] PWM. 2024, Iulie
Anonim
Image
Image
Poartă
Poartă

Pentru cei care nu sunt obișnuiți cu electronica, PWM înseamnă controlul puterii. Și în acest ansamblu, vă arătăm cum să-l utilizați pentru a controla intensitatea luminii unui LED, similar cu un estompator pe o lampă, cu opțiuni de întunecare și luminare.

Acest mecanism vă permite, de exemplu, să conectați un driver la un motor. Aceasta este doar una dintre multele posibilități.

- Notă: PWM înseamnă Pulse-Width Modulation.

Pasul 1: Obiectiv

Ansamblul constă dintr-un potențiometru, care este un rezistor variabil, monitorizat de ESP. În această schemă, folosesc același cod sursă pe care l-aș folosi cu un Arduino. Datorită numeroaselor sale avantaje, folosim Arduino IDE cu ESP și în alte proiecte.

În ansamblu, ESP este conectat la USB numai pentru alimentare. Avem și pinul cursorului, care este pinul potențiometrului central, conectat în portul AD, și pozitivul și negativul.

Deoarece tensiunea variază, este posibil să citiți o valoare diferită în AD. Prin urmare, prin rotirea potențiometrului, este posibil să crească sau să scadă luminozitatea LED-ului.

Pasul 2: Asamblare

Asamblare
Asamblare

Schema electrică este foarte simplă: folosind ESP8266 în configurația NodeMCU, vom alimenta USB-ul. Deci, aici, potențiometrul trebuie să fie conectat de la un capăt la negativ, iar celălalt de la pozitiv. Mediul, care este cursorul, rămâne pornit în ADC 0, deoarece acest ESP are doar un port care citește valori analogice.

Pasul 3: WiFi ESP8266 NodeMCU ESP-12E

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

Pasul 4: Cod sursă

Înființat

În funcția Setup, definim comportamentul pinilor pe care îi folosim, în acest caz LED-ul și POTENTIOMETRUL.

void setup () {Serial.begin (115200) // Instrução para colocar o gpio care iremos use as entry, // putem fazer a leitura nesse pino pinMode (A0, INPUT); // A0 é uma constant que indica o pino que ligamos nosso potenciômetro // Instrução para colocar o gpio that iremos use as saída, // putem modifica valorile voastre livrate pentru HIGH ou LOW pinMode (LED_BUILTIN, OUTPUT); // LED_BUILTIN este uma constantă care indică LED-ul ESP8266}

Buclă

În această funcție, logica este să citiți valoarea POT și să atribuiți această valoare (care este intensitatea luminozității) în LED.

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

Recomandat: