Fórum témák

» Több friss téma
Fórum » Karakteres LCD-k meghajtása, vezérlése
Lapozás: OK   9 / 17
(#) don_peter hozzászólása Szept 29, 2014 /
 
No dobtam össze egy 6x8-as generátort, mert nem találtam használhatót legalább is ingyeneset nem..
60x64 pixelt tud most kirajzolni.
Egyelőre csak a megjelenítés van meg, de holnap, ha lesz időm akkor megírom a generátor részét is.
JavaScript-et engedélyezni kell..: DPTP PixelGenerátor (6x8)
(#) nagym6 válasza don_peter hozzászólására (») Szept 29, 2014 /
 
Nem találtam sosem olyat -free- ami a 6x8 -at tudná. A nem free progikat nem tudtam "javítani", csak egy csomó kémprogram lett a próbálkozásokból. A legjobb ami van nekem az amit küldtem, az"LCDimConv". Normál képből a "PhotoFiltre" progival csinálok fekete-fehér képet a "Beállítás" menü "Kétszinű" funkcióval. Kívánt lcd képméret: kijelölésnél négyzet alakzat, utána "Kijelölés menü "Kézi beállítások" -ban beállítom a pld.:32x32 pixelméretet. A képen kiválasztom a szükséges részletet, illetve a képméretet hozzáigazítom, hogy a szükséges részlet essen bele a 32x32 kijelölésbe. Utána csinálok egy új üres 32x32 képet, ebbe belemásolom a kijelölt részletet. Ezt elmentem, az "LCDimConv" progival behozom, itt még kézzel szerkeszthető. Ezután elmentem .c -ben. Ezzel lehet akár a 240x64 méret is. Nekem ez a módszer van, de csak 8x8 -nál jó. 6x8 -nál nem tudok képet csinálni, ilyenkor 8x8 módban van. Holnap ha lesz időm megpróbálom a 6x8 módot, amiket írtál azok alapján.
JavaScript-et hol kell engedélyezni?
(#) don_peter válasza nagym6 hozzászólására (») Szept 29, 2014 /
 
Ha rá tudsz kattintani a pixelekre és azok átváltanak feketére majd újbóli kattintásra vissza fehérre akkor engedélyezve van.
Ha nincs engedélyezve akkor a weboldal beállításaiban van valahol egy olyan pont, hogy JavaScript engedélyezése.
FireFox és GoogleCrome és Safarival teszteltem ott mennek..
(#) nagym6 válasza don_peter hozzászólására (») Szept 29, 2014 /
 
Átvált a pixel kattintásra, meg vissza is. Akkor ez működik.
Egy kicsit nem nagyon értem a 6x8 és a 8x8 kód közötti különbséget. Mert 6x8-nál és 8x8-nál ugyanaz a hex szám lesz. Úgy tudom elképzelni, hogy benne vannak a kijelzőben kiejtésre kerülő oszlopok is.
A hozzászólás módosítva: Szept 29, 2014
(#) don_peter válasza nagym6 hozzászólására (») Szept 29, 2014 /
 
Na akkor királyság.
Holnap meg írom hozzá az exportálást előbb binárisban majd hexában és végre lehet szerkeszteni.
Később meg majd kicsit rugalmasabbá teszem, hogy a kisebb és a nagyobb felbontást is tudja.
Gondolom neked is jó ez a forma:
  1. static const rom char tomb[] = { 0x00,0x00,0x00,...,...stb  };

Mert akkor az exportálásnál rögtön be is lehetne ágyazni egy tömbbe.
Na mindegy ez már csak részlet kérdés...
A hozzászólás módosítva: Szept 29, 2014
(#) nagym6 válasza don_peter hozzászólására (») Szept 30, 2014 /
 
Működik nekem is. "Optrex.jpg" bal szélén van a lényeg. Az "AlapKép1.jpg" a szerkesztett, és bevitt. Ebből a pirossal jelzett oszlopokat kiveszi, és így lesz jó, ahogy az "Optrex.jpg" képen is van. Ezt már tudtuk eddig is, de most nekem is jó lett.
De most más gond jelentkezett, karaktert nem ír végig, 40db.-ot. A végén kihagy nem tudom talán 8-at, és átviszi a következő sorra, de az zavart mákos, nem a karakter. Lehet, hogy csak a basic csinálja, neked lehet, hogy jó. Ez lesz a következő gyakorlatom.
A hozzászólás módosítva: Szept 30, 2014
(#) don_peter válasza nagym6 hozzászólására (») Szept 30, 2014 / 1
 
A memória címeket állítsd be úgy ahogyan nekem is be van és nézd meg hátha jó lesz.
Én is kipróbálom, bár én teleírtam mikor teszteltem az ékezetes karaktereket és jó volt.
Ja és elkészült a generátor is.
Még tesztelni kell, de remélhetőleg elsőre jó lesz
©DPTP 6x8 Pixel kép generátor... ( T6963c )
Egyelőre csak bináris és hexát tud, de szerintem nekünk ez elég is.
Bár meg lehet oldani, hogy decimálisan is tudjon generálni az nem ügy.
(#) don_peter válasza don_peter hozzászólására (») Szept 30, 2014 /
 
No teszteltem és úgy fest jól működik..
Eredményt csatoltam a 40karakter kiírással együtt.
Még gondolkodom rajta, hogy egy legenerált képet vissza lehessen tölteni...
Az egy picit bonyolultabb lesz..
(#) don_peter hozzászólása Okt 17, 2014 / 1
 
No átríttam az MCP23S17-es expanderre a GLCD meghajtó drivert.
Nagyon príma..
Elég gyors is így elsőre szóval lehet vele majd mit kezdeni..
Egyelőre csak szimulátorban teszteltem, de elvileg élesben is menni fog...
Csatoltam egy képet is..
(#) edison14 hozzászólása Dec 12, 2014 /
 
Sziasztok!

Akadt egy kis problémám egy LCD kijelzővel. A kijelző 2x16 karakteres HD44780vezérlős. Nem tudom hogy én nézek vagy cseszek el valamit vagy a program nem jó. Az egyik projektben ugyan az a program szépen működik a kijelzőn a másik projektben pedig már nem. Minden ugyan úgy van beállítva csak két különböző szöveg van kiiratva. Úgy észleltem, hogy az inicializálásnál akad el a dolog, viszont az LCD vezérlő adatlapja alapján a késleltetések jók. Már átnéztem számtalanszor a programot, de már futnak össze a betűk és nem találom hol ronthattam el.

A kijelző gondolom jó, minden lábon LED jelzi az aktuális állapotot és ha lépésenként lefuttatom a programot akkor minden adat úgy íródik ki a portra ahogy kellene de a kijelző az istenért sem akar megjeleníteni semmit. Gondolom ha szimulációban lépésenként futtatom a programot akkor is kéne a kijelzőnek reagálnia és kiírni a szöveget.

A segítséget előre is köszönöm!
Üdv.: Tamás

LCD_OK.asm
    
(#) proba válasza edison14 hozzászólására (») Dec 12, 2014 /
 
Ugyan az a kijelző? Lehet a kijelzők címzésében van eltérés.
(#) edison14 válasza proba hozzászólására (») Dec 12, 2014 /
 
Ugyan az a kijelző. A címzés eltérésben mire gondolsz pontosan? Minek a címzése?
(#) gabi20 válasza edison14 hozzászólására (») Dec 13, 2014 /
 
Szia nem tudom rendesen megnyitni az asm fájlt, mindent egy sorba ir nekem ki. Próbáld meg mégegyszer feltölteni vagy elküldheted nekem mailben is. 4 bites interfacet használsz? Inicializáláskor 3 - szor kell beállítani a 8 biteset, majd a 4 biteset.
A hozzászólás módosítva: Dec 13, 2014
(#) proba válasza edison14 hozzászólására (») Dec 13, 2014 /
 
A karakterek helye nem minden kijelzőnél van ugyan ott. Az első sor stimmelni szokott, de az utána következőkben, lehet csak nem létező karakterhelyre irkálsz.Volt hogy az első sor a 00 címen kezdődött az utána következő meg vagy 20h vagy 40h .. volt. És csodálkoztam rendesen miért nem ír ja ki amit akarok...
(#) edison14 válasza proba hozzászólására (») Dec 13, 2014 /
 
Értem. Nálam az a baj hogy semmit sem ír ki sőt már az inicializálásnál elbukik a dolog. Azt hogy miért azt nem tudom, szimulációban működik ledekkel végig debuggoltam és minden a helyén van. Már kezdem azt hinni hogy az LCD a rossz de valahogy azt sem akarom elhinni hogy egyik percben minden jó másikban meg már nem. Az időzítések pedig mind úgy vannak csinálva mint azt az adatlap írja + egy kis ráadás.
(#) ktamas66 válasza edison14 hozzászólására (») Dec 13, 2014 /
 
Inicializálásnál még 8 bites módban kell kezelni, nem kell kiadni az alsó/felső 4 bitet.
(#) edison14 válasza ktamas66 hozzászólására (») Dec 13, 2014 /
 
Sziasztok!

Működik a kijelző. Itt a módosított kód, aki szeretné nyugodtan használja.

Köszönöm a segítséget. További jó munkálkodást.
A hozzászólás módosítva: Dec 13, 2014

LCD_OK.asm
    
(#) don_peter hozzászólása Ápr 7, 2015 /
 
Srácok, lenne egy érdekes kérdésem.
Van ez a T6963-as 240x64-es GLCD-m és maximálisan 31bájtnyi adatot tudok a CGRAM-ba elmenteni.
Valaki bajlódott már ilyennel?
Van rá mód, hogy ne csak 31bájtot tudjak letárolni, hanem akár sokkal többet is?
Elvileg ha jól emlékszem 2kb adat tárolására alkalmas, bár lehet ez nem mind elérhető a CGRAM számára, de mint ha ezt írná..

Ha nincs esély a további adatok egyszerre való eltárolására, akkor milyen szubrutinnal lehetne okosan megoldani az újabb karakterek felvételét?
Arra gondoltam, hogy mindig amikor szükséges ismét feltöltöm a CGRAM-ot az új karakterekkel.
Ez ebben a formában működhet?
Első sorban a 2kb elérhető területet használnám fel, csak valamiért nem megy...
(#) don_peter válasza don_peter hozzászólására (») Ápr 8, 2015 /
 
Nincs ötlete senkinek a témában?
Vagy nem gyakori ez a típus?
(#) don_peter válasza (Felhasználó 15355) hozzászólására (») Ápr 8, 2015 /
 
Igen lehet, csak ezeknek a kijelzőknek 2 körzete van, van egy grafikus és egy karakteres amelyeket külön-külön lehet programozni és használni és mivel a karakteresről van szó, így gondoltam ez még bele fér ebbe a témába.
De megnézem eme topikba hátha népszerűbb lesz : T6963C grafikus kijelző
Köszi...
(#) Max26 hozzászólása Jún 17, 2015 /
 
Sziasztok! Volna ez az LCD könyvtár Bővebben: Link .

Hogyan választhatom a 4bites üzemmódot?

A leírás szerint csak ezt a sort kell átírni vagy kéne mást is módosítanom?

function_set(1,1,0);//DL = 1 for 8-bit interface, N = 1 to set the fonts for 2 line display and if N = 1 then value of F doesn't matter
(#) wincso hozzászólása Aug 20, 2015 /
 
Sziasztok!
Kezdő vagyok a dologban és segítséget szeretnék kérni mert elakadtam, remélem jó helyre írok.
Egy lcd 2x16-ost szeretnék életre kelteni amiben KS0066 vezérlő van. Oshonsoft pic simulatort használok pic 16f877a chippel 8mhz-en.
Protheusban minden működik, de megépítve csak a kijelző felső sorában minden pixel fekete, a második sorában meg halvány mineden pixel.
Probáltam az oshonsoft példa kódjával és próbáltam adatlap alapján inicializálni a kijelzőt de a jelenség ugyanaz.
Lenne valakinek tippje?

Define LCD_LINES = 2
Define LCD_CHARS = 16
Define LCD_BITS = 8
Define LCD_DREG = PORTd
Define LCD_DBIT = 0
Define LCD_RSREG = PORTC
Define LCD_RSBIT = 6
Define LCD_EREG = PORTC
Define LCD_EBIT = 4
Define LCD_RWREG = PORTC
Define LCD_RWBIT = 5

AllDigital
Lcdinit 3
loop:
Lcdcmdout LcdClear
Lcdcmdout LcdLine1Home
Lcdout "This is line 1"
Lcdcmdout LcdLine2Home
Lcdout "This is line 2"

Goto loop

Előre is köszönöm
(#) gabi20 válasza wincso hozzászólására (») Aug 20, 2015 /
 
Szia ellenőrizd a vezetékeket, hogy a megfelelő portokra-e van kapcsolva. kontraszt jól van beállítva?
A hozzászólás módosítva: Aug 20, 2015
(#) wincso válasza gabi20 hozzászólására (») Aug 20, 2015 /
 
Szia!
portok helyesen vannak bekötve
Vo(kontrast) földre van húzva
(#) don_peter hozzászólása Nov 8, 2015 /
 
Uraim, 4x20-as hd44780 kompatibilis kijelzőn szeretnék grafikát kirajzolni.
8x5 x8 karakterig ez működik is.
Tudjuk, hogy az LCD custom memóriájába 8 karakter hely van, amibe lehetőségünk van karaktert letárolni és azt kiíratni.
Ez a rész meg is van és működik is rendesen, de ez nekem kevés a rajzoláshoz.
Minimum 4szer ennyire lenne szükségem.

Arra gondoltam, hogy a CGRAM-ot feltöltöm a lehetséges 8 karakternyi adattal, majd kiíratom, majd ezt követően feltöltöm az új karaktereket és megint kiíratom és ezt ismételem annyiszor amennyiszer szükséges. (esetemben 4szer)

Meg is írtam a programot, de a gond az, hogy a már kiírt sort is frissíti a frissen feltöltött CGRAM adattal és úgy, hogy a programban nincs ciklus, tehát nem frissíti a sort.
Csatolok egy képet a hibáról.

A lényeg az lenne, hogy ne frissítse a felette lévő sort(sorokat), ha már kiírattam.
Van erre valami megoldás amire esetleg nem gondoltam?
Előre is köszi.
(#) Bakman válasza don_peter hozzászólására (») Nov 8, 2015 /
 
Tudtommal a CGRAM-ban tárolt adat változtatása azonnal megjelenik a kijelzőn ha használatban van az adott karakter, tehát amit te szeretnél, nem lehet.
(#) don_peter válasza Bakman hozzászólására (») Nov 8, 2015 /
 
Értem.
Ebben az esetben azt kérdezném, hogy miképpen tudnám azt megcsinálni amit akarok?
A videón ezt, hogy csinálják?
Bővebben: Link
(#) Bakman válasza don_peter hozzászólására (») Nov 8, 2015 /
 
A kijelző 2 x 16 karakteres, de négy részre van osztva és minden rész megegyező ábrát mutat. Egy részre jut 8 karakter, a CGRAM mélysége is 8 karakter. Az effektet erősíti az LCD tehetetlensége.

Valószínű, hogy egyszerűen a nyolc egyedi karaktert befogadni tudó CGRAM-ot írja folyamatosan a program.
(#) don_peter válasza Bakman hozzászólására (») Nov 8, 2015 /
 
De az alsó és a felső sor külön mozog, tehát biztos vagyok benne, hogy valahogy megoldották a CGRAM folyamatos írását, különbem nem lenne a kör, kör.
Nem változik meg neki a felső sor, ha az alsó sorba más a CGRAM adat.
Egyelőre ez nekem nem átlátható.

Bár lehet értem már mit mondasz.
2x4 karakter egységekben dolgozik a videó.
Felső sor 4karakter és alá a maradék 4karakter.
Gondolom, 4sornál ez már szivacs lenne.
A hozzászólás módosítva: Nov 8, 2015
(#) Bakman válasza don_peter hozzászólására (») Nov 8, 2015 / 1
 
Ha jól megnézed a videót, maximum nyolc különböző karakter látható egyszerre. Lerajzoltam neked a karaktereket. A számok azt jelzik, melyik karakterhez melyik CGRAM tartozik. A csoprtok függőleges vonalak mentén vannak kialakítva. Az első és a harmadik csoportot bekereteztem pirossal, hogy jobban elkülöníthatő legyen.

Nyolc egyedi karakter van használatban, de az ki van vetítve négyszer a teljes kijelzőre. A program, ami vezérli a kijelzőt, folymaatosan módosítja ezt a nyolc karaktert, így alakul ki az az effekt, ami a videón látható.

Shot_919.jpg
    
Következő: »»   9 / 17
Bejelentkezés

Belépés

Hirdetés
Lapoda.hu     XDT.hu     HEStore.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem