Codevision avr

LCD mutatók szerves részét képezik az elektronikus berendezések kimenetre különböző információkat. Ebben a cikkben, beszéljünk néhány igen hasznos funkció a könyvtár LCD.h

LCD.h fejlécfájl létesítő sor funkcióval rendelkezik LCD kijelző, társított könyvtár LCD.lib írt assembly nyelven. Ezért írt egy funkciója a szerelvény kódot. Könyvtárak könnyebb dolgozni a programozó írásban állandó, ismétlődő kódot.

LCD.h könyvtár lehetővé teszi, hogy működjön együtt az LCD kijelző 40h2. Együttműködik 40x4 LCD használják a könyvtár LCD4x40.h támogatja a munkát a második vezérlő vonal E2 (LCD kijelző kettős vezérlők). Ez az LCD kijelző a modell a cég Winstar WH4004A.


A következő kód segítségével megjeleníteni a szöveget a kijelzőn 16x2. Tesztelt breadboard indikátorral WH1602D-YYB-CTK és Atmega8535:

void main (void) / * fő funkciója "fő", amellyel a teljesítmény az egész eljárást program kezdődik * /

LCD _ init (16); / * Inicializálása 16 karakter * /

LCD _ tiszta (); / * * Kijelző tisztító /

LCD _ gotoxy (4,0); / * A felső sorban, 4 pozíciók * /

LCD _ putsf ( "LCD 16 x 02"); / * levezetéséhez felirata ezeket a koordinátákat * /

LCD _ gotoxy (0,1); / * A lényeg, 0 pozíció * /

Egy példa a munkaprogram a szimulátorban Proteus 7.5 SP3:

Codevision avr

Mielőtt írni egy sort, hogy az LCD kijelzőn meg kell inicializálni azt. Erre ispolzuemfunktsiyu lcd_init:

lcd_init (unsigned char lcd_columns);

Zárójelben, hogy hány karakter van csatlakoztatva az LCD kijelzőn:

LCD _ init (8); / * Inicializálása 8 karakter * /

LCD _ init (16); / * Inicializálása 16 karakter * /

LCD _ init (20); / * Inicializálása 20 karakter * /

LCD _ init (40); / * Inicializálása legfeljebb 40 karakter * /

Végezze kijelző tisztítása. Használata lcd_clear () funkció;

Nos, a kezdeti teljes, előre megtisztított fény, ez már lehetséges kimenet. Bár lcd_gotoxy: még nem lehet. Mielőtt írunk szöveget kell határoznia a sor, hogy megjelenjen, és milyen pozícióból, így használjuk a funkciót:

lcd_gotoxy (unsigned char x unsigned char y.);

X - egy első szimbólum megjelenítési helyek (típusától függően indikátor)

y - ahol vonal (típusától függően indikátor)

Szerint LCD.h header fájlokat is képes megjeleníteni szöveget 0-39 karakter, és 0-3 vonalak. De használat közben derült ki, hogy működik LCD mutatók 40h2 (Type Winstar WH4002A). Használhat WH4004A mutató általában nem fog működni.

Codevision avr

LCD _ gotoxy (10,2);

Codevision avr

A szöveg fordítása több mint 10 karakter a következő sorba. Szöveg jelenik meg a lcd_putsf () függvényt:

lcd_putsf (char vaku * str);

A szöveg, amelyet az érvelés a funkció, akkor a rekord közvetlenül:

Lcd _ putsf ( "Hello World!");

Unsigned char * txt = "Hello World!";

LCD _ putsf (TXT);

a szöveg megjelenítéséhez az LCD kijelző funkció megköveteli bizonyos szöveget egy változó - funkció lcd_puts:

lcd_putchar funkció (char c); Ez lehetővé teszi, hogy megjelenítse a karaktereket a karakterkészlet:

LCD _ putchar (0 x 41); / * A karakter az angol betűk A * /

LCD _ putchar (0 x 5 b); / * Szimbólum szögletes zárójelben [* /

LCD _ putchar (0 xff); / * Töltsük karakterek ismerete * /

Az alábbiakban egy programkód, amely kitölti az alsó sorban egy helyzetben 0-15 karakter töltött megszokás kódtábla (0xFF karakter kód).

unsigned char J = 0; / * Határozza meg egy változó tárolására egy pozitív szám 0-tól 255 * /

void main (void) / * fő funkciója "fő", amellyel a teljesítmény az egész eljárást program kezdődik * /

LCD _ putsf ( "inicializálás");

míg a (1) / * végre a ciklust, amíg a kezelő végez iFne állapotban J == * 16 /

lcd_gotoxy (j-1,1); / * Írja be a második szimbólum húr 0-15 * /

lcd_putchar (0xff); / * Töltsük karakter ismerős a karakter kód táblázat * /

if (j == 16) break;> / *, ha a ha a feltétel teljesül, akkor megszakítja a ciklus közben * /

Codevision avr

Ahhoz, hogy megjelenjen a kijelzőn orosz betűk alkalmazott irányelv #pragma rl + / RL-:

equ __lcd_port = 0x12; PORTD

lcd_putsf ( "LED 16 x 02");

lcd_putsf ( "LCD Testing");

Tény, hogy az irányelv dolgozik váltás a kódolás és valóban lehetővé teszi, hogy megjelenítse az orosz betűket. A gyakorlati munka világossá vált, hogy nem ez az irányelv az orosz szöveg jelenik meg, mint egy sor megmagyarázhatatlan „kazyablikov”. Ami a programot - Proteus szimuláció (legalábbis bevált verzió 7.2 és 7.5), nincs támogatás visszavonását az orosz szöveget, és a legtöbb asztal szimbólumok.