ESP32 - Variation de l'intensité d'une LED par potentiomètre

Ce tutoriel vous explique comment utiliser l'ESP32 avec le potentiomètre pour modifier la luminosité d'une LED.

Si vous souhaitez déclencher une LED lorsque la tension du potentiomètre atteint un seuil, consultez le tutoriel ESP32 - le potentiomètre déclenche la LED.

Préparation du matériel

1×ESP-WROOM-32 Dev Module
1×USB Cable Type-C
1×Potentiometer
1×LED
1×220 ohm resistor
1×Breadboard
1×Jumper Wires
1×(Optional) DC Power Jack
1×(Recommended) ESP32 Screw Terminal Adapter

Or you can buy the following sensor kits:

1×DIYables Sensor Kit (30 sensors/displays)
1×DIYables Sensor Kit (18 sensors/displays)
Divulgation : Certains des liens fournis dans cette section sont des liens affiliés Amazon. Nous pouvons recevoir une commission pour tout achat effectué via ces liens, sans coût supplémentaire pour vous. Nous vous remercions de votre soutien.

À propos des LED et des potentiomètres

Nous disposons de tutoriels spécifiques sur les LED et les potentiomètres. Chaque tutoriel contient des informations détaillées et des instructions étape par étape sur le brochage du matériel, le principe de fonctionnement, les connexions de câblage à l'ESP32, le code ESP32... Pour en savoir plus, consultez les liens suivants :

Diagramme de câblage

Diagramme de câblage LED de potentiomètre rotatif ESP32

This image is created using Fritzing. Click to enlarge image

Si vous ne savez pas comment alimenter l'ESP32 et d'autres composants, vous pouvez trouver des conseils dans le tutoriel suivant : Comment alimenter l'ESP32.

Comment programmer

  • Lit l'entrée sur la broche analogique (valeur entre 0 et 4095)
int analogValue = analogRead(36); // GPIO36 (ADC0)
  • L'ajuste à la luminosité (valeur entre 0 et 255)
int brightness = map(analogValue, 0, 4095, 0, 255);
  • Règle la luminosité de la LED
analogWrite(LED_PIN, brightness);

Code ESP32

/* * Ce code ESP32 a été développé par newbiely.fr * Ce code ESP32 est mis à disposition du public sans aucune restriction. * Pour des instructions complètes et des schémas de câblage, veuillez visiter: * https://newbiely.fr/tutorials/esp32/esp32-potentiometer-fade-led */ #define POTENTIOMETER_PIN 36 // ESP32 pin GPIO36 (ADC0) connected to Potentiometer pin #define LED_PIN 21 // ESP32 pin GPIO21 connected to LED's pin // the setup routine runs once when you press reset: void setup() { // initialize serial communication at 9600 bits per second: Serial.begin(9600); // declare LED pin to be an output: pinMode(LED_PIN, OUTPUT); } // the loop routine runs over and over again forever: void loop() { // reads the input on analog pin A0 (value between 0 and 4095) int analogValue = analogRead(POTENTIOMETER_PIN); // scales it to brightness (value between 0 and 255) int brightness = map(analogValue, 0, 4095, 0, 255); // sets the brightness LED that connects to pin 3 analogWrite(LED_PIN, brightness); // print out the value Serial.print("Analog value = "); Serial.print(analogValue); Serial.print(" => brightness = "); Serial.println(brightness); delay(100); }

Étapes rapides

  • Si c'est la première fois que vous utilisez ESP32, consultez comment configurer l'environnement pour ESP32 sur Arduino IDE.
  • Copiez le code ci-dessus et collez-le dans Arduino IDE.
  • Compilez et téléchargez le code sur la carte ESP32 en cliquant sur le bouton Upload dans Arduino IDE
  • Ouvrez le moniteur série sur Arduino IDE
Comment ouvrir le moniteur série sur Arduino IDE
  • Tournez le potentiomètre
  • Voyez la LED diminuer progressivement
  • Regardez le résultat sur le moniteur série. Il ressemble à ce qui suit :
COM6
Send
Analog value = 6 => brightness = 1 Analog value = 34 => brightness = 8 Analog value = 89 => brightness = 22 Analog value = 149 => brightness = 37 Analog value = 214 => brightness = 53 Analog value = 297 => brightness = 74 Analog value = 365 => brightness = 90 Analog value = 431 => brightness = 107 Analog value = 510 => brightness = 127 Analog value = 589 => brightness = 146 Analog value = 695 => brightness = 173 Analog value = 790 => brightness = 196 Analog value = 970 => brightness = 241 Analog value = 996 => brightness = 248 Analog value = 1018 => brightness = 253 Analog value = 4095 => brightness = 255
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Vidéo

※ OUR MESSAGES

  • Please feel free to share the link of this tutorial. However, Please do not use our content on any other websites. We invested a lot of effort and time to create the content, please respect our work!