mikrocontroller.net

Forum: Compiler & IDEs TWI und LM75


Autor: Bjoern01 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich bin gerade dabei einen LM75 per TWI auszulesen. Das ganze
funktioniert auch soweit bloß ich habe noch ein Problem. Und zwar muss
ich den Mega8 den ich verwende nach jedem auslesen einer Temperatur
reseten damit er die nächste anzeigt. Sprich er ließt nur eine
Temperatur aus und dann bleibt das Programm irgendwie stehen. Woran
könnte das liegen?? Ich benutze übrigens das Hardware TWI interface.

Autor: Benedikt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
List du auch beide Bytes des LM75 ?
Wenn man nur 1Byte liest, hängt dieser.

Autor: Bjoern01 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja ich lese bide Bytes ich dachte auch zuerst das es daran liegt aber es
scheint am AVR zu liegen, da ich den LM ja an der Stromversorgung lasse
wenn ich den AVR resete und nach dem reset ließt er ja nen neuen Wert
ein.

Autor: Benedikt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lass dir mal nach jedem Transfer den Status des TWI ausgeben, dann
siehst du ob ein Fehler aufgetreten ist.

Autor: Bjoern01 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das Problem ist gelöst! Ich hab die TWI Routine die mir den LM75
ausließt zu schnell hinterinander aufgerufen. Jetzt hab ich nen Timer
genommen der in nem bestimmten Intervall den Sensor ausließt und es
funktioniert!

Autor: Bjoern01 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hab nochmal ne frage hat schonmal jemand diesen O.S. Pin
Programmiert damit er die überschreitung einer Temperatur anzeigt? Ich
bekomm das net hin :-(

Autor: Ralf G (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
...ich häng jetzt leider fest: ich hab den LM75 an meinem ATMEGA8 über
TWI am laufen. Temperaturabfrage ist perfekt, ABER: ich habe mit einem
Schreibzugriff auf das ConfigRegister die Polarität des O.S Anschlusses
erfolgreich geändert, bekomme den Pointer danach aber nicht mehr zurück
auf das TempRegister 00.
Jetzt liest er mir immer fleissig das ConfigRegister aus.

Ich verwende den gleichen Schreibzugriff wie bei der Änderung des
Config registers, nur das ich jetzt an 00 adressiere statt an 01. Ich
sende kein Datenwort sondern sende ein STOP command.

Leider tritt dabei ein Fehler auf und ich weiss nicht was ich falsch
mache.

Kann mir jemnd helfen und hat zufällig eine Pointer-reset routine in
Assembler?

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.