Мазмуну:

P10 LED дисплейи менен DMDди колдонуу менен Score Board долбоору: 6 кадам (Сүрөттөр менен)
P10 LED дисплейи менен DMDди колдонуу менен Score Board долбоору: 6 кадам (Сүрөттөр менен)

Video: P10 LED дисплейи менен DMDди колдонуу менен Score Board долбоору: 6 кадам (Сүрөттөр менен)

Video: P10 LED дисплейи менен DMDди колдонуу менен Score Board долбоору: 6 кадам (Сүрөттөр менен)
Video: LED экран внутренний для школы экономики 2024, Ноябрь
Anonim
P10 LED дисплейи менен DMDди колдонуу менен Score Board долбоору
P10 LED дисплейи менен DMDди колдонуу менен Score Board долбоору

Көбүнчө биз футбол стадионунда жолугушабыз; табло катары кызмат кылган алп LED тактасы бар. Башка спорттук талаада да, биз көбүнчө LEDден жасалган дисплейдин таблосун билебиз. Мүмкүн болбосо да, дагы эле кол тактасын колдонгон талаа бар.

Бул долбоордо биз контролдоочу катары Bluetooth негизделген Android смартфонун колдонуп, Dot-matrix Display дисплейин түзөбүз.

1 -кадам: Сизге керектүү материалдар

Сизге керектүү материалдар
Сизге керектүү материалдар
Сизге керектүү материалдар
Сизге керектүү материалдар
Сизге керектүү материалдар
Сизге керектүү материалдар

Сага керек болот:

  • Arduino Uno
  • SFE DMD туташтыргычы
  • P10 Тышкы/ Жарым Ачык
  • HC-05 Bluetooth модулу
  • Электр менен камсыздоо 5 Вольт
  • Tact Switch
  • Нан тактасы
  • Jumper Wires

2 -кадам: Кабелдөө

Электр өткөргүчтөрү
Электр өткөргүчтөрү

Компоненттер чогултулгандан кийин, ар бир компонентти жогорудагы схемага ылайык туташтырыңыз.

3 -кадам: Код

Code
Code

Ар бир компонент туташкандан кийин, аны иштетүүдөн мурун компоненттин туура орнотулганын текшериңиз. Ошондой эле DMD туташтыргычы ПКБда көрсөтүлгөн пинге ылайык тиркелет. Ардуинону компьютериңизге / ноутбукка туташтырып, төмөндөгү программаны жүктөңүз.

// Файл китепканасын кыстаруу #камтыйт #кошуу #кошуу

// Функцияны аныктоо

#define bCLEAR A1 #define bRIGHT A2 #define bLEFT A0 #Define Panjang 2 // Дисплейдин P10 бийиктигинин саны #Лебарды аныктоо 1 // P10 дисплейинин туурасынын саны

SoftDMD dmd (Панжанг, Лебар);

// Декларация Variable байт Brightness; байт дебунга = 100; int rightScore = 0; int leftScore = 0; int i; char dmdBuff [10]; char BT; // Орнотуу функциясы, бир жолу аткарылган arduino 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 ();

} // Blink Display Function, дисплейди жарк этип жок кылуу blinkDisplay () {dmd.clearScreen (); кечигүү (300); sprintf (dmdBuff, "%d", leftScore); dmd.drawString (0, 0, dmdBuff); dmd.drawString (29, 0, "-"); sprintf (dmdBuff, "%2d", rightScore); dmd.drawString (43, 0, dmdBuff); кечигүү (300); dmd.clearScreen (); кечигүү (300); sprintf (dmdBuff, "%d", leftScore); dmd.drawString (0, 0, dmdBuff); dmd.drawString (29, 0, "-"); sprintf (dmdBuff, "%2d", rightScore); dmd.drawString (43, 0, dmdBuff); кечигүү (300); dmd.clearScreen (); кечигүү (300); } // GOAL Функциясы, киргизилгенде GOAL текстин көрсөтүү GOAL () {dmd.clearScreen (); кечигүү (400); dmd.drawString (5, 0, "ГОЛ !!!"); кечигүү (400); dmd.clearScreen (); кечигүү (400); dmd.drawString (5, 0, "ГОЛ !!!"); кечигүү (3000); } // Loop Function, бир нече жолу аткарылган 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 ++; ГОЛ (); blinkDisplay (); BT = 0; } if (digitalRead (bRIGHT) == LOW || BT == 'B') {delay (debounce); rightScore ++; ГОЛ (); 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); кечигүү (300); if (digitalRead (bLEFT) == LOW && digitalRead (bRIGHT) == LOW) {dmd.clearScreen (); кечиктирүү (четтетүү); setBrightness: Жарыктык = EEPROM.read (0); if (digitalRead (bLEFT) == LOW) {кечиктирүү (чыгаруу); Жарыктык ++;} if (digitalRead (bRIGHT) == LOW) {кечиктирүү (ажыратуу); Жарыктык--;} EEPROM.write (0, Жарыктык); dmd.setBrightness (Жарыктык); sprintf (dmdBuff, "%3d", Жарыктык); dmd.drawString (16, 0, dmdBuff); кечиктирүү (50);

if (digitalRead (bCLEAR) == 0) {dmd.clearScreen (); кечиктирүү (четтетүү); цикл ();}

башка {goto setBrightness;}}}

4 -кадам: Колдонмо

Колдонмо
Колдонмо

Программаны жүктөө учурунда ката кетсе, табло дисплейин колдоо үчүн кошумча шрифттердин бар DMD китепканасы керек, DMD2 китепканаларын жүктөп алыңыз. Жогорудагы сүрөт Scoreboard дисплейи.

5 -кадам: Android тиркемеси

Android тиркемеси
Android тиркемеси
Android тиркемеси
Android тиркемеси

SFE Scoreboard андроид тиркемелерин бул жерден көчүрүп алса болот. Бул жерде SFE Score Board колдонмосунун негизги көрүнүшү.

Аны кантип колдонуу керек, төмөнкүчө:

  1. Колдонмону Android смартфонуңузга орнотуңуз.
  2. Колдонмону ачыңыз, эгер bluetoothду иштетүү жөнүндө эскертүү болсо, ооба дегенди басыңыз.
  3. Bluetooth модулуна туташуу үчүн, колдонмонун жогору жагындагы Bluetooth сөлөкөтүн чыкылдатыңыз, ал сиздин түзмөгүңүз менен теңдеш болгон bluetooth тизмесин көрсөтөт.
  4. Бирок, эгерде сиздин Bluetooth модулуңуздун аталышы түзмөктө жок болсо, алгач түзмөгүңүздөгү bluetooth орнотуулары менюсуна кирүү менен жупташууну жасашыңыз керек. Скандоо процесси аяктагандан кийин жана Bluetooth модулуңуздун аты пайда болгондон кийин, жупташтырыңыз. Эгер сырсөздү киргизүү суралса, модуль стандарты үчүн 1234 паролду киргизиңиз, эгер ал алмаштырылбаса.
  5. Колдонмо туташкан болсо, сиз буга чейин Android түзмөгүңүздү колдонуп, таблого кире аласыз.

6 -кадам: Көбүрөөк билүү үчүн видеону текшериңиз

Сунушталууда: