i2c nie działa i dziwny przebieg

Jan 27, 2007 7 Replies

Witam,



Znowu ja :D, tym razem mam problem z i2c otóż mam dwie płytki (z uP i PCF8574P) połączone taśmą 4żyłową która liczy ~30cm... Na takiej długości i2c powinno działać no ale zawsze coś ciekawego się stanie :)) I mój problem przedstawiają fotki (oscylogramy): Linia SDA bez podciągania do Vcc (to samo jak podciągam R=3k3), portd.0 (uP tiny2313): Przy odłączonym pcf'ie:

formatting link
5v/dz Przy podłączonym pcf'ie:
formatting link
5v/dz



Nie mam pojęcia czemu mi nie ściąga do masy uP tylko do jakiś 2,5V... zresztą linia SCL ma ładny prostokąt :/ ... tylko ta linia danych... :(



Saper/nolin11 napisał(a):

Powiedz jeszcze jaki jest zegar, f=?. Martwią mnie te oscylacje, na pewno masz to wszystko dobrze podłączone? Nie pomyliłeś pinów?

Pozdro

Nie pomyliłęm, zresztą na SCL mam super prostokąt.... A fcpu=4MHz (zewn kwarc), ,a po każdej operacji na SDA (H>L lub L>H mam 2x NOP) Czyli ~500ns... Ale powinienem mieć normalny prostokąt ,a nie właśnie jakieś coś niewiadomo co.... Na płytce mam nalepiony papier (samoprzylepny) z opisem PCB (od strony elementów). Mi to wygląda na jakąś pojemność... tylko gdzie i między czym....

Saper/nolin11 napisał(a):

Wygląda to na sprzężenie prze pojemność, sygnał zakłócający ma sporo większą częstotliwość od i2c. Za mało regularne jak na zegar, może SPI używasz?

Pozdro

IMO sciaga Ci do masy. Pytaj lepiej czemu w stanie 1 na SDA tak mocno sie przebija SCL na ta linie.

PCF nie dolaczony do masy lub zasilania ? kabelki pomyliles na obu plytkach ? PCF spalony ?

I co tam wysylasz/odbierasz, bo te przebiegi to jakies dziwne .. i twoja plytka z PCF spora pojemnosc dorzuca do linii ..

J.

Sam to chciałbym wiedzieć.....

dobry :)

Wsadziłem opóźnienie m-n operacjami na i2c 100us i działa :) (poprawiłęm opóźnienie w module) Dziękuję za zainteresowanie ale nie myślałem że jak dam za duże f to będą takie jaja... Zreszt ą ten przebieg powienin mieć pełny prostkąt ,a nie wiadomo co :/.

Wyjcia sa OC, w i gore tylko pull-up ciagnie, wiec przebieg jest w miare sensowny. Tylko cos bardzo wolno ci przebieg narasta .. ile tam jest w ogole us na dzialke - bo I2C to zasadniczo do 100kHz, no niektore szybsze 400kHz.

Ale .. to nie tlumaczy skad ten zegar, wiec sprawdz polaczenia jeszcze raz. Masy masz polaczone ?

J.

Jusz wszystko śmiga teraz męcze zeby mi dobrze wyjścia sterowało :)) ale to już strona programowa... Może pojemność sondy takie coś robiła... Oscyloskop ~'92r rosyjski,a i mogłem mieć na i2c ze 500k nie wiem :/ już nie wnikam... To mi działa tak więc ten topic myślę: !zamknij.

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required