Turinys:
- 1 žingsnis:
- 2 žingsnis:
- 3 veiksmas: pradžia - aparatinė įranga
- 4 žingsnis: Darbo pradžia - programinė įranga
- 5 žingsnis: dviejų spalvų šviesos diodai
- 6 žingsnis: 7 segmentų ekranas
- 7 žingsnis:
- 8 žingsnis:
- 9 veiksmas:
- 10 žingsnis: mygtukai
Video: „Arduino“ir TM1638 LED ekrano moduliai: 11 žingsnių
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:47
Jei jums reikia greito ir paprasto būdo, kaip prie projekto pridėti vartotojo įvesties ir išvesties, šie ekrano moduliai yra įdomūs ir įdomūs.
Juose yra aštuoni 7 segmentų raudoni šviesos diodų skaitmenys, aštuoni raudoni/žali šviesos diodai ir aštuoni mygtukai vartotojo įvedimui. Įrenginiai taip pat gali būti sujungti grandinėlėmis, leidžiantys iki penkių vienu metu, o prie kiekvieno modulio pridedamas trumpas kabelis, taip pat keletas trumpų tarpiklių ir varžtų, kaip parodyta paveikslėlyje.
1 žingsnis:
Tarpikliai yra pakankamai ilgi, kad pakeltų PCB virš paviršiaus, tačiau, norint sumontuoti plokštes bet kurioje naudingoje vietoje, jums reikia ilgesnių. Taip pat galbūt norėsite pašalinti IDC lizdus, jei norite modulį pritvirtinti arti skydo paviršiaus. Tai būtų paprasta litavimo užduotis, nes jie yra lizdai per skyles.
2 žingsnis:
Plokštę valdo TM1638 IC.
Tai yra „Titan Micro Electronics“LED ir sąsajos tvarkyklės IC. Šiuos IC taip pat galite nusipirkti iš „PMD Way“. Norėdami gauti daugiau informacijos, taip pat galite atsisiųsti duomenų lapą.
3 veiksmas: pradžia - aparatinė įranga
Techninė įranga-prijungimas prie „Arduino“suderinamos plokštės (ar kitos MCU) yra gana paprasta. Smeigtukai rodomi galinėje PCB pusėje ir atitinka juostos kabelio tvirtinimą. Jei pažvelgsite į kabelio galą kaip tokį.
Viršutinė dešinė skylė yra vienas kaištis, o viršutinė kairioji-antrasis kaištis, apatinis dešinysis kaištis devyni ir apatinis kairysis kaištis-dešimt. Todėl spuogai yra šie:
- Vcc (5V)
- GND
- CLK
- DIO
- STB1
- STB2
- STB3
- STB4
- STB5
- neprisijungęs.
Naudojant „Arduino“, 1–4 kaiščiai yra minimalūs, reikalingi vienam moduliui naudoti. Kiekvienam papildomam moduliui reikės kito skaitmeninio kaiščio, prijungto prie STB2, STB3 ir tt Daugiau apie tai vėliau. Atminkite, kad kiekvienas modulis, nustatytas visu ryškumu su kiekvienu šviesos diodu, sunaudoja 127 mA, todėl būtų protinga naudoti išorinę energiją su daugiau nei vienu moduliu ir kitomis jungtimis su „Arduino“plokštėmis.
4 žingsnis: Darbo pradžia - programinė įranga
Programinė įranga - atsisiųskite ir įdiekite T1638 biblioteką iš čia. Ačiū ir pagarba rjbatista at gmail dot com už biblioteką. Inicijuoti eskizo modulius paprasta. Įtraukite biblioteką su:
#įtraukti
tada naudokite vieną iš šių būdų kiekvienam moduliui:
TM1638 modulis (x, y, z);
x yra „Arduino“skaitmeninis kaištis, prijungtas prie modulio kabelio kaiščio 4, y yra „Arduino“skaitmeninis kaištis, prijungtas prie modulio kabelio kaiščio 3, ir z yra „stroboskopas“. Taigi, jei prie 8, 7 ir 6 kaiščių būtų prijungtas vienas modulis su duomenimis, laikrodžiu ir švyturėliu, naudotumėte:
TM1638 modulis (8, 7, 6);
Jei turėtumėte du modulius, kurių pirmojo modulio švyturys būtų prijungtas prie „Arduino digital 6“, o antrojo modulio stroboskopas būtų prijungtas prie skaitmeninio 5, naudosite:
TM1638 modulis (8, 7, 6); TM1638 modulis (8, 7, 5);
ir tt daugiau modulių. Dabar valdykite ekraną …
5 žingsnis: dviejų spalvų šviesos diodai
Lengva valdyti raudonus/žalius šviesos diodus. Kaip nuoroda, jie yra sunumeruoti nuo nulio iki septynių iš kairės į dešinę. Norėdami įjungti arba išjungti vieną šviesos diodą, naudokite šiuos veiksmus:
module.setLED (TM1638_COLOR_RED, x); // nustatykite LED numerį x į redmodule.setLED (TM1638_COLOR_GREEN, x); // nustatykite LED numerį x į žalią modulį.setLED (TM1638_COLOR_RED+TM1638_COLOR_GREEN, 0); // nustatykite šviesos diodo skaičių x į raudoną ir žalią
Anksčiau pateikto metodo naudojimas gali būti paprastas, bet šiek tiek neefektyvus. Geresnis būdas yra įtraukti visus šviesos diodus į vieną teiginį. Norėdami tai padaryti, į ekraną siunčiame du baitus duomenų šešioliktainiais skaičiais. MSB (svarbiausias baitas) susideda iš aštuonių bitų, kurių kiekvienas yra vienas žalias šviesos diodas, įjungtas (1) arba išjungtas (0). LSB (mažiausiai reikšmingas baitas) reiškia raudonus šviesos diodus.
Paprastas būdas nustatyti šešioliktainę vertę valdyti šviesos diodus yra paprastas: vaizdas yra viena šviesos diodų eilutė - pirmosios aštuonios yra žalios, o antros aštuonios - raudonos. Kiekvieną skaitmenį nustatykite į 1, jei norite įjungti, o 0 - išjungti. Konvertuokite du dvejetainius skaičius į šešioliktainius ir naudokite šią funkciją:
module.setLEDs (0xgreenred);
Kur žalia yra šešioliktainis skaičius žalių šviesos diodų, o raudona - šešioliktainis skaičius raudonųjų šviesos diodų. Pavyzdžiui, norint įjungti pirmuosius tris šviesos diodus kaip raudonus, o paskutinius tris - žalius, dvejetainis vaizdas bus toks:
00000111 11100000, šešioliktainis yra E007.
Taigi mes naudosime:
module.setLEDs (0xE007);
kuris sukuria vaizdą, kaip parodyta aukščiau.
6 žingsnis: 7 segmentų ekranas
Norėdami išvalyti skaitinį ekraną (bet ne toliau esančius šviesos diodus), tiesiog naudokite:
module.clearDisplay ();
arba norėdami įjungti kiekvieną segmentą IR visus šviesos diodus, naudokite šiuos nurodymus
module.setupDisplay (tiesa, 7); // kur 7 yra intensyvumas (nuo 0 iki 7)
Norėdami rodyti dešimtainius skaičius, naudokite šią funkciją:
module.setDisplayToDecNumber (a, b, false);
kur a yra sveikasis skaičius, b yra dešimtainio taško padėtis (0 - nė vieno, 1 - 8, 2, 7, 4 - 6, 8 - 4 ir tt) ir paskutinis parametras (true/ false) įjungia arba išjungia priekinius nulius. Šis eskizas parodo šios funkcijos naudojimą:
#include // apibrėžti modulį duomenų kaištyje 8, laikrodžio kaištyje 9 ir strobos smeigtuke 7 TM1638 modulyje (8, 9, 7); nepasirašytas ilgas a = 1; void setup () {} void loop () {for (a = 10000; a <11000; a ++) {module.setDisplayToDecNumber (a, 4, false); uždelsimas (1); } for (a = 10000; a <11000; a ++) {module.setDisplayToDecNumber (a, 0, true); uždelsimas (1); }}
… Su rezultatais, parodytais vaizdo įraše.
7 žingsnis:
Viena iš įdomiausių funkcijų yra galimybė slinkti tekstu per vieną ar daugiau ekranų. Tam tikrai nereikia paaiškinimo, nes pridėtas demonstracinis eskizas:
tm_1638_scrolling_modules_example.pde
įtraukta į TM1638 biblioteką, yra lengvai sekama. Tiesiog įterpkite tekstą į „const char“eilutę , įsitikinkite, kad eskizo pradžioje modulis (-ai) yra prijungtas (-i) pagal modulio apibrėžimą ir esate pasiruošę. Norėdami pamatyti galimus simbolius, apsilankykite funkcijų puslapyje. Atkreipkite dėmesį, kad ekranas yra tik septynių segmentų, todėl kai kurie simboliai gali atrodyti nepriekaištingai, tačiau kontekstas suteiks jums gerą idėją-žiūrėkite vaizdo įrašą šiame žingsnyje.
8 žingsnis:
Galiausiai taip pat galite atskirai kreiptis į kiekvieną kiekvieno skaitmens segmentą. Apsvarstykite šio masyvo turinį:
baitų vertės = {1, 2, 4, 8, 16, 32, 64, 128};
kiekvienas elementas žymi skaitmenis nuo 1 iki 8. Kiekvieno elemento vertė nustato, kuris skaitmens segmentas įsijungia. Segmentų a ~ f, dp reikšmės yra 1, 2, 4, 6, 16, 32, 64, 128. Taigi aukščiau esančio masyvo naudojimo šioje funkcijoje rezultatai:
module.setDisplay (vertės);
bus pagal vaizdą.
9 veiksmas:
Žinoma, galite sujungti kiekvieno skaitmens reikšmes, kad sukurtumėte savo simbolius, simbolius ir pan. Pavyzdžiui, naudojant šias vertes:
baitų vertės = {99, 99, 99, 99, 99, 99, 99, 99};
mes sukūrėme pagal šį veiksmą.
10 žingsnis: mygtukai
Mygtuko reikšmės grąžinamos kaip baito reikšmė iš funkcijos:
module.getButtons ();
Kadangi yra aštuoni mygtukai, kiekvienas iš jų reiškia vieną dvejetainio skaičiaus bitą, kuris grąžinamas kaip baitas. Kairėje esantis mygtukas grąžina dešimtainį skaičių, o dešinysis - 128. Taip pat gali būti spaudžiami vienu metu, todėl paspaudus vieną ir aštuonis mygtukus, grąžinama 129. Apsvarstykite šį eskizą, kuriame pateikiamos mygtukų paspaudimų vertės dešimtaine forma, tada rodoma vertė:
#include // apibrėžti modulį duomenų kaištyje 8, laikrodžio kaištyje 9 ir strobe 7 TM1638 modulyje (8, 9, 7); baitų mygtukai; void setup () {} void loop () {mygtukai = module.getButtons (); module.setDisplayToDecNumber (mygtukai, 0, klaidinga); }
ir rezultatai vaizdo įraše.
Šios ekraninės plokštės yra naudingos ir, tikiuosi, suras namus jūsų projektuose. Šį įrašą jums pateikė pmdway.com - siūlo viską gamintojams ir elektronikos entuziastams, nemokamas pristatymas visame pasaulyje.
Rekomenduojamas:
„Raspberry Pi“ekrano ir jutiklinio ekrano pasukimas: 4 veiksmai
Pasukti „Raspberry Pi“ekraną ir jutiklinį ekraną: tai yra pagrindinė instrukcija, skirta parodyti, kaip pasukti bet kurio „Raspberry Pi“, kuriame veikia „Buster Raspbian“operacinė sistema, ekraną ir jutiklinį ekraną, tačiau šį metodą naudoju nuo pat Jessie. Čia naudojami vaizdai yra iš Raspberry Pi
Veikimas be ekrano / ekrano (be galvos) „Raspberry Pi“ar kituose „Linux“/ „Unix“kompiuteriuose: 6 žingsniai
Veikimas be ekrano / ekrano (be galvos) „Raspberry Pi“ar kituose „Linux“/ „Unix“kompiuteriuose: Kai dauguma žmonių perka „Raspberry PI“, jie mano, kad jiems reikia kompiuterio ekrano. Nešvaistykite pinigų nereikalingiems kompiuterių monitoriams ir klaviatūroms. Negaiškite laiko perkeldami klaviatūras ir monitorius iš vieno kompiuterio į kitą. Nesiriškite televizoriaus, kai jo nėra
Keli LED ekrano moduliai: 6 žingsniai (su paveikslėliais)
Keli LED ekranų moduliai: Sveiki visi, man patinka dirbti su LED ekranais su 7 segmentais arba su taškiniu matricu, ir aš su jais jau padariau daug įvairių projektų. Kiekvieną kartą jie yra įdomūs, nes yra tam tikra magija, kaip jie gali veikti, nes tai, ką matote
„Raspberry Pi“jutiklinio ekrano ekrano pamoka: 5 žingsniai (su paveikslėliais)
„Raspberry Pi“jutiklinio ekrano ekrano pamoka: atmeskite savo HDMI kabelius, nes dabar galite turėti „Pi“ekraną! Ši instrukcija padės jums nustatyti „Pi“sąranką su jutikliniu ekranu ir kaip ją naudoti, kad atitiktų jūsų poreikius. Bet kokio tipo HAT stiliaus ekranas gali būti
Ekrano temperatūra P10 LED ekrano modulyje naudojant „Arduino“: 3 žingsniai (su paveikslėliais)
Ekrano temperatūra P10 LED ekrano modulyje naudojant „Arduino“: Ankstesnėje pamokoje buvo pasakyta, kaip rodyti tekstą „Dot Matrix LED Display P10“modulyje naudojant „Arduino“ir DMD jungtį, kurią galite patikrinti čia. Šioje pamokoje mes pateiksime paprastą projekto pamoką, naudojant P10 modulį kaip ekrano mediją