I2C lock-up

j s jarin.hw na gmail.com
Pondělí Srpen 20 16:57:39 CEST 2012


Strcit tam odpor nebude take jednoduche, lebo je strasne male
zariadenicko. Cely plosak aj s MCU, pamatou, napajacim obvodom a
tlacidlami ma 40x12mm. Usil som si na seba budu, ale tak mi treba :-)
Bude to ale zariadenie vyrobene v jednom kuse pre moju potrebu, tak
nic vazne sa nestalo.
Ale predostrel si zaujimave body, zajtra sa osciloskopom pozriem na to
ako vyzera ACK. Ale keby aj vinou velkeho odporu ITO bol ACK v
"jednotke", tak by ho master vyhodnotil ako NACK a zakvikal by, ze
slave sa nehlasi. Neskoncilo by to ako bus collision so SDA trvalo na
zemi. Ale aj tak mi to pride ako dost nepravdepodobne, pull-up je
2,2kOhm, napajanie 3,3V.
Zachytit koniec pokazivsej komunikacie bude zlozite. Nastava to raz za
5-120 minut, pricom do toho displeja "busim" v jednom kuse data.
Nevedel som najst v sufliku logicky analyzator na tento ucel.
Medzicasom som skusil este znizit rychlost komunikacie, tak uvidime co to povie.

J.


Dňa 20. augusta 2012 16:44, Jan Waclawek <konfera na efton.sk> napísal/a:
>>Ako zistim, ktory slave to drzi? SDA nohy tychto dvoch su od seba
>>vzdialene asi 5mm.
>
> No tak ich oddial, napr. odporom, ako pise pan kolega Vaiz. Ale asi to nebude potrebne - tipujem, ze bude stacit zatahat za reset nohu displeja. A je fakt, ze to moze byt displej zareaguvsi nespravne na data pre EEPROM, a naopak.
>
> Mimochodom, u TME maju starsiu verziu "datasheetu" pre displej s prehodenym oznacenim noh RST a CS, to asi vies.
>
>
>>V datasheete OLED drivera som nenasiel nic podozriveho.
>
> No ja som nasiel podozrive hned na zaciatku - dva piny na data - in a out.
>
> Je mi jasne, ze preco (kvoli multiprotokolarite); znamena to vsak podla mna aj to, ze na 99.9% nie je hardware taky ako predpisuje I2C norma, t.j. vstup odstranujuci glitche apod.
>
> Dalej (7.1.5, b) ):
>
>
> It should be noticed that the ITO track resistance  and the pulled-up resistance at  SDA  pin becomes
> a voltage potential divider. As a result, the acknowledgement would not be possible to attain a valid
> logic 0 level in  SDA .
>
>
>>ale ktovie co je skutocne pouzite vnutri, ci to nebude nejaky sikmooky
>>SSD1307.
>
> Sikmookejsi uz nemoze byt.
>
> http://www.solomon-systech.com/en/page/history/ :  1999 Jul     Solomon Systech established in Hong Kong
>
> (HK bolo vratene Cine v 1997, aby si do toho nerypol).
>
>
>>Tu resynchrozniaciu robim velmi pomaly, clock ma 10ms, lebo sa mi
>>nechcelo nastavovat timer a 10ms zakladnu tam uz mam :-)
>
> Nie resynchronizaciu, ale 9-ty bit pocas standardnej komunikacie som myslel. Resp. asi celu komunikaciu, kedze asi ten ack bit nepojde len tak predlzit.
>
> Mozno je problem prave v tom "not possible to attain a valid logic 0 level"? Bolo by fajn to cele pozriet osciloskopom, ze ako ta 0 pri ACK vyzera, a vyskumat, ci sa na to nemoze seknut prave master (kontroler v MCU), trebars ked neuvidi ACK? Uplne idealne by bolo mat zachyteny "koniec" tej komunikacie.
>
> wek
>
>
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list


Další informace o konferenci Hw-list