Forum: Mikrocontroller und Digitale Elektronik MSP430 liest vom SHT11 nur das MSB


von Wolfgang-G (Gast)


Angehängte Dateien:

Lesenswert?

Mit Hilfe eines von mir umgestrickten Programm (Ursprungsprogramm 
"SHTxx_Sample_Code.c" von Sensirion) versuche ich mit einem MSP430F1611 
einen SHT11 auszulesen. Das erste Byte wird wahrscheinlich richtig 
ausgelesen (Wert 5, welcher beim Anhauchen auf 10 steigt;  Daraus 
schließe ich, dass der SHT11 richtig angeschlossen ist). Das 2. Byte 
(LSB) und das 3. Byte (Prüfsumme) werden allerdings immer nur als 0xFF 
gelesen.
Diese Erscheinung tritt sowohl beim Lesen der Luftfeuchtigkeit als auch 
bei der Temperatur auf.
Im Anhang das Originalprogramm von Sensirion und mein abgeändertes 
Teilprogramm.
Vielleicht hat  jemand einen Tipp, wie ich mein Programm umschreiben 
muss, damit ich den SHT11 vollständig auslesen kann.

Die Funktion  void feuchte_SHT11(void)  wird jede Sekunde vom TIMER 
aufgerufen.
MfG

von Frank K. (fchk)


Angehängte Dateien:

Lesenswert?

Hallo!

Ich hab das gerade gestern zum Laufen gebracht. Anbei mein Code.

fchk

von Frank K. (fchk)


Lesenswert?

Nochwas ... ich habe den Verdacht, dass Du nach dem empfangenen Byte 
kein ACK zurücksendest und der SHT deswegen die Übertragung einstellt. 
Schau Dir das nochmal genauer an. Bei allen bis aufs letzte Byte musst 
Du ein 0-Bit zurückschicken, beim letzten ein 1-Bit.

fchk

von Wolfgang-G (Gast)


Lesenswert?

>Ich hab das gerade gestern zum Laufen gebracht.
Ein Glück, dass ich noch gewartet habe.

>Nochwas ... ich habe den Verdacht, dass Du nach dem empfangenen Byte
>kein ACK zurücksendest und der SHT deswegen die Übertragung einstellt.

Genau, das war es.
Vielen Dank für Deine Mühe.
Dein Programm habe ich mir angesehen, und musste wieder mal feststellen, 
dass meine  Programmierkenntnisse doch sehr unterentwickelt sind. (hat 
aber nichts mit meinem Fehler zu tun) Das werde ich wohl auch nicht mehr 
so richtig lernen. (Generation 70-)
Die in Deinem Programm vorgesehene Spannungskorrektur habe ich im 
Datenblatt nicht gefunden (übersehen?).
Zum anderen frage ich mich, ob es sinnvoll ist, eine im Zehntelbereich 
des Messwertes liegende Korrektur vorzusehen, wenn der Grundfehler des 
Fühlers schon bei +-3% liegt.
Nochmals vielen Dank, Du hast mir sehr geholfen
MfG

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.