Stránka 1 z 1
display ST7920 z ebay (přesunuto)
Napsal: 21 pro 2013, 16:42
od ST7920
Ahoj kamarádi.
Dneska mi přišel tento displej a zkouším jej zprovoznit, ale nějak se nedaří. Tak jsem začal pátrat po příčině a zjistil jsem, že na zadní straně DPS se musí připájet/odpájet nějaké odpory a propojky.
zde je i řešení, ale nějak z toho nejsem moudrý.
Proto mě napadlo, jestli náhodou tento display někdo doma nemá a neporadil by, jak na něj.
obrázek displeje - 1
Obrázek displeje - 2
Napsal: 21 pro 2013, 16:53
od ST7920
A ještě zde řeší taky nějaké problémy s tímto displejem. Je to v polštině a po překladu se musí propojit jumper J1. Tak to zkusím a zapojím to přesně jak na obrázku a dám vědět.
Napsal: 21 pro 2013, 16:54
od ST7920
diskuze zde
Schema zapojení
zde
Napsal: 22 pro 2013, 10:49
od Honza_dy
A čemu ten displej připojuješ? To schema se mi moc nezdá, mám ten samý displej a po připojení k arduinu jel na poprvé.
Napsal: 22 pro 2013, 13:12
od ST7920
Tak připojuji jej k ATmega16. A musím říct, že to byla "fuška"

ale povedlo se. Ke komunikaci mi stačí pouze 2 kabely + napájení.
Takže připojené to mám takto:
Kód: Vybrat vše
Display | AVR
-------------------
E | SCK
RW | MOSI
A potom piny PSB - GND, RS - VCC. A propojil jsem onen PIN JP1 na zadní straně LCD.
Pro lepší pochopení přidávám i obrázek jak na to.
http://s22.postimg.org/z13rrloox/V_st_i_ek.jpg
Napsal: 22 pro 2013, 13:58
od Honza_dy
Mám pocit, že ti tam chybí jeden signál (CS)
Já displej připojil a provozoval s
touto knihovnou.
Napsal: 22 pro 2013, 17:39
od Honza_dy
Nedalo mi to a složil jsem si zapojení na stole.
Připojeno je to takto:
LCD-> signál
---------------
VSS -> Gnd
VDD -> 5V
RS -> Chip Select (CS)
R/W -> Serial Input (MOSI)
E -> Serial Clock (SCK)
PSB -> Gnd
Funguje na první pokus

Napsal: 23 pro 2013, 17:55
od rob_brno
Dělám ted s tímto :
http://www.ebay.com/itm/12864-5V-LCD-Di ... OC:US:3160
Zapojeno pouze napájení a E, R/W. Podsvědcovácí LED je přes 270R na napájení, bere kolem 7mA. Dále jsem přizemnil PSB a na 5V připojil RS, oba přes 500R, pro jistotu. Nic jinného-žádné propojky.
Taky používám u8g.lib, je to ale nějaké pomalé, zvládá to cca jen 6snímků za sec. na Arduinu nano s Atmega328P na 16MHz.
Napsal: 23 pro 2013, 20:00
od Honza_dy
Jo, potvrzuji. Pokud odpojím RS a připojím na 5V, tak to funguje stejně.
Napsal: 24 pro 2013, 09:48
od rob_brno
Honzo, stran rychlosti U8g, jak rychle ti to šlape?
V jednom příkladu k u8g jsem narazil na tohle:
#if defined(__AVR__)
/* select minimal prescaler (max system speed) */
CLKPR = 0x80;
CLKPR = 0x00;
#endif
Napsal: 25 pro 2013, 15:57
od ST7920
No tak ten PIN RS se může připojit k +5V pouze tehdy, pokud je zařízení na sběrnici samo.

Na to nezapomenout.
Pokud na sběrnici bude více zařízení, musíme pin RS připojit k mcu. Tento pin vlastně slouží k oslovení daného zařízení.
Ohledně té knihovny U8g, tak tu jsu zkoušel taky, ale zde jsem zkončil s chybou, že program neznal
CLKPR = 0x80;
CLKPR = 0x00;
a nechtělo se mi ji hledat, když jsem pátral po zapojení toho LCDčka.
Napsal: 26 pro 2013, 11:14
od rob_brno
Ona je to vlastně pseudosběrnice a nic jinného než další displaye se na to nepřipojí. Takže ten RS má smysl jen u více displajů v systemu, což často asi nenastane.
Pro ostatní zařízení je HW plnohodnotná sběrnice I2, která sedí na jinných pinech.
Napsal: 26 pro 2013, 17:47
od rob_brno
Tak CLKPR je registr na ATmega(asi ne všechny typy jej mají), pro dělení základní frekvence.
Ten zápis v kodu definuje základní nedělený kmitočet hodin, takže rychleji už to s tím displayem nepůjde.
Snad jen ještě jedinná možnost: zkrátit čekací časy uvnitř u8g.lib při generování signálů na sběrnici.
Napsal: 28 pro 2013, 09:58
od rob_brno
Rychlost se dá ještě zvýšit použitím HW SPI (zapojením displaye na SCK a MOSI piny mcu) a dál ještě použitím "driveru" xxx4X, který zabere půl kila RAM(4xvíce) mcu.
Možná by byla ještě cesta, uložit statickou část obrazu do bitmapy ve FLASH paměti a tu překopírovat a proměnné části obrázku dokreslit pak už standardně.