Tabla de contenido:
2025 Autor: John Day | [email protected]. Última modificación: 2025-01-13 06:57
En este proyecto, crearemos una pantalla LED roja, blanca y azul con un potenciómetro y un botón pulsador. Suena fácil, pero también usaremos interrupciones para esto. Entonces, cuando se presiona el botón pulsador, el valor del potenciómetro establecerá el brillo de los LED. Los materiales necesarios incluyen:
-Arduino Uno R3
-tablero de circuitos
-cables macho a macho
-tres LED (rojo, blanco, azul)
-potenciómetro
-presionar el botón
Resistencia de -220ohm
Paso 1: Energía y tierra
Primero, conecte la tierra y la energía de 5v a la placa de pruebas.
Paso 2: Conexión de LED
Coloque los tres LED en la placa de pruebas. Conecte el cátodo al suelo para cada uno. Conecte una resistencia de 220 ohmios al ánodo y luego conéctela al arduino, pines 9-11.
Paso 3: botón pulsador
Para el pulsador, asegúrese de conectarlo exactamente en la imagen. Energía a energía, resistencia de 220 ohmios a tierra, y luego el extremo opuesto al pin 3. Esto se utilizará como interrupción.
Paso 4: potenciómetro
Al igual que el botón pulsador, conecte el potenciómetro como se muestra en la imagen. Esto servirá para ajustar el brillo.
Paso 5: posibles errores
Asegúrese de que los pines estén conectados como se muestra en el código y las imágenes, y que coincidan. Además, asegúrese de que el ánodo y el cátodo estén conectados en consecuencia.
Paso 6: Código
const byte ledBlue = 11; // establece el LED azul en el pin 11const byte ledRed = 10; // establece el LED rojo en el pin 10
const byte ledWhite = 9; // establece el LED blanco en el pin 9
const byte interruptPin = 3; // el pulsador como interrupción
const byte potPin = 1; // el potenciómetro es el pin A1
volátil int brillante; // Brillo LED
configuración vacía () {
pinMode (ledBlue, SALIDA); // LED azul como SALIDA
pinMode (ledRed, SALIDA); // LED rojo como SALIDA
pinMode (ledWhite, SALIDA); // LED blanco como SALIDA
pinMode (interruptPin, INPUT_PULLUP); // pin de botón como INPUT_PULLUP
pinMode (potPin, ENTRADA); // pin del potenciómetro como ENTRADA
// configura la interrupción con pin de entrada y brillo en RISING
attachInterrupt (digitalPinToInterrupt (interruptPin), light, RISING);
} // finalizar la instalación
bucle vacío () {
analogWrite (ledBlue, brillante); // Establece el LED azul en el nivel de brillo establecido
analogWrite (ledRed, brillante); // Establece el LED rojo en el nivel de brillo establecido
analogWrite (ledWhite, brillante); // Establece el LED blanco en el nivel de brillo establecido
} // fin del ciclo
luz vacía () {
brillante = analogRead (potPin); // Lee el valor del potenciómetro
brillante = mapa (brillante, 0, 1023, 0, 255); // Mapas de valores para el brillo del LED
} // final más brillante