Sporadické výpadky LCD - Atmega16 - délka datového kabelu

Diskuze a poradna o programátorech a programování různých obvodů

Moderátor: Moderátoři

Zpráva
Autor
Uživatelský avatar
Woofe
Příspěvky: 120
Registrován: 31 bře 2005, 02:00
Bydliště: Czech Republic

Sporadické výpadky LCD - Atmega16 - délka datového kabelu

#1 Příspěvek od Woofe »

Zdravím všechny,
nedávno jsem dokončil jednoúčelový strojek, všechno šlape jak má ale sporadicky se stává situace, že z displeje 20x4 zmizí znaky nebo v zobrazovaném textu se objeví spousta poskakujících čínských znaků.

Konstrukce stroje je na obrázku http://2i.cz/41ce94be6d

Mám zato že problém by mohl být v délce kabelu, je cca 90cm. Při ladění desky jsem měl k panelu jen 20cm a vše bylo v pohodě.

Kabel je plochý který jsem vyprofiloval ve tvaru písmene "M" a prostrčil opletením. Při zapojení mizely znaky poměrně často (cca do 1 minuty), pomohl jen raset stroje, ale jinak stroj fungoval dál jen displej mimo provoz. Tento sporadický jev mizení všech znaku se dal vyvolat připojením a odpojením stínění kabelu k zemi.

Datová sběrnice je 4 bitová, ještě jsem pro jistotu přidal další blokovací kondenzátory a k displeji větší kapacitu na napájení, na datovou sběrnici jsem dal pull-up 4,7k k +5v. Stínění kabelu připojil na zem. Po těchto úpravách je displej "stabilnější" ale stejně si občas začne dělat co chce. Respektive už nemizí znaky ale objevují se čínské symboly které různě poskakují,

Ještě popíšu zapojení. Kabel je 24 žilový a každý signál jde ve dvou žilách.
Pořadí signálů, +12v, SCL, SDA, RS, E, D4, D5, D6, D7, INT z PCF8574, PIEZO, +5v, GND.

D0-D3 jsou na GND.

Dotaz zní, jestli to už to někdo z Vás řešil a kde by mohl být zakopaný pes. Potřeboval bych to elegantně vyřešit, nechce se mi překopávat celé zapojení.
Díky za jakýkoliv názor.

Andrea
Příspěvky: 9340
Registrován: 07 zář 2007, 02:00

#2 Příspěvek od Andrea »

Spíš, než tahat ty signálové vodiče dvojmo, bych každou druhou žílu uzemnila.

Uživatelský avatar
ZdenekHQ
Administrátor
Administrátor
Příspěvky: 25593
Registrován: 21 črc 2006, 02:00
Bydliště: skoro Brno
Kontaktovat uživatele:

#3 Příspěvek od ZdenekHQ »

Není zem (0V) toho displeje spojená s kovovým obalem ?
Pro moje oslovení klidně použijte jméno Zdeněk
Správně navržené zapojení je jako recept na dobré jídlo.
Můžete vynechat půlku ingrediencí, nebo přidat jiné,
ale jste si jistí, že vám to bude chutnat[?
]

Uživatelský avatar
Woofe
Příspěvky: 120
Registrován: 31 bře 2005, 02:00
Bydliště: Czech Republic

#4 Příspěvek od Woofe »

to->Andrea> to je sice pravda a v další konstrukci bych to tak řešil. Jen jsem netušil že mi to takhle může zkomplikovat život :?

to->ZdenekHQ> Nejsem si vědom že bych úmyslně spojoval 0v s kostrou stroje. displej je na silonových distančních sloupcích M3. Jediná možnost kde by mohl spojovat kostra stroje s 0v by mohl být řídící vstupy měniče. Ale to teď nezměřím a ani se mi nechce věřit že by řídící svorkovnice měniče byla spojená s uzemněním.

Ještě dodám že první myšlenka kde vzniká problém je, že se něco courá z měniče, měnič jsem tedy odpojil (pouze L a N) zbytek připojen. A bez efektu.

Uživatelský avatar
Crifodo
Příspěvky: 14471
Registrován: 11 říj 2005, 02:00

#5 Příspěvek od Crifodo »

Ty pull-up odpory jsou na straně řízení nebo na straně displeje? Zkus je dát na obě strany a co nejmenší hodnotu. Chod motoru (magnetické pole) na displej vliv nemá?

Uživatelský avatar
Woofe
Příspěvky: 120
Registrován: 31 bře 2005, 02:00
Bydliště: Czech Republic

#6 Příspěvek od Woofe »

Pull-up odpory jen na jedné straně a to přímo na displeji. Motor jsem také zkoušel ale když jsem odpojil měnič od napájení, chyby se vyskytovaly stále. V prvních fázích hledání jsem mezi panel a motor vložil 2mm silným plech pro eliminaci případného rušení, bez úspěchu.

Uživatelský avatar
Crifodo
Příspěvky: 14471
Registrován: 11 říj 2005, 02:00

#7 Příspěvek od Crifodo »

Ta kšanda je solidní oscilační obvod na krátkých vlnách, musíš co nejvíc utlouct amplitudu kmitů na nepřizpůsobeném vedení. Ve skenerech bývají na plochých kablech takové veliké hranaté toroidy (obdélníkoidy) se škvírou, zkus to použít.
Přílohy
ferit 004.jpg
(35.88 KiB) Staženo 86 x

Uživatelský avatar
Woofe
Příspěvky: 120
Registrován: 31 bře 2005, 02:00
Bydliště: Czech Republic

#8 Příspěvek od Woofe »

Jasně vím, o čem mluvíš, používám "nacvakávací ferity" na koaxiální vedení k anténě od KV vysílačky, pro potlačení plášťových proudů. Když jsem psal ten první příspěvek tahle myšlenka mě napadla, zítra tam zajedu a zkusím zda to zabere.

Uživatelský avatar
Woofe
Příspěvky: 120
Registrován: 31 bře 2005, 02:00
Bydliště: Czech Republic

#9 Příspěvek od Woofe »

Tak naklapl jsem dva ferity, na každou stranu kabelu a bez výsledku. http://2i.cz/e1761c36e5
Změřil jsem jestli je spojeno 0v s uzeměnou kostrou stroje, jen zběžným měřením 7,5 Mohm, střídavá složka mezi 0V-kostra 65V. Při spojení 0v s kostrou přes ampérmetr nic neukázal. A problém se razantně zhoršil, o stabilitě se už nedá hovořit vůbec.
http://2i.cz/c3543e14c7

Na pull-up jsem koukal a u displeje jsou 10k (nevím proč jsem si myslel 4,7k).

Uživatelský avatar
Crifodo
Příspěvky: 14471
Registrován: 11 říj 2005, 02:00

#10 Příspěvek od Crifodo »

Ferity na opletení jsou nahovno, když se to popelí uvnitř mezi sebou.
Pull up odpory dej tak 200 Ohm.

Uživatelský avatar
Woofe
Příspěvky: 120
Registrován: 31 bře 2005, 02:00
Bydliště: Czech Republic

#11 Příspěvek od Woofe »

Opletení jsem posunul, není pod ferity. Bylo mi ho líto stříhat někde ve prostřed abych je tam klapnul. Proto jsem dal dva na kraje.

Uživatelský avatar
forbidden
Příspěvky: 8808
Registrován: 14 úno 2005, 01:00
Bydliště: Brno (JN89GF)
Kontaktovat uživatele:

#12 Příspěvek od forbidden »

Řešil jsem dost podobnej problém, nakonec mi pomohlo až odstínění desky elektroniky, displaye a zkrácení kabelu na minimální možnou délku, spolu s důkladným stíněním měděnou samolepící fólií.

Uživatelský avatar
Crifodo
Příspěvky: 14471
Registrován: 11 říj 2005, 02:00

#13 Příspěvek od Crifodo »

Potřebuješ se dostat blízko impedanci toho plochýho kabelu, s 10k je to prakticky vedení otevřený, nevím tedy jaký vstupní odpor má ten displej. Charakteristická impedance plocháče bude nějakých 100-200 Ohm, tomu je potřeba přizpůsobit zdroj signálu i zátěž. Při určitých kombinacích signálů se nezakončené vedení rozkmitá v rezonanci a pak si to vymýšlí data. S velkou amplitudou ani ferit moc nenadělá, taky záleží jaký je materiál.
http://shop.conrad.cz/websale7/Ploche-f ... 26_1021029

Uživatelský avatar
GeorgeB
Příspěvky: 1187
Registrován: 21 lis 2005, 01:00
Bydliště: Pardubice
Kontaktovat uživatele:

#14 Příspěvek od GeorgeB »

Chtělo by to osciloskopem změřit náběžný a sestupný hrany dat. Případně potvrzovací puls E mírně zpozdit a prodloužit.
Jinak pokud zbytek stroje chodí jak má co takhle programově inicializovat displej v pravidelných intervalech a znovu mu poslat data pro zobrazení?

Uživatelský avatar
Crifodo
Příspěvky: 14471
Registrován: 11 říj 2005, 02:00

#15 Příspěvek od Crifodo »

http://en.wikipedia.org/wiki/Ribbon_cable
na IDE běhaly HDD i 70 cm a to byly rychlosti asi větší, ovšem sedělo to impedančně.

Odpovědět

Zpět na „Programování PIC, ATMEL, EEPROM a dalších obvodů“