Ich benutze einen ATmega128, programmiert mit avr-gcc und der avrlib... Und mein Problem mit dem I2C ist folgendes: Das ganze bleibt jetzt schon nach dem i2cSendStart hängen (bzw. beim i2cWaitForComplete)... Bin mir aber sicher, dass die Verkabelung in Ordnung ist... Habe jetzt als Pullups 4,7K gegen +5V in Benutzung Spannung (gegen Masse gemessen): (ohne Pullups) SCL 0,8V SDA 1,0V (mit Pullups) SCL 1V SDA 3V Hat auch alles schonmal funktioniert... Aber irgendwie ging's dann plötzlich nichtmehr... Hab auch die komplette Verkabelung neu gemacht... Der "Rest" des Controllers funktioniert aber. Hab auch schon verschiedene Geräte angeschlossen (also Slaves)... Die haben auch alle definitiv schon einmal mit meinen Funktionen gearbeitet... Bus-Geschwindigkeit habe ich schon 10 und 100 probiert. Hat jemand irgendwelche Ideen? Danke, Thomas
hmm müsste nicht sda und scl den selben pegel ( in deinem fall nahezu 5v ) haben? meine I²C aufbauten haben nahezu die selbe spannung (3,3v) auf den leitungen (wenn keine daten anliegen (durchgehendes high)) wie die versorgungsspannung des uC`s mfg KoF
Woran kann das denn liegen? muss nach dem i2cInit() und i2cSetBitrate(100) noch irgendetwas gemacht werden (Datenrichtungsregister oder sowas?)
Ich habe es gerad mal getestet, was passiert, wenn das Programm garkeine Befehle ausführt (als erstes in der main-Funktion einfach ein while(1) {} ) Die gemessenen Spannungswerte sind genau die gleichen, wie vorher... Ist der Controller kaputt?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.