Forum: Mikrocontroller und Digitale Elektronik DS1820 läuft nicht!


von Frank Se. (Gast)


Angehängte Dateien:

Lesenswert?

Guten Abend,

bin gerade dabei den Temperatursensor DS1820 an einem 90S8535 zum laufen 
zu bringen.
Als Temperaturwert erhalte ich immer -9999. Ich habe auch mal "devices" 
ausgelesen, da erscheint immer "0".
Als Compiler verwende ich den CodeVision-AVR. Die Taktfrequenz vom 
Controller beträgt 8Mhz. Ich habe die Headerdatei "DS1820.h" von 
CodeVision-Avr eingebunden. Kann es sein dass ich noch die ganzen 
Verzögerungen von dem 1WIRE Bus noch anpassen muss?

von Frank Se. (Gast)


Lesenswert?

Korrektur:

#asm
    .equ __w1_port=0x10 // PORTD
    .equ __w1_bit=3     // PIN PD3 vom PortD
#endasm

von Frank Se. (Gast)


Lesenswert?

Sollte ich das Timing anpassen oder nicht?
Welche Fehlerquellen könnte es noch so geben?

von Frank Se. (Gast)


Lesenswert?

Kann mir hier niemand sagen, ob ich die Verögerungen im Code abändern 
muss oder nicht?
Den DS1820 habe ich schon korrekt angeschlossen.

PIN1 : GND
PIN2 : Datenleitung angeschlossen on PORTD PD3
PIN3 : VCC (+5V)

zwischen PIN2 und PIN3 habe ich noch laut Datenblatt einen 4,7kOhm 
Widerstand reingehängt.

von Peter D. (peda)


Lesenswert?

Frank Se. wrote:
> Kann mir hier niemand sagen, ob ich die Verögerungen im Code abändern
> muss oder nicht?


Naja, ich vermute mal, daß die Mehrheit hier den WINAVR benutzt (ich 
auch).

Daher sind zu Codevision wohl weniger Antworten zu erwarten.

Hilft Dir zwar nicht, sollte nur ein leichter Hinweis sein, nicht gleich 
ungeduldig zu werden (oder den Compiler zu wechseln :-)).

Vielleicht gibts ja auch ein Forum speziell für Codevisionäre.


Peter

von Frank Se. (Gast)


Angehängte Dateien:

Lesenswert?

Ok danke für die Info.
CodeVision oder WINAVR, ich habe den DS1820 so eingebaut wie in der PDF 
Dokumentation vom DS1820 zu sehen ist. Ist dies auch wirklich korrekt 
so?

von Elektrikser (Gast)


Lesenswert?

Ja, der Anschluss wäre korrekt.

Gruß Elektrikser

von Michi (Gast)


Lesenswert?

Hat die Datenleitung auch einen Pullup-Widerstand bekommen?

lg
Michi

von Frank Se. (Gast)


Angehängte Dateien:

Lesenswert?

Ja die Datenleitung hat einen Pullup-Widerstand von der Größe 4,7kOhm 
bekommen.
Ich habe nur mal die Funktion RESET DS1820 geschrieben.
Die Funktion gibt eine 1 zurück wenn kein DS1820 erkannt wurde und 0 
wenn DS1820 angeschlossen ist. Diese Funktion habe ich von einer 
Applikations PDF Datei.
Auf meinem Display sehe ich nur bei REST den Wert 01. Dies bedeutet, 
dass der DS1820 nicht erkannt wurde.

(Mit dem Register DDRD kann man INPUT bzw. OUTPUT von dem PORT-D 
einstellen)

von Frank Se. (Gast)


Lesenswert?

Weiss jetzt allerdings nicht wo da der Fehler in der Funktion liegen 
könnte.

von Frank Se. (Gast)


Angehängte Dateien:

Lesenswert?

Die Datenleitung vom DS1820 habe ich an den PORT-D Pin 17 (PD3) 
angeschlossen.
Ich muss noch erwähnen, dass ich einen TIMER1 im Compare Mode am laufen 
habe.

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
Noch kein Account? Hier anmelden.