- Potrebni materijali:
- Kratki uvod u matrični LCD zaslon 16 × 2 točke:
- Kružni dijagram i veza:
- Programiranje MSP430 za LCD pomoću Energije:
- LCD od 16x2 s MSP430G2:
Ovo je treći tutorial u nizu lekcija u kojem učimo programirati MSP430G2 LaunchPad pomoću Energia IDE. U našem prethodnom vodiču naučili smo kako kontrolirati igle za digitalni ulaz i izlaz na našoj MSP ploči. U ovom uputstvu naučit ćemo kako povezati LCD s pločom kako bismo mogli prikazati korisne informacije.
LCD koji koristimo u ovom projektu najčešće je korišten matrični LCD zaslon 16 × 2 točke s alfanumeričkim prikazima. Većina nas naišla bi na to putem javnih PCO-a ili drugih elektroničkih projekata. Ovakav zaslon vrlo će dobro doći za naše buduće vodiče za prikaz podataka i ostalih podataka o otklanjanju pogrešaka. Povezivanje ovog LCD zaslona s MSP430 vrlo je jednostavno zahvaljujući dostupnoj knjižnici. Pa zaronimo !!
Potrebni materijali:
- MSP430G2 LaunchPad tvrtke Texas Instruments
- LCD zaslon s matricom 16 × 2 točke
- Spajanje žica
- Energia IDE
Kratki uvod u matrični LCD zaslon 16 × 2 točke:
Kao što je ranije rečeno, Energia IDE nudi prekrasnu biblioteku koja čini povezivanje dijelom kolača, pa stoga nije obavezno znati bilo što o modulu zaslona. Ali, zar ne bi bilo zanimljivo pokazati što koristimo !!
Naziv 16 × 2 implicira da zaslon ima 16 stupaca i 2 reda, što zajedno (16 * 2) tvori 32 okvira. Jedna pojedinačna kutija izgledala bi otprilike ovako na donjoj slici

Jedan okvir ima 40 piksela (točkica) s redoslijedom matrice od 5 redaka i 8 stupaca, tih 40 piksela zajedno tvori jedan znak. Slično tome, 32 znaka mogu se prikazati pomoću svih okvira. Sada ćemo pogledati pinouts.

LCD ima ukupno 16 pinova, kao što je gore prikazano, oni se mogu svrstati u četiri skupine kao što slijedi
Izvorne igle (1, 2 i 3): ove iglice daju snagu i razinu kontrasta zaslona
Upravljački pinovi (4, 5 i 6): Ovi pinovi postavljaju / kontroliraju registre u IC-u za povezivanje LCD-a (više o tome možete pronaći na donjoj poveznici)
Podaci / naredbe (7 do 14): Ove iglice pružaju podatke o tome koje informacije trebaju biti prikazane na LCD-u.
LED igle (15 i 16): Ove se igle koriste za osvjetljavanje pozadinskog osvjetljenja LCD-a ako je potrebno (nije obavezno).
Od svih ovih 16 pinova, samo 10 pinova treba koristiti obvezno za ispravan rad LCD-a ako želite saznati više o ovim LCD zaslonima, prijeđite na ovaj članak o LCD-u.
Kružni dijagram i veza:
Kompletna shema sklopa za povezivanje matričnog LCD zaslona 16 × 2 točke s MSP430G2 prikazana je u nastavku.

Jedno od glavnih ograničenja prilikom povezivanja ove dvije su njihovi radni naponi. LCD zaslon ima radni napon od + 5V, dok MSP radi samo s 3,6V. Srećom po nas podatkovni pin LCD sučelja IC (HD44780U) ima širok radni napon od 2,7 V do 5,5 V. Stoga se moramo brinuti samo za Vdd (pin 2) LCD-a, dok podatkovni pinovi mogu raditi čak i s 3,6 V.
Ploča MSP430G2 prema zadanim postavkama ne daje vam + 5V pin, no mi možemo napraviti mali hak da dobijemo + 5V od MSP430 pomoću USB priključka. Ako pažljivo pogledate u blizini USB priključka možete pronaći terminal pod nazivom TP1, ovaj terminal će nam dati + 5v. Sve što moramo učiniti je zalemiti mali muški zatik za zaglavlje kako je prikazano dolje kako bismo ga mogli spojiti na naš LCD zaslon.

Napomena: Ne spajajte opterećenja koja mogu potrošiti više od 50 mA na ovaj 5V pin, jer bi to moglo pržiti vaš USB priključak.
Ako vas ne zanima lemljenje, jednostavno upotrijebite bilo kakvu + 5V reguliranu opskrbu i napajajte LCD zaslon, u tom slučaju obavezno spojite masu napajanja na masu MSP ploče.
Kad završite s kontaktom + 5V koji povezuje ostale pinove, prilično su jednostavni. Sad kad je naš hardver spreman, prijeđimo na softverski dio.
Programiranje MSP430 za LCD pomoću Energije:
Kompletan program sučelje je MSP430G2553 s LCD zaslon daje na kraju ove stranice. Kôd se može sastaviti, prenijeti i koristiti kao takav. U sljedećim odlomcima objasnit ću kako program radi.
Prije nego što nastavimo s objašnjenjem, moramo zabilježiti igle koje koristimo. Ako pogledate gornji shematski prikaz, a dolje MIS430 pin-out dijagram

Možete zaključiti da smo LCD povezali prema sljedećoj tablici
|
Naziv LCD pin-a |
Spojen na |
|
Vss |
Prizemlje |
|
Vdd |
+ 5V USB pin |
|
Rs |
Pin 2 MSP-a |
|
R / W |
Prizemlje |
|
Omogućiti |
Pin 3 MSP-a |
|
D4 |
Pin 4 MSP-a |
|
D5 |
Pin 5 MSP-a |
|
D6 |
Iglica 6 MSP-a |
|
D7 |
Pin 7 MSP-a |
Imajući ovo na umu, krenimo definirati LCD igle korištene u našem programu. Svaki ćemo prikličnik nazvati smislenijim imenom kako bismo ga kasnije mogli lako koristiti.
#define RS 2 #define EN 3 #define D4 4 #define D5 5 #define D6 6 #define D7 7
To jednostavno znači da umjesto pozivanja pina 2 mogu ga u daljnjem tekstu nazvati RS, slično za svih 6 pinova.
Sljedeći bi korak bio uključivanje LCD biblioteke. Ova bi se knjižnica automatski instalirala kad biste instalirali Energia IDE. Dakle, samo ga dodajte pomoću sljedećeg retka
#include
Sljedeći je korak spomenuti pinove na koje je LCD povezan, jer smo ga već nazvali pomoću #define , a sada možemo jednostavno spomenuti nazive LCD pinova. Obavezno slijedite isti redoslijed.
LCD LiquidCrystal (RS, EN, D4, D5, D6, D7);
Sada će nas premjestiti u void setup () funkciji. Postoji toliko mnogo vrsta LCD zaslona koji se razlikuju po veličini i prirodi, a on koji koristimo je 16 * 2, pa navedimo to u našem programu
lcd.begin (16, 2);
Da bismo nešto ispisali na LCD, u programu moramo spomenuti dvije stvari. Jedan je položaj teksta koji se može spomenuti pomoću retka lcd.setCursor (), a drugi je sadržaj za ispis koji se može spomenuti pomoću lcd.print (). U ovoj liniji smo postavljanje kursora na 1 -og reda i 1 -og stupca.
lcd.setCursor (0,0);
Slično tome, možemo i mi
lcd.setCursor (0,1); // postavljanje kursora na 1. stupac 2. redak
Baš kao i brisanje bijele ploče nakon pisanja na njoj, LCD bi se također trebao izbrisati kad se na njemu nešto napiše. To se može učiniti pomoću donjeg retka
lcd.clear ();
Tako bi kompletna funkcija void setup () izgledala otprilike ovako.
void setup () {lcd.begin (16, 2); // Koristimo LCD zaslon 16 * 2 lcd.setCursor (0,0); // Postavite pokazivač na 1. redak 1. stupac lcd.print ("MSP430G2553"); // Prikazuje uvodnu poruku lcd.setCursor (0, 1); // postavljanje kursora na 1. stupac 2. redak lcd.print ("- CircuitDigest"); // Prikaz kašnjenja uvodne poruke (2000); // Pričekajte da zaslon prikaže informacije lcd.clear (); // Zatim očistite}
Dalje, unutar naše funkcije void loop () , nastavimo povećavati broj za svakih 500 ms i prikažemo broj na LCD-u. Ovaj broj testira i inicijalizira se na 1 kao što je prikazano u nastavku
int test = 1;
Za stvaranje kašnjenja možemo koristiti ugrađenu funkciju delay (). Moramo napomenuti koliko nam vremena treba da dođe do kašnjenja. U našem smo slučaju koristili 500 ms kako je prikazano u nastavku
kašnjenje (500);
Povećavanje varijable može se izvršiti testom ++, ostalo su već objašnjene. Kompletan kod unutar šupljina petlje je prikazan ispod
void loop () {lcd.print ("LCD s MSP-om"); // Prikazuje uvodnu poruku lcd.setCursor (0, 1); // postavljanje kursora na stupac 0, redak 1 lcd.print (test); // Prikaži kašnjenje uvodne poruke (500); lcd.clear (); // Zatim očistite test ++; }
LCD od 16x2 s MSP430G2:
Nakon što hardver i kôd budu spremni, jednostavno spojite ploču s računalom i prenesite kôd kao što smo to učinili u prvom vodiču. Nakon što je kôd prenesen, trebali biste vidjeti zaslon koji prikazuje sljedeće.

Nakon dvije sekunde zaslon zaslona promijenit će se iz postavke u petlju i početi povećavati varijablu i prikazivati se na zaslonu kao što je prikazano na donjoj slici.

Potpuna radna mogu naći u videu ispod. Samo naprijed i pokušajte promijeniti ono što se prikazuje na LCD-u i poigrajte se s tim. Nadam se da ste razumjeli tutorial i naučili nešto korisno iz njega. Ako sumnjate, ostavite ih u odjeljku za komentare ispod ili koristite forume. Upoznajmo se u drugom uputstvu.
