- Reikalingos medžiagos:
- Trumpas 16 × 2 taškų matricos LCD ekrano įvadas:
- Grandinės schema ir jungtis:
- Skystųjų kristalų ekrano MSP430 programavimas naudojant „Energia“:
- 16x2 skystųjų kristalų ekranas su MSP430G2:
Tai yra trečioji pamoka iš vadovėlių sekos, kurioje mes mokomės programuoti „MSP430G2 LaunchPad“ naudodami „Energia IDE“. Ankstesnėje mūsų pamokoje mes sužinojome, kaip valdyti skaitmeninius įvesties ir išvesties kaiščius savo MSP plokštėje. Šioje pamokoje sužinosime, kaip susieti LCD su lenta, kad galėtume parodyti naudingą informaciją.
Skystųjų kristalų ekranas, kurį naudojame šiame projekte, yra dažniausiai naudojamas 16 × 2 taškų matricos skystųjų kristalų ekranas, rodantis raidinius ir skaitmeninius ekranus. Daugelis iš mūsų būtų su tuo susidūrę per viešuosius PCO ar kitus elektronikos projektus. Toks ekranas bus labai naudingas mūsų būsimoms mokymo programoms, kad būtų rodomi duomenys ir kita derinimo informacija. Dėl turimos bibliotekos labai lengva susieti šį LCD ekraną su MSP430. Taigi pasinerkime !!
Reikalingos medžiagos:
- „MSP430G2 LaunchPad“ iš „Texas Instruments“
- 16 × 2 taškų matricos LCD ekranas
- Jungiamieji laidai
- „Energia IDE“
Trumpas 16 × 2 taškų matricos LCD ekrano įvadas:
Kaip minėta anksčiau, „Energia IDE“ siūlo gražią biblioteką, kuri suteikia sąsają pyrago gabalėliui, todėl nėra nieko žinoti apie ekrano modulį. Bet argi nebūtų įdomu parodyti, ką mes naudojame !!
Pavadinimas 16 × 2 reiškia, kad ekrane yra 16 stulpelių ir 2 eilutės, kurios kartu (16 * 2) sudaro 32 langelius. Žemiau esančiame paveikslėlyje viena dėžutė atrodys maždaug taip
Viename langelyje yra 40 taškų (taškų), kurių matricos tvarka yra 5 eilutės ir 8 stulpeliai. Šie 40 taškų kartu sudaro vieną simbolį. Panašiai, naudojant visus langelius, gali būti rodomi 32 simboliai. Dabar galime pažvelgti į pinouts.
Skystųjų kristalų ekranas turi 16 kontaktų, kaip parodyta aukščiau, juos galima suskirstyti į keturias grupes, kaip nurodyta toliau
Šaltiniai kaiščiai (1, 2 ir 3): šie kaiščiai suteikia ekrano galios ir kontrasto lygį
Valdymo kaiščiai (4, 5 ir 6): Šie kaiščiai nustato / valdo registrus LCD sąsajos IC (daugiau tai galite rasti žemiau esančioje nuorodoje)
Duomenų / komandų kaiščiai (nuo 7 iki 14): šie kaiščiai pateikia duomenis, kokia informacija turėtų būti rodoma LCD.
LED smeigtukai (15 ir 16): Šie kaiščiai naudojami LCD ekrano apšvietimui, jei reikia (nebūtina).
Iš visų šių 16 smeigtukų, norint tinkamai veikti skystųjų kristalų ekrane, privaloma naudoti tik 10 smeigtukų, jei norite sužinoti daugiau apie šiuos LCD ekranus, pereikite prie šio LCD straipsnio.
Grandinės schema ir jungtis:
Visa grandinės schema, skirta susieti 16 × 2 taškų matricos LCD ekraną su MSP430G2, parodyta žemiau.
Vienas pagrindinių suvaržymų tarp šių dviejų apribojimų yra jų darbinė įtampa. LCD ekranas turi darbinė įtampa + 5V, o JEP veikia tik su 3.6V. Mums pasisekė, kad LCD sąsajos IC (HD44780U) duomenų kaiščio darbinė įtampa yra nuo 2,7 iki 5,5 V. Taigi mes turime nerimauti tik dėl Vdd (2 kaištis) LCD, o duomenų kaiščiai gali veikti net su 3,6 V.
MSP430G2 plokštė pagal numatytuosius nustatymus nesuteikia jums + 5 V kaiščio, tačiau mes galime padaryti nedidelį nulaužimą, kad gautume + 5 V iš MSP430 naudojant USB prievadą. Atidžiai apžiūrėję USB prievadą galite rasti terminalą, vadinamą TP1, šis terminalas duos mums + 5v. Viskas, ką turime padaryti, yra lituoti mažą vyrišką antraštės kaištį, kaip parodyta žemiau, kad galėtume jį prijungti prie savo LCD ekrano.
Pastaba: Prie šio 5 V kaiščio neprijunkite apkrovos, kurios gali sunaudoti daugiau nei 50 mA, nes tai gali pakepti jūsų USB prievadą.
Jei nesidomite litavimu, tiesiog naudokite bet kurį + 5 V reguliuojamą maitinimo šaltinį ir maitinkite skystųjų kristalų ekraną, tokiu atveju įsitikinkite, kad prijungėte savo maitinimo šaltinio įžeminimą prie MSP plokštės žemės.
Kai baigsite, kai + 5V kaištis sujungs kitus kaiščius, yra gana paprasta. Dabar, kai mūsų aparatinė įranga yra paruošta, pereikime prie programinės įrangos dalies.
Skystųjų kristalų ekrano MSP430 programavimas naudojant „Energia“:
Visa programa, skirta sąsajai su MSP430G2553 su LCD ekranu, pateikiama šio puslapio pabaigoje. Kodas gali būti sudarytas, įkeltas ir naudojamas kaip toks. Tolesniuose punktuose paaiškinsiu, kaip veikia programa.
Prieš tęsdami paaiškinimus, turime užsirašyti kaiščius, kuriuos naudojame. Jei pažvelgsite į pirmiau pateiktą grandinės schemą ir žemiau esančią „MSP430“ išvesties schemą
Galite padaryti išvadą, kad mes prijungėme skystųjų kristalų ekraną pagal šią lentelę
LCD smeigtuko pavadinimas |
Prisijungęs prie |
Vss |
Žemė |
Vdd |
+ 5 V USB kaištis |
Rs |
2 MSP kaištis |
R / W |
Žemė |
Įgalinti |
3 MSP kaištis |
D4 |
4 MSP kaištis |
D5 |
5 MSP kaištis |
D6 |
6 MSP kaištis |
D7 |
7 MSP kaištis |
Atsižvelgdami į tai, pradėkime apibrėžti mūsų programoje naudojamus LCD kaiščius. Kiekvieną smeigtuką pavadinsime prasmingesniu pavadinimu, kad vėliau galėtume lengvai jį naudoti.
# apibrėžti RS 2 # apibrėžti EN 3 # apibrėžti D4 4 # apibrėžti D5 5 # apibrėžti D6 6 # apibrėžti D7 7
Tai paprasčiausiai reiškia, kad vietoj to, kad paskambinčiau 2 smeigtuku, toliau galiu tai vadinti RS, panašiai kaip ir visiems 6 smeigtukams.
Kitas žingsnis būtų įtraukti LCD biblioteką. Ši biblioteka būtų įdiegta automatiškai, kai įdiegsite „Energia IDE“. Taigi tiesiog pridėkite jį naudodami šią eilutę
# įtraukti
Kitas žingsnis yra paminėti kaiščius, prie kurių yra prijungtas skystųjų kristalų ekranas, nes mes jau jį pavadinome naudodami #define, dabar galime tiesiog paminėti LCD smeigtukų pavadinimus. Įsitikinkite, kad laikomasi tos pačios tvarkos.
„LiquidCrystal lcd“ (RS, EN, D4, D5, D6, D7);
Dabar pereikime prie „ void setup“ () funkcijos. Yra tiek daug įvairių dydžių ir pobūdžio skystųjų kristalų ekranų, kurių dydis yra 16 * 2, todėl nurodykime tai savo programoje
lcd.begin (16, 2);
Norėdami ką nors atspausdinti skystųjų kristalų ekrane, programoje turime paminėti du dalykus. Viena yra teksto vieta, kurią galima paminėti naudojant eilutę lcd.setCursor (), o kita yra spausdintinas turinys, kurį gali paminėti lcd.print (). Šioje eilutėje mes nustatyti žymeklį į 1 -ojo eilės ir 1 -ojo skiltyje.
lcd.setCursor (0,0);
Panašiai galime ir mes
lcd.setCursor (0, 1); // nustatykite žymeklį į 1 stulpelio 2 eilutę
Lygiai taip pat, kaip ištrinant lentą po to, kai ant jos parašyta, taip pat reikia ištrinti LCD ekraną, kai ant jo parašyta kažkas. Tai galima padaryti naudojant žemiau esančią eilutę
lcd.clear ();
Taigi visa „ void setup“) funkcija atrodys maždaug taip.
negaliojanti sąranka () {lcd.begin (16, 2); // Mes naudojame 16 * 2 skystųjų kristalų ekraną lcd.setCursor (0,0); // Įdėkite žymeklį į 1-osios eilutės 1-ąjį stulpelį lcd.print ("MSP430G2553"); // Rodyti įvadinį pranešimą lcd.setCursor (0, 1); // nustatykite žymeklį į 1 stulpelio 2 eilutę lcd.print ("- CircuitDigest"); // Rodyti intro pranešimo delsą (2000); // Palaukite, kol ekrane bus rodoma informacija lcd.clear (); // Tada nuvalykite}
Toliau, mūsų funkcijoje void loop () , toliau didinkime skaičių kas 500ms ir rodykime skaičių LCD. Šis skaičius patikrinamas ir inicijuojamas į 1, kaip parodyta žemiau
int testas = 1;
Norėdami sukurti vėlavimą, galime naudoti integruotą funkcijos delsą (). Turime paminėti, kiek laiko mums reikia vėlavimo. Mūsų atveju aš panaudojau 500 ms, kaip parodyta žemiau
vėlavimas (500);
Kintamąjį padidinti galima atlikus testą ++, likusi dalis jau paaiškinta. Visas kodas tuščiosios linijos viduje parodytas žemiau
void loop () {lcd.print ("LCD su MSP"); // Rodyti įvadinį pranešimą lcd.setCursor (0, 1); // nustatykite žymeklį į 0 stulpelį, 1 eilutė lcd.print (testas); // Rodyti įvesties pranešimo delsą (500); lcd.clear (); // Tada išvalykite test + +; }
16x2 skystųjų kristalų ekranas su MSP430G2:
Kai jūsų aparatinė įranga ir kodas bus paruošti, tiesiog prijunkite kompiuterį prie kompiuterio ir įkelkite kodą, kaip tai darėme pamokoje. Kai kodas bus įkeltas, turėtumėte pamatyti ekraną, kuriame rodoma:
Po dviejų sekundžių ekranas pasikeis iš sąrankos į ciklą ir pradės didinti kintamąjį ir rodyti ekrane, kaip parodyta žemiau esančiame paveikslėlyje.
Pilnas darbo galima rasti vaizdo įrašą žemiau. Pirmyn pabandykite pakeisti tai, kas rodoma LCD ekrane, ir žaiskite su juo. Tikiuosi, kad supratote mokymo programą ir iš jos sužinojote ką nors naudingo. Jei turite kokių nors abejonių, palikite juos komentarų skiltyje žemiau arba naudokitės forumais. Susitikime kitoje pamokoje.