Két lábon járó LCD

Mikrokontrolleres fejlesztéseknél, hibakeresésnél, próbapaneleken lehet hasznos ez a kis kiegészítő. Lehetővé teszi, hogy LCD-t üzemeltessünk mindössze két port kivezetés felhasználásával.

Jelen cikk nem kívánja részletesen bemutatni, hogy hogyan is működik az LCD kijelző vezérlése, és nem is C programnyelv tanfolyam. A kapcsolás és a program megértéséhez ezen alapismeretek szükségesek. Most csak egy dologra fókuszálunk: minél kevesebb portláb felhasználásával meghajtani egy kijelzőt. Ez hasznos lehet kis lábszámú kontrollerek fejlesztésénél, és minden egyéb esetben, amikor a már futó áramkörben, valós körülmények között szeretnénk adatokat kinyerni a kontrollerünkből.

A kapcsolás működése:

Az LCD vezérléséhez, még 4bites mód esetén is kell legalább 6 port vezeték. (4 adatbit + kettő vezérlő: RS, EN)
Azért hogy ezt csökkenthessük, felhasználunk egy egyszerű léptető regisztert. A 74-es logikai ic sorozatból például a 74164 meg is felel céljainknak. De még így is trükközni kell picit, ugyanis nem csak az adat biteket, de a vezérlő biteket is a léptető regiszteren keresztül fogjuk kiküldeni.

A trükk azért szükséges, mert nem léptethetjük be shiftelés után azonnal az LCD -be a biteket, kell várni egy kis ideig, amíg beállnak a jelszintek az adat bemeneteken, és csak utána jelezhetjük az LCD EN lábán hogy vegye át az adatokat. Viszont nem kívánunk külön portlábat e célra feláldozni. Ezért valahogy kombinálni kell a shiftregiszter valamelyik vezetékével. Lássuk hogy hogyan:



Látható hogy most is 4 bites módban fogjuk kezelni az LCD-t. A J1 -es csatlakozón jön a táp, és a PIC felől az adat és a léptető jel. (1-föld, 2-léptetés, 3-adat, 4-tápfesz). A rajzon, és a NYÁK-on is azért van több csatlakozó, hogy mindenféle LCD-t rá tudjunk kötni. Legalábbis én ráterveztem azokat, amik megfordultak a kezeim között.

Az LCD-re való kiírás folyamata a következő: (lcd.c    lcd_2wire_put_nibble    függvény)

A regiszter feltöltésekor pedig azért marad alacsony szinten az LCD EN, mert a "kicsorgó" nullák húzzák azt alacsonyra. Így nem kerül az LCD be hamis adat shiftelődés közben.

Készült egy NYÁK-terv is, jelentem: működik. Persze lehet rajta javítani, pl. ha R2 kontraszt potit 180 fokkal fordítva raktam volna, akkor ki lehetne fúrni alatta a NYÁK-ot. Vagy pl., aki szeretné, az bekötheti a háttérvilágítás lábakat.


 

A projekthez tartozó összes forrás file és nyákterv

A 2pinlcd-629.c a fő program file. 12F629 -re készült a mintaprogram.  lcd.h -ban lehet beállítani, hogy melyik két kontrollerlábat használja a program a léptetőregiszterhez kommunikációra.

Látható, hogy a kontraszt-állítót én elforgatva építettem be, így viszont az R1 alulra került, SMD kivitelben. A kapcsolási rajzon nem szereplő tápszűrő kondi is felfedezhető, plusz az átműtött PC-s kisfloppy csatlakozó 


 

Remélem tetszik ez a kis kapcsolás, és hasznosnak találjátok.