Tabla de contenido:
- Paso 1: materiales que necesita
- Paso 2: cableado
- Paso 3: Código
- Paso 4: Solicitud
- Paso 5: Aplicación de Android
- Paso 6: Verifique el video para saber más
Video: Proyecto de tablero de puntuación con pantalla LED P10 usando DMD: 6 pasos (con imágenes)
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:44
A menudo nos encontramos en un estadio de fútbol; hay un tablero LED gigante que sirve como marcador. Así también en otros campos deportivos, también a menudo conocemos el marcador de la pantalla de visualización hecha de LED. Aunque no es posible, también hay un campo que todavía usa un tablero manual.
En este proyecto, creamos un marcador usando una pantalla de matriz de puntos usando un teléfono inteligente Android basado en Bluetooth como controlador.
Paso 1: materiales que necesita
Necesitará:
- Arduino Uno
- Conector SFE DMD
- P10 al aire libre / semi al aire libre
- Módulo Bluetooth HC-05
- Fuente de alimentación 5 voltios
- Interruptor táctil
- Tabla de pan
- Cables de puente
Paso 2: cableado
Una vez que se hayan recopilado los componentes, conecte cada componente de acuerdo con el esquema anterior.
Paso 3: Código
Después de conectar cada componente, asegúrese de que esté instalado correctamente antes de encenderlo. También conecte el conector DMD de acuerdo con el pin que se muestra en la PCB. Conecte Arduino en su PC / computadora portátil y cargue el programa a continuación.
// Insertar biblioteca de archivos # incluye #include #include
// Definición de función
#define bCLEAR A1 #define bRIGHT A2 #define bLEFT A0 #define Panjang 2 // Number of height of Display P10 #define Lebar 1 // Number of width of Display P10
SoftDMD dmd (Panjang, Lebar);
// Declaración de brillo de bytes variables; rebote de bytes = 100; int rightScore = 0; int leftScore = 0; int i; char dmdBuff [10]; char BT; // Función de configuración, realizada una vez que arduino reinicia void setup () {Brightness = EEPROM.read (0); dmd.setBrightness (10); dmd.selectFont (MyBigFont); dmd.begin (); dmd.clearScreen (); Serial.begin (9600); pinMode (bCLEAR, INPUT_PULLUP); pinMode (bRIGHT, INPUT_PULLUP); pinMode (bLEFT, INPUT_PULLUP);
blinkDisplay ();
} // Función de pantalla parpadeante, hacer que la pantalla parpadee void blinkDisplay () {dmd.clearScreen (); retraso (300); sprintf (dmdBuff, "% d", leftScore); dmd.drawString (0, 0, dmdBuff); dmd.drawString (29, 0, "-"); sprintf (dmdBuff, "% 2d", rightScore); dmd.drawString (43, 0, dmdBuff); retraso (300); dmd.clearScreen (); retraso (300); sprintf (dmdBuff, "% d", leftScore); dmd.drawString (0, 0, dmdBuff); dmd.drawString (29, 0, "-"); sprintf (dmdBuff, "% 2d", rightScore); dmd.drawString (43, 0, dmdBuff); retraso (300); dmd.clearScreen (); retraso (300); } // Función OBJETIVO, muestra el texto OBJETIVO cuando se inserta la entrada void OBJETIVO () {dmd.clearScreen (); retraso (400); dmd.drawString (5, 0, "¡¡¡OBJETIVO !!!"); retraso (400); dmd.clearScreen (); retraso (400); dmd.drawString (5, 0, "¡¡¡OBJETIVO !!!"); retraso (3000); } // Función de bucle, realizada repetidamente void loop () {if (Serial.available ()) {BT = Serial.read (); } if (digitalRead (bCLEAR) == LOW || BT == 'X') {delay (antirrebote); leftScore = 0; rightScore = 0; dmd.clearScreen (); BT = 0; } if (digitalRead (bLEFT) == LOW || BT == 'A') {delay (antirrebote); leftScore ++; OBJETIVO(); blinkDisplay (); BT = 0; } if (digitalRead (bRIGHT) == LOW || BT == 'B') {delay (antirrebote); rightScore ++; OBJETIVO(); blinkDisplay (); BT = 0; }sprintf (dmdBuff, "% d", leftScore); dmd.drawString (0, 0, dmdBuff); dmd.drawString (29, 0, "-"); sprintf (dmdBuff, "% 2d", rightScore); dmd.drawString (43, 0, dmdBuff); retraso (300); if (digitalRead (bLEFT) == LOW && digitalRead (bRIGHT) == LOW) {dmd.clearScreen (); retardo (antirrebote); setBrightness: Brillo = EEPROM.read (0); if (digitalRead (bLEFT) == LOW) {delay (antirrebote); Brillo ++;} if (digitalRead (bRIGHT) == LOW) {delay (antirrebote); Brillo--;} EEPROM.write (0, Brillo); dmd.setBrightness (Brillo); sprintf (dmdBuff, "% 3d", Brillo); dmd.drawString (16, 0, dmdBuff); retraso (50);
if (digitalRead (bCLEAR) == 0) {dmd.clearScreen (); retardo (antirrebote); círculo();}
else {ir a setBrightness;}}}
Paso 4: Solicitud
Si se produce un error al cargar el programa, necesita una biblioteca DMD existente de fuentes adicionales para admitir la visualización del marcador, descargue las bibliotecas DMD2. La imagen de arriba es la pantalla del marcador.
Paso 5: Aplicación de Android
Las aplicaciones de Android SFE Scoreboard se pueden descargar aquí. Aquí está la vista principal de la aplicación SFE Score Board.
Cómo usarlo, de la siguiente manera:
- Instale la aplicación en su teléfono inteligente Android.
- Abra la aplicación, si hay una notificación para activar bluetooth, haga clic en sí.
- Para conectarse al módulo bluetooth, haga clic en el icono de Bluetooth en la parte superior de la aplicación, se mostrará una lista de bluetooth que se ha emparejado con su dispositivo.
- Pero si el nombre de su módulo bluetooth no está disponible en el dispositivo, primero debe realizar el emparejamiento ingresando al menú de configuración de bluetooth en su dispositivo. Una vez que se complete el proceso de escaneo y aparezca el nombre de su módulo bluetooth, realice el emparejamiento. Si se le solicita que ingrese una contraseña, ingrese la contraseña 1234 para el módulo estándar, si no se ha reemplazado.
- Si la aplicación está conectada, ya puede acceder al marcador usando su dispositivo Android.
Paso 6: Verifique el video para saber más
Recomendado:
Pantalla P10 DMD con Arduino y RTC DS3231: 4 pasos (con imágenes)
Pantalla P10 DMD con Arduino y RTC DS3231: Las pantallas P10 son una matriz de LED de matriz de puntos. El LED P10 se conoce generalmente como pantalla de matriz de puntos o pantalla DMD. Se basa en registros de desplazamiento, generalmente se utilizan registros de desplazamiento 74595. Se pueden conectar en cascada con más tablas similares. A
Juegos de tira de LED individuales para dos jugadores con tablero de puntuación: 10 pasos
Juegos de tira de LED individuales para dos jugadores con tablero de puntuación: en primer lugar, reza al dios por todos los pueblos del mundo, Dios solo puede ayudarnos y darnos paz en este momento. Todos estamos encerrados y no tenemos adónde ir. No tengo más trabajos que hacer, así que empiece a estudiar Python en línea y no puedo pensar en nada
Tablero MXY - Tablero de robot de dibujo de trazador XY de bajo presupuesto: 8 pasos (con imágenes)
Tablero MXY - Tablero de robot de dibujo de plotter XY de bajo presupuesto: Mi objetivo era diseñar el tablero mXY para hacer que la máquina de dibujo del plotter XY sea de bajo presupuesto. Así que diseñé una placa que se lo pone más fácil a quienes quieran realizar este proyecto. En el proyecto anterior, mientras usaba 2 motores paso a paso Nema17, esta placa u
Pantalla LCD I2C / IIC - Use una pantalla LCD SPI para la pantalla LCD I2C usando el módulo SPI a IIC con Arduino: 5 pasos
Pantalla LCD I2C / IIC | Use una pantalla LCD SPI para la pantalla LCD I2C usando el módulo SPI a IIC con Arduino: Hola a todos, ya que una pantalla LCD SPI 1602 normal tiene demasiados cables para conectar, por lo que es muy difícil conectarlo con arduino, pero hay un módulo disponible en el mercado que puede Convierta la pantalla SPI en la pantalla IIC, por lo que solo necesita conectar 4 cables
Muestra la temperatura en el módulo de pantalla LED P10 usando Arduino: 3 pasos (con imágenes)
Mostrar la temperatura en el módulo de pantalla LED P10 usando Arduino: En el tutorial anterior se le ha dicho cómo mostrar texto en el módulo P10 de pantalla LED de matriz de puntos usando Arduino y el conector DMD, que puede verificar aquí. En este tutorial, daremos un tutorial de proyecto simple utilizando el módulo P10 como pantalla med