forum.mcontrollers.com - hlavní stránka forum.mcontrollers.com - fórum

 

.: fórum - hlavní stránka :.
Technology Stronghold by Rudolf Vesely
How to build Microsoft System Center hosted cloud series
FAQFAQ HledatHledat Seznam uživatelůSeznam uživatelů Uživatelské skupinyUživatelské skupiny RegistraceRegistrace
ProfilProfil StatistikaStatistika Soukromé zprávySoukromé zprávy PřihlášeníPřihlášení

 
Ovládání ST7920
Jdi na stránku Předchozí  1, 2, 3  Další
 
Přidat nové téma   Zaslat odpověď    Obsah fóra mcontrollers.com -> Microchip
 
honza3
Profesionál
Profesionál


Založen: 21.1.2008
Příspěvky: 1158
Bydliště: Přerov

PříspěvekZaslal: 13 prosinec 2015, 19:28    Předmět: Citovat

Kdyby jsi to schéma dal k tomu HEXu, tak by to nebylo asi moc na škodu.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
 

 
Sender
Profesionál
Profesionál


Založen: 16.8.2014
Příspěvky: 45

PříspěvekZaslal: 13 prosinec 2015, 20:08    Předmět: Citovat

Vždyť schéma sem dával Matyáš.Je to psaný na to schéma zapojení.
Případně:
http://forum.mcontrollers.com/download.php?id=2957
http://forum.mcontrollers.com/download.php?id=2956
Edit: Doplnil jsem popis zapojení
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Matyáš
Profesionál
Profesionál


Založen: 2.4.2014
Příspěvky: 49

PříspěvekZaslal: 13 prosinec 2015, 23:10    Předmět: Citovat

Děkuji za program. Zapojení souhlasí, vyměnil jsem krystal, ale displej stále nefunguje.
Ještě modifikuji svůj program a prodloužím intervaly. Pokud displej nebude fungovat ani nadále, nevím, co budu dělat. Nový displej se mi zrovna kupovat nechce Very Happy - nemám jistotu, zda se tím problém vyřeší, navíc tento je nový.
Ještě dodávám podstatnou informaci: "hřebínek" k GLCD jsem pájel trafopájkou. Nevylučuji možnost, že jsem smyčkou pájky spojil 2 kontakty. To by ale s GLCD nemělo nic udělat ne? Jak je to vůbec s trafopájkami?
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Sender
Profesionál
Profesionál


Založen: 16.8.2014
Příspěvky: 45

PříspěvekZaslal: 14 prosinec 2015, 0:19    Předmět: Citovat

Škoda.Ten program funguje přesně s tímto displejem.
Trafopájkou rozhodně není dobře pájet tuto elektroniku.Jeden nový displej ,nikdy nepoužitý,ale nefunkční mám na stole.Stát se to asi může (že nefunguje jako nový,nebo se lehce odpálí).
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Sender
Profesionál
Profesionál


Založen: 16.8.2014
Příspěvky: 45

PříspěvekZaslal: 14 prosinec 2015, 18:03    Předmět: Citovat

Ještě jako další možnost můžeš zkusit s tímto zapojením:
Rs RB0
RW RB1
E RB2
Psb RB3
Rst RB5
Dataport:
DB7 RD7
DB6 RD6
DB5 RD5
DB4 RD4
DB3 RD3
DB2 RD2
DB1 RD1
DB0 RD0

Jestli ani tohle ,tak snad začít od začátku podle datasheetu.



ST7920-12864-ENGLISH.hex
 Komentář:

Stáhnout
 Soubor:  ST7920-12864-ENGLISH.hex
 Velikost:  1.73 kB
 Staženo:  41 krát

Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Matyáš
Profesionál
Profesionál


Založen: 2.4.2014
Příspěvky: 49

PříspěvekZaslal: 14 prosinec 2015, 19:29    Předmět: Citovat

Bohužel, ani toto nepomohlo. Děkuji za snahu Smile Půjdu tedy znova podle datasheetu.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Matyáš
Profesionál
Profesionál


Založen: 2.4.2014
Příspěvky: 49

PříspěvekZaslal: 14 prosinec 2015, 23:24    Předmět: Citovat

Mohl bych poprosit o kontrolu:
kód:
Send_Command(0b00000110);  // Cursor moves right, no display shift.

Nějak mi ta binární hodnota nekoresponduje s datasheetem.
Díky.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Sender
Profesionál
Profesionál


Založen: 16.8.2014
Příspěvky: 45

PříspěvekZaslal: 15 prosinec 2015, 19:30    Předmět: Citovat

Podle datasheetu by mělo být pro posun kurzoru S=H. Je-li to pravda ,mělo by bejt poslední číslo v pravo log. 1.
Pletu se ?
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Matyáš
Profesionál
Profesionál


Založen: 2.4.2014
Příspěvky: 49

PříspěvekZaslal: 15 prosinec 2015, 19:39    Předmět: Citovat

Já si právě nejsem jist, o kterou funkci se má jednat - jestli o "Entry mode set" (Datasheet str. 13), nebo "Cursor/Display Shift Control" (Datasheet str. 14). V obou se totiž pracuje s kurzorem.
Chápu to tak, že "Entry mode set" nastavuje, co se má stát po zapsání znaku na GLCD (to znamená že to se nastavuje 1x) a "Cursor/Display Shift Control" prostě hýbe s kurzorem.
Chápu to správně? Nevím totiž, jak přesně bylo myšleno "Cursor moves right, no display shift."
Děkuji!
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Sender
Profesionál
Profesionál


Založen: 16.8.2014
Příspěvky: 45

PříspěvekZaslal: 15 prosinec 2015, 20:41    Předmět: Citovat

Pro ten můj dislej platí:
write_com(0x30); //set 8 bit operation and basic instruction set
write_com(0x0c); //display on cursor off and char blink off
write_com(0x06); //entry mode set
write_com(0x01); //display clear

tj 0x06 = 0B0000110
Takhle mám řešenou inicializaci displeje pro textový mód.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Matyáš
Profesionál
Profesionál


Založen: 2.4.2014
Příspěvky: 49

PříspěvekZaslal: 15 prosinec 2015, 21:48    Předmět: Citovat

To Sender:
Mohl by jste mi poslat celý Váš kód (pokud ho máte v C)?
Děkuji.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Sender
Profesionál
Profesionál


Založen: 16.8.2014
Příspěvky: 45

PříspěvekZaslal: 15 prosinec 2015, 23:22    Předmět: Citovat

Posláno v SZ.
Ještě mě napadlo,jestli není na tvém displeji naopak třeba reset (L->H nebo naopak)
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Matyáš
Profesionál
Profesionál


Založen: 2.4.2014
Příspěvky: 49

PříspěvekZaslal: 15 prosinec 2015, 23:23    Předmět: Citovat

Bohužel ne Sad
citace:
System reset input (low active).
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Matyáš
Profesionál
Profesionál


Založen: 2.4.2014
Příspěvky: 49

PříspěvekZaslal: 16 prosinec 2015, 8:13    Předmět: Citovat

Možná jsem našel problém související s RST:
Když vytvořím program, který pouze pošle na RST 1, tak GLCD vypadá tak, že je "vidět mřížka pixelů" - viz. obr. rst1.jpg.
Ovšem vždy, když na procesor nahraji nějaký kód (od funkce Initialize() dál), tak na konci displej vypadá tak, že "není vidět mřížka pixelů" - viz. obrázek rst0.jpg a mezi portem RA0 (RST) a zemí naměřím nulové napětí. To by znamenalo, že bez mého vědomí se na RA0 posílá 0, která "drží GLCD v resetu a tudíž nemůže pracovat".
Přikládám také program, který to dělá. Jediné místo, kde se pracuje s RST je funkce Initialize(), kde se hned na začátku dělá:
kód:
...
void Initialize()
{
    RS=0;
    RW=0;
    __delay_us(400);
    RST = 0; // Set reset line to low
    __delay_ms(100);
    RST = 1;
    __delay_ms(10); // Short delay after resetting.
    Send_Command(0b00110000);    // 8-bit mode.
...

Ale nikde dál už se na RST neposílá hodnota 0.
Myslím si, že v tom je celý problém, protože GLCD nemůže pracovat při resetu Smile
Navíc na YouTube jsem vždy viděl, že u téměř všech GLCD je při provozu "vidět mřížka" - jako na obr. rst1.jpg.



rst1.JPG
 Komentář:
Displej při RST = 1

Stáhnout
 Soubor:  rst1.JPG
 Velikost:  234.58 kB
 Staženo:  54 krát


rst0.JPG
 Komentář:
Displej při stavu RST = 0

Stáhnout
 Soubor:  rst0.JPG
 Velikost:  143.79 kB
 Staženo:  61 krát


main.c
 Komentář:
Kód

Stáhnout
 Soubor:  main.c
 Velikost:  4.74 kB
 Staženo:  73 krát

Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Balů
Profesionál
Profesionál


Založen: 29.10.2012
Příspěvky: 708

PříspěvekZaslal: 16 prosinec 2015, 14:04    Předmět: Citovat

Pokud máš na RA0 stále log. 0, pak máš buď špatně nastavené pojistky v procesoru a RA0 je použit na nějakou systémovou periferii (u některých ATmega se například musí zakázat JTAG, aby byly přístupné všechny piny) nebo máš zkrat proti zemi na desce ...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

Zobrazit příspěvky z předchozích:   
Zobrazit předchozí téma :: Zobrazit následující téma  
Přidat nové téma   Zaslat odpověď    Obsah fóra mcontrollers.com -> Microchip Časy uváděny v GMT + 2 hodiny
Jdi na stránku Předchozí  1, 2, 3  Další
 
Strana 2 z 3
Přejdi na:  
Můžete přidat nové téma do tohoto fóra.
Můžete odpovídat na témata v tomto fóru.
Nemůžete upravovat své příspěvky v tomto fóru.
Nemůžete mazat své příspěvky v tomto fóru.
Nemůžete hlasovat v tomto fóru.
Můžete k příspěvkům připojovat soubory
Můžete stahovat a prohlížet přiložené soubory
 



Num Lock Holder - app to hold Numlock
Copyright © 2017 Rudolf Veselý, mcontrollers.com.
Je zakázáno používat části tohoto webu bez souhlasu autora. || Powered by phpBB © 2001, 2002 phpBB Group - with RedSquare DoubleJ(Jan Jaap)