Inhaltsverzeichnis:

Anzeigetafel-Projekt mit P10-LED-Anzeige mit DMD - Gunook
Anzeigetafel-Projekt mit P10-LED-Anzeige mit DMD - Gunook

Video: Anzeigetafel-Projekt mit P10-LED-Anzeige mit DMD - Gunook

Video: Anzeigetafel-Projekt mit P10-LED-Anzeige mit DMD - Gunook
Video: P10 LED Module || P10 LED Display 2024, Juli
Anonim
Anzeigetafel-Projekt mit P10-LED-Anzeige mit DMD
Anzeigetafel-Projekt mit P10-LED-Anzeige mit DMD

Oft treffen wir uns in einem Fußballstadion; Es gibt eine riesige LED-Tafel, die als Anzeigetafel dient. So auch in anderen Sportbereichen, auch oft kennen wir die Anzeigetafel des Displays aus LED. Obwohl nicht möglich, gibt es auch ein Feld, das noch eine manuelle Tafel verwendet.

In diesem Projekt erstellen wir eine Anzeigetafel mit Dot-Matrix-Display mit einem Bluetooth-basierten Android-Smartphone als Controller.

Schritt 1: Benötigte Materialien

Materialien, die Sie brauchen
Materialien, die Sie brauchen
Materialien, die Sie brauchen
Materialien, die Sie brauchen
Materialien, die Sie brauchen
Materialien, die Sie brauchen

Du wirst brauchen:

  • Arduino Uno
  • SFE DMD-Steckverbinder
  • P10 Outdoor/ Semi Outdoor
  • HC-05 Bluetooth-Modul
  • Stromversorgung 5 Volt
  • Taktschalter
  • Brotbrett
  • Überbrückungsdrähte

Schritt 2: Verkabelung

Verdrahtung
Verdrahtung

Nachdem die Komponenten gesammelt wurden, verbinden Sie jede Komponente gemäß dem obigen Schema.

Schritt 3: Code

Code
Code

Vergewissern Sie sich nach dem Anschließen jeder Komponente, dass die Komponente richtig installiert ist, bevor Sie sie einschalten. Bringen Sie auch den DMD-Stecker entsprechend dem auf der Platine gezeigten Pin an. Verbinden Sie Arduino mit Ihrem PC / Laptop und laden Sie das untenstehende Programm hoch.

// Dateibibliothek einfügen#include #include #include

// Funktion definieren

#define bCLEAR A1 #define bRIGHT A2 #define bLEFT A0 #define Panjang 2 // Anzahl der Höhe des Displays P10 #define Lebar 1 // Anzahl der Breite des Displays P10

SoftDMD-dmd(Panjang, Lebar);

// Deklarationsvariable Byte Helligkeit; Byte-Entprellung = 100; int rightScore = 0; int leftScore = 0; int ich; char dmdBuff[10]; Zeichen BT; // Setup-Funktion, einmal ausgeführt arduino reset void setup () { Helligkeit = EEPROM.read (0); dmd.setHelligkeit(10); dmd.selectFont(MyBigFont); dmd.begin(); dmd.clearScreen(); Serial.begin (9600); pinMode (bCLEAR, INPUT_PULLUP); pinMode (bRIGHT, INPUT_PULLUP); pinMode (bLEFT, INPUT_PULLUP);

blinkDisplay();

} // Blinkanzeigefunktion, lässt die Anzeige blinken void blinkDisplay () { dmd.clearScreen (); Verzögerung (300); sprintf(dmdBuff, "%d", leftScore); dmd.drawString(0, 0, dmdBuff); dmd.drawString(29, 0, "-"); sprintf(dmdBuff, "%2d", rightScore); dmd.drawString(43, 0, dmdBuff); Verzögerung (300); dmd.clearScreen(); Verzögerung (300); sprintf(dmdBuff, "%d", leftScore); dmd.drawString(0, 0, dmdBuff); dmd.drawString(29, 0, "-"); sprintf(dmdBuff, "%2d", rightScore); dmd.drawString(43, 0, dmdBuff); Verzögerung (300); dmd.clearScreen(); Verzögerung (300); } // ZIEL-Funktion, ZIEL-Text anzeigen, wenn Eingabe eingefügt wurde void GOAL () { dmd.clearScreen (); Verzögerung (400); dmd.drawString(5, 0, "ZIEL!!!"); Verzögerung (400); dmd.clearScreen(); Verzögerung (400); dmd.drawString(5, 0, "ZIEL!!!"); Verzögerung (3000); } // Schleifenfunktion, wiederholt ausgeführt void loop () { if (Serial.available ()) {BT = Serial.read (); aufrechtzuerhalten. If (digitalRead (bCLEAR) == LOW || BT == 'X') { Verzögerung (Entprellung); linke Bewertung = 0; rechter Wert = 0; dmd.clearScreen(); BT = 0; } if (digitalRead (bLEFT) == NIEDRIG || BT == 'A') { Verzögerung (Entprellung); leftScore++; ZIEL(); blinkDisplay(); BT = 0; } if (digitalRead (bRIGHT) == NIEDRIG || BT == 'B') { Verzögerung (Entprellung); rightScore++; ZIEL(); 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); Verzögerung (300); if (digitalRead (bLEFT) == LOW && digitalRead (bRIGHT) == LOW) { dmd.clearScreen (); Verzögerung (Entprellung); setBrightness: Helligkeit = EEPROM.read(0); if (digitalRead (bLEFT) == LOW) {delay (debounce); Helligkeit ++;} if (digitalRead (bRIGHT) == LOW) {delay (debounce); Helligkeit--;} EEPROM.write(0, Helligkeit); dmd.setBrightness(Helligkeit); sprintf(dmdBuff, "%3d", Helligkeit); dmd.drawString(16, 0, dmdBuff); Verzögerung (50);

if (digitalRead (bCLEAR) == 0) {dmd.clearScreen (); Verzögerung (Entprellung); Schleife();}

else{goto setBrightness;} } }

Schritt 4: Bewerbung

Anwendung
Anwendung

Wenn beim Hochladen des Programms ein Fehler auftritt, benötigen Sie eine vorhandene DMD-Bibliothek mit zusätzlichen Schriftarten, um die Anzeige der Anzeigetafel zu unterstützen, laden Sie DMD2-Bibliotheken herunter. Das obige Bild ist die Anzeige des Scoreboards.

Schritt 5: Android-Anwendung

Android-Anwendung
Android-Anwendung
Android-Anwendung
Android-Anwendung

SFE-Scoreboard-Android-Apps können hier heruntergeladen werden. Hier ist die Hauptansicht der SFE-Anzeigetafel-App.

So verwenden Sie es wie folgt:

  1. Installieren Sie die Anwendung auf Ihrem Android-Smartphone.
  2. Öffnen Sie die App, wenn eine Benachrichtigung zur Bluetooth-Aktivierung vorliegt, klicken Sie auf Ja.
  3. Um eine Verbindung zum Bluetooth-Modul herzustellen, klicken Sie auf das Bluetooth-Symbol oben in der Anwendung. Es wird eine Bluetooth-Liste angezeigt, die mit Ihrem Gerät verbunden wurde.
  4. Wenn der Name Ihres Bluetooth-Moduls auf dem Gerät jedoch nicht verfügbar ist, müssen Sie zuerst das Pairing durchführen, indem Sie das Bluetooth-Einstellungsmenü auf Ihrem Gerät aufrufen. Nachdem der Scanvorgang abgeschlossen ist und der Name Ihres Bluetooth-Moduls angezeigt wird, führen Sie die Kopplung durch. Wenn Sie aufgefordert werden, ein Passwort einzugeben, geben Sie das Passwort 1234 für den Modulstandard ein, falls dieser nicht ersetzt wurde.
  5. Wenn die Anwendung verbunden ist, können Sie bereits mit Ihrem Android-Gerät auf die Anzeigetafel zugreifen.

Schritt 6: Sehen Sie sich das Video an, um mehr zu erfahren

Empfohlen: