Fórum témák
» Több friss téma |
Fórum » LCD kijelző vezérlés - PIC
Témaindító: Net_Boy_debr, idő: Aug 23, 2008
Témakörök:
Azért a HD-típusú kijelzőnél az az egyetlen, 100us-os időzítés nekem kicsit kevéskének tűnik. Ha nem figyelsz ready bitet, akkor a parancsok után illik 3ms-ot várni az adatlapban lévő feldolgozási idők alapján, karakter kiírása után elég a 60us. Ha nem megfelelőek az időzítések, főleg az init folyamatnál (adatlapban érdemes tanulmányozni az init folyamatábráját), akkor lehet, hogy az init sem fut le rendesen, és azért nem működik megfelelően.
Mivel a példaprogram alapján elsőre működött a régi LCD, így aztán nem feküdtem neki a HD IC áttanulmányozásának.
Mi számít paramcsnak?
Parancsokkal üzemmódot állítasz be: pl. 1/2 soros üzemmód, 8/4 bites vezérlés, display törlés, kurzor mozgatás, stb. Ezek ugyanazokon a vezetékeken mennek, mint az adatok, csak közben az RS láb más állapotban van!
Azért az adatlapot nézd meg, ha használni szeretnéd!! ![]() Steve
Kurzor mozgatás az amikor fix pozicióra irok, nem pedig csak az előző karakter mellé, ugye?
Mert ott nem várok többet, mint a sima egymás mellé irogatásnál. Lehet, hogy ez a baj? Köszi, majd délután kipróbálom.
Sziasztok
A kővetkezőben kérném a segítségeteket.Van egy forrás fájlom ami HD44780-re lett kitalálva,de én szeretném egy DEM 16216 LCD-vel használni csak sajnos én ezt nem nagyon látom át! Előre is köszönöm a segítséget Kijelző adatlap
A belinkelt adatlap sajtóhibásnak látszik (Function Set-nél DB5-nek szerintem nem nullának, hanem 1-nek kell lennie!). Találtam itt egy másik adatlapot, ha ez az igazi, akkor az eredeti programodnak változtatás nélkül mennie illik.
(A programodat nem néztem, meg, csak azt ellenőriztem, hogy a kijelzőt vezérlő parancsok hasonlóak-e a HD44780-hoz...)
Pedig valami nem stimmelhet mivel én úgy nézem hogy belép a kétsoros módba és onnantól semmi.(mind a két sor teli fekete halványan).
Az adatlapon én még az időzítésekben láttam különbséget. ![]()
Idézet: „az időzítésekben láttam különbséget.” Ezt jó lenne, ha kigyűjtenéd, mert én azt nem néztem. Idézet: „mind a két sor teli fekete halványan” Érdemes volna az inicializálásnál (Start címkénél kezdődő programrészben) a "cursor off" beállítás helyett ideiglenesen "cursor on"-nal próbálkozni. Az adatlapból ki tudod nézni, hogy melyik bitet kell megváltoztatni.
Sziasztok!
Van egy két lcd-s kis jätékom.(bizonyára mindenkinek ismert a gyerekkorából hasonló eszköz, pl: tetrisz) A kérdés pedig az lenne,hogy meg lehet e valósítani,hogy pic-el "beindítani" magát az lcd-t. Mármint a pic vezélelné a szegmenseket.( pl. Megírni magát a game-t) azt tudom,hogy az lcd-k nem sima H és L szintek, hanem kb 1kHz-en kapják a jeleket. Köszi
Megpróbáltam a "cursor on " trükköt de semmi nem változott semmi!!!
Az időzítésekkel kapcsolatban viszont: Clear Display 1.53ms (DEM16216) 1.64ms(HD44780)stb
Minden próbálkozásom ellenérne, nem akar feléledni a szerkezet! A kővetkező gondolat támadt a fejembe,ez a forrásfájl amit szeretnék használni eredetileg 16f84-re lett kitalálva csak ezt valaki módosította itt a fórumba 16f628a-ra.
Ebből az irányból is próbáltam már megközelíteni a problémát de nem vettem észre semmit. Bővebben: Link ![]()
Ezek után már csak azt nem tudjuk, hogy végül is milyen PIC és milyen kapcsolás az, amivel szenvedsz?
Mindenesetre a kód, amit korábban belinkeltél, az PIC16F628A-ra van (át?)írva. A konfigurációs beállításoknál az utolsó sor véletlenül komment lett. Valaki erre rájöhetett, mert az utolsóelőtti sor végére odabiggyesztette az _LVP_OFF-ot, de a _CPD_OFF kimaradt. Kell ez vajon?
Ez a kapcsolás a Vicsys-féle frekimérő lenne 1f6628a-val.
Ebből nem derül ki számomra, hogy Te mit és hová kötöttél.
Arra gondoltam hogy megpróbálom a Pic-eket,mert kettő van belőle egy másik kapcsolásban egy másik hex-el hogy mit csinálnak.
Ott sem működtek pedig az már egy kipróbált kapcsolás! Így egy kicsit értetlenül állok ez előtt mivel mikor felprogramozom a Pic-et a visszaellenőrzésnél hibátlan! Van ilyen hogy teljesen jól fel lehet programozni a porcit és mégsem működik? Holnap veszek egy másik procit és kipróbálom azzal! ![]()
Idézet: „Van ilyen hogy teljesen jól fel lehet programozni a porcit és mégsem működik?” Hát persze! Ha rossz a program, vagy rossz a kapcsolás, vagy nem teljesül valami feltétel, ami a programfutáshoz kell, akkor miért is működne?
Amit linkeltem oldalt ott van egy kapcsolási rajz én semmit nem változtattam rajta csak hogy 16f84 helyett 16f628-at használtam.vicsys még nyáktervet is biztosított hozzá és azon sem változtattam.
Sziasztok!
Csinálok egy DCC vezérlőt, Robert Cóté ötlete és Lidi dekóder-támogatása mellett. 16F1936 mikrovezérlőt használok, a kijelző 4x16-os EDT LCD modul (Chipcad), potival állítom a mozdonyok irányát és sebességét. Van ugyan HD44780 rutincsomagom, DE LASSÚ. Hiába hajtom a rendszert 8 vagy 16 MHz-cel, a dekóder megy, forog a motor; de ha megpróbálom kiíratni az irányt, a fokozatot; ha a jelküldés soraiba rakom a kurzorpozíciót&kiírást akkor teljesen halott a rendszer, rezeg a motor és villognak a LED-ek, ha TMR1 megszakításba teszem, akkor hosszabb ideig rezeg a motor és tovább világít a LED......... Megpróbáltam pár módszert a HD44780 doksik alapján, de egyelőre nem sokat értem el. Tud valaki gyors HD44780 ASM rutint küldeni? fejesg ![]()
Azt gondoltam (már többször), hogy értem a lényeget. De nem.
Van olyan megoldás, ahol az RS beállítása után bsf EN, kirak adat, bcf EN; Robert Cóté másképp csinálja- beformáz, vár 40mikrosec, RS kirak bsf EN bcf EN. Mindkettőt kipróbáltam, de valami gyík van.
Szerintem elég egyértelmű, hogy az adott LCD modul adatlapja szerint kell betartani az időzítéseket.
Például a Raystar RC1602B-GHY-CSXD típusú kijelzőjénél ezt írják: RS, R/W beállása után min. 30 ns várakozás után mehet E magas szintre, s minimum 150 ns ideig ott is kell maradnia, illetve az adatbeállítás után még min. 40 ns-ig nem mehet alacsony szintre. (Értelemszerűen a kettő közül a később véget érő a meghatározó...) Az E alacsony szintre váltása után még további min. 10 ns-ig kell tartani az adatot és a címet (RS). Idézet: PIC18 esetén ez már lehet túl gyors. Másrészt kérdéses, hogy az odavezetések mennyire torzítják a jelalakot... „Robert Cóté másképp csinálja- beformáz, vár 40mikrosec, RS kirak bsf EN bcf EN.”
Szia!
Ezekre gondolsz? (csatoltam) Ha ez így menőképes, miért van az, hogy több Kolléga ettől ellentétes módon mégis működésre bírta a kijelzőt? Pl. Robert Cóté vagy Tóth Bence.... ![]()
Igen, ezekre. Úgy tűnik,hogy típustól/gyártótól függően jelentős különbségek vannak.
Idézet: Valószínűleg nem ugyanazt a kijelzőt, s nem ugyanazon az utasításfrekvencián. „miért van az, hogy több Kolléga ettől ellentétes módon mégis működésre bírta a kijelzőt?”
az F84 és az F628 alapjáraton nem kompatibilis. Nézd át a 2 adatlapot. Külön figyelj a komparátorra...
![]()
Ugyanilyen EDT EW162/164xxx kijelzőkről volt szó.
Átnéztem a doksit, lépésről-lépésre megírtam újra a progit az időzítési tábla alapján.... NEM MEGY. Pedig 16F883-ra átfésültem az egészet, amit még normálisan kezel az MPLAB; bár a PGM lábat 10k-val le kell húzni GND-re (...) a programozáskor. Csatoltam az asm-et. :pardon1:
MEGOLDOTTAM KÍNOMBAN.
EGYIK DOKSIBAN SINCS TELJESEN JÓL LEÍRVA A MENET. RÁMENT 2 NAP, DE MEGÉRTE. ![]()
Szia. Elárulhatnád a megoldást, biztos tanulnánk belőle.
Sziasztok!
Olyan kérdésem lenne, hogy pic-el foglakozom és van egy LCD kijelzőm amit használni szeretnék. Na most az a baj hogy az lcd egy működö basic stampel van egy panelen, és mivel működik és programozható is, ezért nem szeretném szétszedni se forrasztgatni, de az lcd és a stamp között van kivezetés és így rá tudnám csatlakoztatni a pic-et (az lcd léptető regiszterrel vezérelt így csak 3 vezeték kell hozzá). A kérdésem az lenne, hogy elég e egyszerüen a pic lábait és a kivezetéseket összekötnöm és hogy a stamp ne okozzon adathibát a lábait bemenetre állítanom? (Azt elfejtem írni hogy az lcd csak a stampel együt kap feszültséget.) Remélem érthetően vázoltam a problémámat. A segítségeket meg előre is kösz.
fejesg hozzászólására
Idézet: „MEGOLDOTTAM KÍNOMBAN. EGYIK DOKSIBAN SINCS TELJESEN JÓL LEÍRVA A MENET. ” Írd meg légyszi, mert én is PIC - LCD párosítással szívok már 3 napja. ![]() Nálam PIC16F886 és LCD 1601 panel 4 bites felületen csatolva. LCD_RW PORTB , 4 LCD_E PORTB , 5 LCD_RS PORTC , 7 LCD_PORT PORTB Mi a megoldás? |
Bejelentkezés
Hirdetés |