MLX90614 IR-Thermometer / I2C / Repeated Start

OP #4319329
Hallo,

ich versuche gerade ein MLX90614 IR Thermometer an zu sprechen.
Ganze funktioniert über I2C womit ich leider noch nie gearbeitet habe.

Ich glaube das Sollte das folgendermaßen funktionieren:

Start
Write to Device 5A
Data 0x07
Repeaded Start
Read from Device 5A
Read Data1
Read Data2
Read Data3
Stop

Der Chip scheint grundsätzlich zu reagieren. Auf den write bekomme ich 
ACK's. Auf den anschließenden Read leider nicht mehr.
(Siehe QuickPrint3)

Ich habe momentan den Repeated Start im verdacht. Der sollte meiner 
Meinung genau in der Mitte (QuickPrint4) liegen. Nur ist der Clock zu 
diesem Zeitpunkt auf Lo.


Also Kernfrage: Liege ich richtig dass das kein Korrekter Repeated start 
ist? Hat jemand eine Idee warum das passiert (Clock Stratching?) ?


Note: das ganze läuft auf einem ATXMEGA128A3U, hab mal auch den 
SourceCode angehängt.

LG
Christoph
Angehängte Dateien:

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 11 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.