INHOUDSOPGAWE:

Tellingbordprojek met P10 LED -skerm met DMD: 6 stappe (met foto's)
Tellingbordprojek met P10 LED -skerm met DMD: 6 stappe (met foto's)

Video: Tellingbordprojek met P10 LED -skerm met DMD: 6 stappe (met foto's)

Video: Tellingbordprojek met P10 LED -skerm met DMD: 6 stappe (met foto's)
Video: Как спрятать данные в ячейках Excel? 2024, Julie
Anonim
Tellingbordprojek met P10 LED -skerm met behulp van DMD
Tellingbordprojek met P10 LED -skerm met behulp van DMD

Dikwels ontmoet ons mekaar in 'n sokkerstadion; daar is 'n reuse LED -bord wat as 'n telbord dien. So ook op ander sportterreine, dikwels ken ons ook die telbord van die LED -skerm. Alhoewel dit nie moontlik is nie, is daar ook 'n veld wat steeds 'n handmatige bord gebruik.

In hierdie projek skep ons 'n telbord met 'n Dot-matrix-skerm met 'n Bluetooth-gebaseerde Android-slimfoon as die beheerder.

Stap 1: materiaal wat u benodig

Materiaal wat u benodig
Materiaal wat u benodig
Materiaal wat u benodig
Materiaal wat u benodig
Materiaal wat u benodig
Materiaal wat u benodig

Jy sal nodig hê:

  • Arduino Uno
  • SFE DMD -aansluiting
  • P10 Buitelug/ Semi Buitelug
  • HC-05 Bluetooth-module
  • Kragtoevoer 5 Volt
  • Tact Switch
  • Broodbord
  • Jumper Wires

Stap 2: Bedrading

Bedrading
Bedrading

Sodra die komponente versamel is, koppel elke komponent volgens die skema hierbo.

Stap 3: Kodeer

Kode
Kode

Nadat elke komponent gekoppel is, moet u seker maak dat die komponent behoorlik geïnstalleer is voordat u dit aanskakel. Bevestig ook die DMD -aansluiting volgens die pen wat op die PCB aangedui word. Koppel Arduino op u rekenaar / skootrekenaar en laai die onderstaande program op.

// Voeg lêerbiblioteek in #include #include #include

// Definieer funksie

#definieer bCLEAR A1 #definieer bRIGHT A2 #definieer bLEFT A0 #definieer Panjang 2 // Aantal hoogte van die vertoning P10 #definieer Lebar 1 // Aantal breedte van die skerm P10

SoftDMD dmd (Panjang, Lebar);

// Deklarasie Veranderlike byte Helderheid; byte debounce = 100; int rightScore = 0; int leftScore = 0; int ek; char dmdBuff [10]; char BT; // Opstelfunksie, uitgevoer sodra die opstelling van die leemte deur arduino herstel is () {Helderheid = 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 ();

} // Knip vertoonfunksie, laat die skerm flits ongeldig blinkDisplay () {dmd.clearScreen (); vertraging (300); sprintf (dmdBuff, "%d", leftScore); dmd.drawString (0, 0, dmdBuff); dmd.drawString (29, 0, "-"); sprintf (dmdBuff, "%2d", rightScore); dmd.drawString (43, 0, dmdBuff); vertraging (300); dmd.clearScreen (); vertraging (300); sprintf (dmdBuff, "%d", leftScore); dmd.drawString (0, 0, dmdBuff); dmd.drawString (29, 0, "-"); sprintf (dmdBuff, "%2d", rightScore); dmd.drawString (43, 0, dmdBuff); vertraging (300); dmd.clearScreen (); vertraging (300); } // DOEL Funksie, vertoon DOELTEKS wanneer ingevoer word leegte DOEL () {dmd.clearScreen (); vertraging (400); dmd.drawString (5, 0, "DOEL !!!"); vertraging (400); dmd.clearScreen (); vertraging (400); dmd.drawString (5, 0, "DOEL !!!"); vertraging (3000); } // Lusfunksie, herhaaldelik void loop () {if (Serial.available ()) {BT = Serial.read (); } if (digitalRead (bCLEAR) == LOW || BT == 'X') {delay (debounce); leftScore = 0; rightScore = 0; dmd.clearScreen (); BT = 0; } if (digitalRead (bLEFT) == LOW || BT == 'A') {delay (debounce); leftScore ++; DOELWIT (); blinkDisplay (); BT = 0; } if (digitalRead (bRIGHT) == LOW || BT == 'B') {delay (debounce); rightScore ++; DOELWIT (); 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); vertraging (300); as (digitalRead (bLEFT) == LOW && digitalRead (bRIGHT) == LOW) {dmd.clearScreen (); vertraging (debounce); setBrightness: Helderheid = EEPROM.read (0); if (digitalRead (bLEFT) == LOW) {vertraging (debounce); Helderheid ++;} as (digitalRead (bRIGHT) == LOW) {vertraging (debounce); Helderheid--;} EEPROM.write (0, Helderheid); dmd.setBrightness (Helderheid); sprintf (dmdBuff, "%3d", helderheid); dmd.drawString (16, 0, dmdBuff); vertraging (50);

as (digitalRead (bCLEAR) == 0) {dmd.clearScreen (); vertraging (debounce); lus ();}

anders {gaan na setBrightness;}}}

Stap 4: Toepassing

Aansoek
Aansoek

As 'n fout opduik tydens die oplaai van die program, benodig u 'n bestaande DMD -biblioteek met ekstra lettertipes om die vertoning van die telbord te ondersteun, laai DMD2 -biblioteke af. Die prent hierbo is die telbordvertoning.

Stap 5: Android -toepassing

Android -toepassing
Android -toepassing
Android -toepassing
Android -toepassing

SFE -telbord -Android -programme kan hier afgelaai word. Hier is die hoofbeskouing van die SFE Score Board -app.

Hoe om dit te gebruik, soos volg:

  1. Installeer die toepassing op u Android -slimfoon.
  2. Maak die app oop, as daar 'n kennisgewing is om Bluetooth te aktiveer, klik ja.
  3. Om met die Bluetooth -module aan te sluit, klik op die Bluetooth -ikoon bo -aan die toepassing, 'n Bluetooth -lys wat met u toestel gekoppel is.
  4. Maar as die naam van u Bluetooth -module nie op die toestel beskikbaar is nie, moet u eers koppel deur die Bluetooth -instellingsmenu op u toestel te betree. Nadat die skandeerproses voltooi is en die naam van u bluetooth -module verskyn, koppel dit. As u gevra word om 'n wagwoord in te voer, voer wagwoord 1234 in vir die module standaard, as dit nie vervang is nie.
  5. As die toepassing gekoppel is, het u reeds toegang tot die telbord met u Android -toestel.

Stap 6: Kyk na die video om meer te weet

Aanbeveel: