Hallo, Bin während mein Projekt auf ein Problem gestoßen. Und zwar verwende ich einen MSP430 und I2C für die Kommunikation zwischen den Sensor MAX44009. Das Problem besteht darin das ich den Sensor gar nicht ansprechen kann. Ich kann nur die Slave Adresse schicken und danach geht die Verbindung verloren(Kein Stop bit, ein Acknowleg bekomme ich aber). Die Adresse vom Sensor sollte "0x96" sein, jedoch variiert diese im Internet mit 0x4A und 0xCB. Habe beide schon probiert funktioniert auch nicht. Es hängen auch andere Sensoren am Bus mit denen die Kommunikation funktioniert. Hatte jemand bereits dieses Problem oder weis die Lösung? Vielen dank!
Hast Du schon mal erfolgreich mit einem anderen I2C-Gerät kommuniziert, wie z.B. mit einem seriellen EEPROM wie 24C01? Wenn nein, ist Deine Hardware denn korrekt aufgebaut? Hast Du an die Pullupwiderstände auf dem I2C-Bus gedacht? Die Adressen sind mit
1 | Device Address Options |
2 | 1001 010x and 1001 011x |
angegeben. Als 7-Bit-Adresse betrachtet sind das 4a bzw. 4b, als 8-Bit-Adresse betrachtet 94 bzw. 96.
:
Bearbeitet durch User
Ja ich kann über den Bus mit 5 andere ICs kommunizieren. Die pullup widerstände sind auch dran. Wo von hängt es ab welche variante ich die Adresse nehme? Also beim senden der daten an den IC sieht es so aus als würde die Kommunikation einfach abbrechen nach der Adresse. Es kommt kein Interrupt mehr.
Die 7- bzw. 8-Bit-Adresse ist nur eine Frage der Darstellung. Im einen Fall wird das r/w-Bit nicht zur Adresse gezählt (dann sinds 7 Bit), im anderen gehört es als LSB dazu, und dann sinds 8 Bit. Mit der Leitung A0 wählst Du zwischen 4a/4b bzw. zwischen 94/96 aus.
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.