mikrocontroller.net

Forum: Compiler & IDEs LM75 auslesen


Autor: Gizmo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Ich versuche einen LM75 auszulesen. Habe A0,A1,A2 auf GND gelegt der 
Chip hat also die Adresse 0x90. Ich benutze die I2C Routinen von Peter 
Fleury.
Die Daten, die der LM75 ausspuckt, lasse ich mir mit Hilfe von Hyper 
Terminal anzeigen.
Jetzt Habe ich das Problem, dass der Sensor immer nur den gleichen Wert 
zurück gibt. Muss ich noch eine Delay Routine einbauen oder wie seht ihr 
das ?
Meinen Code habe ich mal angehängt.
Danke für eure Hilfe.

gruß Gizmo.

Autor: TV-Raucher (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja Ja angehängt.

Autor: Gizmo (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
so jetzt der code ;-)

Autor: Gizmo (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
so hier ist der richtige code. sorry war n langer Tag.

Autor: Martin Schneider (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lass mich raten - du kriegst immer 0 oder 0.5 Grad zurück?

Ursache:
  return_value = LM92CIM_Temperatur1<<8;    //LM92CIM_Temperatur in High Byte schieben
  return_value |= LM92CIM_Temperatur2;

Da LM92CIM_Temperatur1 eine 8-Bit-Variable ist, bekommts du nach 8x 
links-shiften zuverlässig eine 0...

Besser wäre:
  return_value = LM92CIM_Temperatur1; 
  return_value = (return_value << 8) | LM92CIM_Temperatur2;

da return_value eine 16-Bit-Variable ist.

Oder du überläßt dem Compiler die Einzelheiten und schreibst
  return_value = LM92CIM_Temperatur1 * 256;    //LM92CIM_Temperatur in High Byte schieben
  return_value |= LM92CIM_Temperatur2;

Ahoi, Martin

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.