damianf125 Napisano Maj 18, 2019 Udostępnij Napisano Maj 18, 2019 Dzień Dobry wszystkim, założyłem ten temat ponieważ nigdzie nie moge znaleść odpowiedzi na swoje pytanie a mianowicie, dlaczego nie otrzymuje adresu konwertera i2c ? Po załączonych zdjęciach widac ze magistrala i2c nie kończy transmisji , ktoś byłby to w stanie wytłumaczyc ? Link do komentarza Share on other sites More sharing options...
Treker (Damian Szymański) Maj 18, 2019 Udostępnij Maj 18, 2019 @damianf125 wklej kod programu i pokaż schemat połączeń (albo chociaż napisz co tam masz). Bez tego to wróżenie ze szklanej kuli 🔮 Link do komentarza Share on other sites More sharing options...
damianf125 Maj 19, 2019 Autor tematu Udostępnij Maj 19, 2019 #include <Wire.h> void setup() { Wire.begin(); Serial.begin(9600); while (!Serial); Serial.println("\nI2C Scanner"); } void loop() { byte error, address; int nDevices; Serial.println("Scanning..."); nDevices = 0; for(address = 0; address < 127; address++ ) { Wire.beginTransmission(address); error = Wire.endTransmission(); Serial.print (123); if (error == 0) { Serial.print("I2C device found at address 0x"); if (address<16) Serial.print("0"); Serial.print(address,HEX); Serial.println(" !"); nDevices++; } else if (error==4) { Serial.print("Unknown error at address 0x"); if (address<16) Serial.print("0"); Serial.println(address,HEX); } } if (nDevices == 0) Serial.println("No I2C devices found\n"); else Serial.println("done\n"); delay(5000); } posiadam arduino nano oraz zwykły wyświetlacz 16 znakowy z konwerterem i2c schemayt połączeć standardowy czyli 5v-vcc gnd-gnd a4-sda a5-scl kod do wyszukiwania adresu konwertera i2c który zastosowałem Link do komentarza Share on other sites More sharing options...
ethanak Maj 19, 2019 Udostępnij Maj 19, 2019 A rezystorki podciągające na a4/a5 są? W Uno można się bez nich obejść, ale w nano nie. Link do komentarza Share on other sites More sharing options...
Polecacz 101 Zarejestruj się lub zaloguj, aby ukryć tę reklamę. Zarejestruj się lub zaloguj, aby ukryć tę reklamę. Produkcja i montaż PCB - wybierz sprawdzone PCBWay! • Darmowe płytki dla studentów i projektów non-profit • Tylko 5$ za 10 prototypów PCB w 24 godziny • Usługa projektowania PCB na zlecenie • Montaż PCB od 30$ + bezpłatna dostawa i szablony • Darmowe narzędzie do podglądu plików Gerber Zobacz również » Film z fabryki PCBWay
damianf125 Maj 19, 2019 Autor tematu Udostępnij Maj 19, 2019 🙈 kurde myślałem ze bez nich sie obejdzie 😞 o jakiej rezystancji musza byc aby poprawnie działało ? Link do komentarza Share on other sites More sharing options...
ethanak Maj 19, 2019 Udostępnij Maj 19, 2019 Podobno działa od 1k do 100k ale skrajnych wartości bym nie ryzykował 🙂 Daj 4.7k albo coś podobnego. 2 Link do komentarza Share on other sites More sharing options...
damianf125 Maj 19, 2019 Autor tematu Udostępnij Maj 19, 2019 dzięki wieki , a mógłbys mi wytłumaczyc po co te oporniki i dlaczego działa bez nich na uno a w nano nie ? Link do komentarza Share on other sites More sharing options...
ethanak Maj 19, 2019 Udostępnij Maj 19, 2019 Oporniki są po to, że urządzenia na i2c albo zwierają coś do GND (czyli podają zero) albo nie zwierają (i wtedy trzeba jakoś tę jedynkę podać). Jak ich nie będzie to na linii będzie albo zero albo czort wie nie co, czyli pewnie też coś koło zera (albo co tak drut z powietrza wyłapie). W Uno biblioteka Wire włącza wewnętrzne rezystory, w nano czy pro mini już nie. Nie pytaj dlaczego 🙂 2 Link do komentarza Share on other sites More sharing options...
damianf125 Maj 19, 2019 Autor tematu Udostępnij Maj 19, 2019 haha oki dzieki jeszcze raz , myślałem ze jakis bardziej złozony problem a to po prostu tak samo jak w tackt switchu Link do komentarza Share on other sites More sharing options...
damianf125 Maj 19, 2019 Autor tematu Udostępnij Maj 19, 2019 (edytowany) @ethanak co robie źle ? Edytowano Maj 19, 2019 przez damianf125 Link do komentarza Share on other sites More sharing options...
kaczakat Maj 20, 2019 Udostępnij Maj 20, 2019 Sprawdź jak działa ten program gdy nic nie podłączasz do I2C. A jeśli robisz wszystko OK, to może po prostu konwerter I2C jest uszkodzony. Czasami się zdarza. Dla 100kHz i 5V rezystor powinien być od 1,5-10k, dla 400kHz powinien być max 4k. Jak są nieco większe to tez zadziała, byle magistrala była krótka - mała pojemność. Z drugiej strony nie może być za mały bo im mniejszy tym większe zwarcie, czyli obciążenie prądem urządzeń na magistrali. W Google znajdziesz ładne wykresy dla pullup min i max w funkcji pojemności magistrali, prędkości transmisji i napięcia Vcc. Zazwyczaj są też w kartach katalogowych urządzeń z interfejsem I2C. 1 Link do komentarza Share on other sites More sharing options...
damianf125 Maj 20, 2019 Autor tematu Udostępnij Maj 20, 2019 kurcze i2c mam juz przylutowane 😕 no nic ,jeszcze sie z tym pobawie , jak uda mi sie rozwiazac zagadke to sie odezwe i napisze co było przyczyną. Link do komentarza Share on other sites More sharing options...
deshipu Maj 20, 2019 Udostępnij Maj 20, 2019 Oporniki miały być do zasilania, a nie do masy. Link do komentarza Share on other sites More sharing options...
damianf125 Maj 20, 2019 Autor tematu Udostępnij Maj 20, 2019 nie działa, nadal 😕 Link do komentarza Share on other sites More sharing options...
Pomocna odpowiedź
Bądź aktywny - zaloguj się lub utwórz konto!
Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony
Utwórz konto w ~20 sekund!
Zarejestruj nowe konto, to proste!
Zarejestruj się »Zaloguj się
Posiadasz własne konto? Użyj go!
Zaloguj się »