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 |