Arduino Nano ESP32 - Potentiomètre LED
Ce tutoriel vous explique comment utiliser l'Arduino Nano ESP32 avec un potentiomètre pour moduler la luminosité d'une LED.
Préparation du matériel
1 | × | Arduino Nano ESP32 | |
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) Screw Terminal Adapter for Arduino Nano |
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, le branchement des fils à l'ESP32, le code Arduino Nano ESP32... Pour en savoir plus, consultez les liens suivants :
Diagramme de câblage
This image is created using Fritzing. Click to enlarge image
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 Arduino Nano ESP32
/*
* Ce code Arduino Nano ESP32 a été développé par newbiely.fr
* Ce code Arduino Nano 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/arduino-nano-esp32/arduino-nano-esp32-potentiometer-led
*/
#define POTENTIOMETER_PIN A0 // The Arduino Nano ESP32 pin connected to Potentiometer pin
#define LED_PIN D3 // The Arduino Nano ESP32 pin 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 l'Arduino Nano ESP32, consultez comment configurer l'environnement pour Arduino Nano ESP32 sur Arduino IDE.
- Copiez le code ci-dessus et collez-le dans l'Arduino IDE.
- Compilez et téléchargez le code sur la carte Arduino Nano ESP32 en cliquant sur le bouton Upload dans l'Arduino IDE.
- Ouvrez le moniteur série sur Arduino IDE.
- Tournez le potentiomètre
- Observez l'atténuation de la LED
- Consultez le résultat sur le moniteur série. Cela ressemble à ce qui suit :
COM6
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
Clear output
9600 baud
Newline