Mündəricat:

DMD -dən istifadə edərək P10 LED Ekranlı Score Board Layihəsi: 6 Addım (Şəkillərlə)
DMD -dən istifadə edərək P10 LED Ekranlı Score Board Layihəsi: 6 Addım (Şəkillərlə)

Video: DMD -dən istifadə edərək P10 LED Ekranlı Score Board Layihəsi: 6 Addım (Şəkillərlə)

Video: DMD -dən istifadə edərək P10 LED Ekranlı Score Board Layihəsi: 6 Addım (Şəkillərlə)
Video: New hope for young Duchenne Muscular Dystrophy patients in Australia | 7NEWS 2024, Noyabr
Anonim
DMD istifadə edərək P10 LED Ekranlı Score Board Layihəsi
DMD istifadə edərək P10 LED Ekranlı Score Board Layihəsi

Çox vaxt futbol stadionunda görüşürük; bir tablo kimi xidmət edən nəhəng bir LED lövhəsi var. Eləcə də digər idman sahələrində də LED -lərdən ibarət olan ekranın hesab lövhəsini tanıyırıq. Mümkün olmasa da, hələ də əl lövhəsindən istifadə edən bir sahə var.

Bu layihədə nəzarətçi olaraq Bluetooth əsaslı Android Smartphone istifadə edərək Dot-matrix Display istifadə edərək bir hesab lövhəsi yaradırıq.

Addım 1: Lazım olan materiallar

Ehtiyacınız olan materiallar
Ehtiyacınız olan materiallar
Ehtiyacınız olan materiallar
Ehtiyacınız olan materiallar
Ehtiyacınız olan materiallar
Ehtiyacınız olan materiallar

Sizə lazım olacaq:

  • Arduino Uno
  • SFE DMD Konnektoru
  • P10 Açıq/ Yarı Açıq
  • HC-05 Bluetooth Modulu
  • Enerji təchizatı 5 volt
  • Tact Switch
  • Çörək lövhəsi
  • Jumper telləri

Addım 2: Kabel çəkmə

Kablolama
Kablolama

Komponentlər toplandıqdan sonra yuxarıdakı sxemə uyğun olaraq hər bir komponenti birləşdirin.

Addım 3: Kod

Kod
Kod

Hər bir komponenti bağladıqdan sonra açmadan əvvəl komponentin düzgün quraşdırıldığından əmin olun. Ayrıca DMD konnektorunu PCB -də göstərilən pinə uyğun olaraq bağlayın. Arduino'yu PC / Laptopunuza qoşun və proqramı aşağıda yükləyin.

// Fayl kitabxanası daxil edin #daxil edin #daxil edin #daxil edin

// Müəyyənedici funksiya

#define bCLEAR A1 #define bRIGHT A2 #define bLEFT A0 #define Panjang 2 // Ekranın P10 hündürlüyünün sayı #Lebar 1in təyin edilməsi // P10 Ekranın genişliyinin sayı

SoftDMD dmd (Panjang, Lebar);

// Bəyannamə Dəyişən bayt Parlaqlıq; baytdan çıxma = 100; int rightScore = 0; int leftScore = 0; int i; char dmdBuff [10]; char BT; // Quraşdırma funksiyası, arduino void setup sıfırlandıqdan sonra edilir () {Parlaqlıq = 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 ();

} // Ekran İşlətmə funksiyası, ekranı yanıb -sönən hala gətirin blinkDisplay () {dmd.clearScreen (); gecikmə (300); sprintf (dmdBuff, "%d", leftScore); dmd.drawString (0, 0, dmdBuff); dmd.drawString (29, 0, "-"); sprintf (dmdBuff, "%2d", rightScore); dmd.drawString (43, 0, dmdBuff); gecikmə (300); dmd.clearScreen (); gecikmə (300); sprintf (dmdBuff, "%d", leftScore); dmd.drawString (0, 0, dmdBuff); dmd.drawString (29, 0, "-"); sprintf (dmdBuff, "%2d", rightScore); dmd.drawString (43, 0, dmdBuff); gecikmə (300); dmd.clearScreen (); gecikmə (300); } // MƏQSƏD Function, daxil edildikdə GOAL mətni göstər GOAL () {dmd.clearScreen (); gecikmə (400); dmd.drawString (5, 0, "QOL !!!"); gecikmə (400); dmd.clearScreen (); gecikmə (400); dmd.drawString (5, 0, "QOL !!!"); gecikmə (3000); } // Loop Function, dəfələrlə yerinə yetirilir void loop () {if (Serial.available ()) {BT = Serial.read (); } if (digitalRead (bCLEAR) == DÜŞÜK || BT == 'X') {gecikmə (debounce); leftScore = 0; sağ skor = 0; dmd.clearScreen (); BT = 0; } if (digitalRead (bLEFT) == LOW || BT == 'A') {gecikmə (debounce); leftScore ++; Məqsəd (); blinkDisplay (); BT = 0; } if (digitalRead (bRIGHT) == LOW || BT == 'B') {gecikmə (debounce); rightScore ++; Məqsəd (); 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); gecikmə (300); əgər (digitalRead (bLEFT) == LOW && digitalRead (bRIGHT) == LOW) {dmd.clearScreen (); gecikmə (geri çəkilmə); setBrightness: Parlaqlıq = EEPROM.read (0); if (digitalRead (bLEFT) == LOW) {gecikmə (çıxarmaq); Parlaqlıq ++;} if (digitalRead (bRIGHT) == LOW) {gecikmə (çıxarmaq); Parlaqlıq-;} EEPROM.write (0, Parlaqlıq); dmd.setBrightness (Parlaqlıq); sprintf (dmdBuff, "%3d", Parlaqlıq); dmd.drawString (16, 0, dmdBuff); gecikmə (50);

əgər (digitalRead (bCLEAR) == 0) {dmd.clearScreen (); gecikmə (geri çəkilmə); döngə ();}

başqa {goto setBrightness;}}}

Addım 4: Tətbiq

Tətbiq
Tətbiq

Proqramı yükləyərkən bir səhv baş verərsə, hesab lövhəsinin göstərilməsini dəstəkləmək üçün mövcud olan əlavə yazı tipli DMD kitabxanasına ehtiyacınız var, DMD2 kitabxanalarını yükləyin. Yuxarıdakı şəkil Scoreboard ekranıdır.

Addım 5: Android tətbiqi

Android tətbiqi
Android tətbiqi
Android tətbiqi
Android tətbiqi

SFE Scoreboard android tətbiqlərini buradan yükləyə bilərsiniz. SFE Score Board tətbiqinin əsas görünüşü budur.

Necə istifadə olunur, aşağıdakı kimi:

  1. Tətbiqi Android smartfonunuza quraşdırın.
  2. Proqramı açın, bluetooth aktivləşdirmək üçün bir bildiriş varsa, bəli düyməsini basın.
  3. Bluetooth moduluna qoşulmaq üçün tətbiqin yuxarısındakı Bluetooth simgesini vurun, cihazınızla cütləşən bir bluetooth siyahısı göstəriləcək.
  4. Ancaq bluetooth modulunuzun adı cihazda yoxdursa, əvvəlcə cihazınızdakı bluetooth parametrləri menyusuna girərək cütləşdirmə etməlisiniz. Tarama prosesi başa çatdıqdan və bluetooth modulunuzun adı göründükdən sonra cütləşdirin. Bir parol daxil etməyiniz istənirsə, dəyişdirilməyibsə, modul standartı üçün 1234 parolunu daxil edin.
  5. Tətbiq bağlıdırsa, artıq Android cihazınızdan istifadə edərək hesab lövhəsinə daxil ola bilərsiniz.

Addım 6: Daha çox bilmək üçün videoya baxın

Tövsiyə: