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
Hallo! Ich hab das gerade gestern zum Laufen gebracht. Anbei mein Code. fchk
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
>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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.