C Temperatursensor (STS3x)

Die LED ist mit Sicherheit nicht falsch angeschlossen ( Das werde Ich wohl noch hin bekommen!).
Vom Alert Pin geht ein Vorwiderstand auf die Anode von der LED und die Kathode direkt an Masse.
Es muss doch möglich sein, den Pin so zu manipulieren das dieser am Anfang direkt schon auf "Low" Pegel liegt?!
 
Wenn der Pin bei normalen Umgebungsbedingungen beim Einschalten schon auf high ist, würde ich vermuten, das der Chip defekt ist oder der Pin nach VCC kurzgeschlossen (dann wäre der Chip vermutlich auch schon gestorben).
Hast Du den Reset schon mal probiert?
 
  • Like
Reaktionen: Janiiix3
Hast Du das Statusregister des Sensors mal "gecleared"?
Wie ist eigentlich die "Alert Output Driving Strength" mit 1.5xVdd in mA in Table2 zu verstehen? Vdd ist 'ne Spannung, 1.5xSpannung ist auch 'ne Spannung - wie komme ich da zu IOH??

Ansonsten steht bei 3.5 zum Alert Pin:
Its function is explained in a separate application note.
Du hast uns ja damals schon das Datenblatt des Sensors vorenthalten - was ist jetzt mit der genannten application note??

Edit @Mikro23 : der Pin ist eigentlich zum Erzeugen eines IRQs (bzw eines ähnlichen Signals) bei einem angeschlossenenm µC gedacht, und nach einem Reset des Sensors default High.
 
Zuletzt bearbeitet:
Wenn der Pin bei normalen Umgebungsbedingungen beim Einschalten schon auf high ist, würde ich vermuten, das der Chip defekt ist oder der Pin nach VCC kurzgeschlossen (dann wäre der Chip vermutlich auch schon gestorben).
Hast Du den Reset schon mal probiert?
Welchen "Reset" meinst du? Den Hardware Reset oder Software Reset?
Spannung ausschalten und wieder an, sollte genau das gleiche bewirken.
 
Du hast uns ja damals schon das Datenblatt des Sensors vorenthalten - was ist jetzt mit der genannten application note??
Ich wasche meine Hände nicht in Unschuld! Das stimmt damals habe ich kein "Application Note" zu dem Chip gehabt, weil die "Fa. Sensirion" das nicht öffentlich hochgeladen hatte.

Anbei das Application Note und eine Excel Tabelle zum berechnen von den Schwellen.
 

Anhänge

  • HT_AN_AlertMode.pdf
    350,2 KB · Aufrufe: 5
  • HT_AN_AlertMode_BitConversion_D1.zip
    39,8 KB · Aufrufe: 1
Welchen "Reset" meinst du? Den Hardware Reset oder Software Reset?
Egal. PowerOnReset sollte es schon tun.

Die AN ist auch nicht ganz widerspruchsfrei. Unter 2.2. heißt es beim POR werden der obere (60°C) und der untere Grenzwert (-10°C) geladen. Das würde ich so verstehen, daß der Alarm bei Zimmertemperatur aus ist.
In 3.3. heißt es dann, beim brown-out und power-up wird der Alarm gesetzt. Das würde dann bedeuten, man muß vermutlich erst das Statusregister löschen, um den Alarm abzuschalten.
 
Ich habe das Statusregister schon mal gelöscht, die LED geht mal aus und dann wieder an. Das passiert aber auch nicht IMMER.
Kann es sein das Ich die Schwellen erst einstellen muss und dann noch einmal das Statusregister löschen muss?
 
Damals gings um das Datenblatt, Dirk hats irgendwann als Link nachgeschoben. Leider ist der inzwischen nicht mehr aktuell...
Jetzt gings um die Alarm-AppNote - die Hast Du jetzt nachgereicht... ok...

Also grundsätzlich ist der Alarm-Ausgang im "periodic data acquisition mode" aktiv, mit den bereits genannten Berücksichtigungen beim PowerUp usw.

Es gibt je für High und Low (beide Extrema) je eine Aktivierungs- und eine Deaktivierungsschwelle (Hysterese), die Du entsprechend 2.3 lesen und schreiben kannst. Die Werte für Temperatur (9 Bit) und Feuchtigkeit (7 Bit) sind dabei entsprechend 2.4 in zwei Bytes vereint.
 
Welche Werte muss Ich schreiben, damit die LED aus bleibt?
 
Ich habe das Statusregister schon mal gelöscht, die LED geht mal aus und dann wieder an. Das passiert aber auch nicht IMMER.
Es wäre sehr hilfreich gewesen, wenn Du DAS ALS ERSTES gesagt hättest.
Kann es sein das Ich die Schwellen erst einstellen muss und dann noch einmal das Statusregister löschen muss?
Probiere es doch aus. Laut Datenblatt sind die Schwellen nach dem POR gesetzt. Vielleicht aber nicht richtig, wenn Deine Spannungsversorgung zu langsam ansteigt.
Wie hast Du denn das Statusregister gelöscht? Alle bits auf null gesetzt? Und wie sah es danach aus?
 
Alle Bits auf "0" gesetzt, LED aus, danach wieder Temperatur gelesen und die LED war wieder an. Wie gesagt das war aber nicht "konstant" das die LED immer ausgegangen ist..
 
Prüfst Du auch nach JEDEM Vorgang das Statusregister? Bit 1 muß nach jedem Befehl auf
'0': last command executed successfully
stehen. Wenn nicht, ist irgendwas schiefgegangen und der Chip sollte neu initialisiert werden.
Und wenn das dauernd passiert, ist irgendwas kaputt oder Du machst irgendwas falsch.

Natürlich wäre es sinnvoll auch noch bit 4 und bit 15 zu prüfen...
 
Welche Werte muss Ich schreiben, damit die LED aus bleibt?
Ich würde folgendes rauslesen:
  • Der Sensor muß (nach dem Reset (ggf auch BOD) oder PowerUp) in den periodic acquisition mode gesetzt werden
  • wenn nicht die Default-Grenzen verwendet werden sollen, müssen diese beschrieben werden
  • anschließend das Statusregister "clearen"
danach wieder Temperatur gelesen
Wie?
bleibt der Sensor dabei im periodic mode?

ansonsten - was sagt Dir in dem Fall das Statusregister, welche Werte liest Du dann aus den Grenz-Registern und als tatsächliche ... äh ... Values?
 

Über uns

  • Makerconnect ist ein Forum, welches wir ausschließlich für einen Gedankenaustausch und als Diskussionsplattform für Interessierte bereitstellen, welche sich privat, durch das Studium oder beruflich mit Mikrocontroller- und Kleinstrechnersystemen beschäftigen wollen oder müssen ;-)
  • Dirk
  • Du bist noch kein Mitglied in unserer freundlichen Community? Werde Teil von uns und registriere dich in unserem Forum.
  •  Registriere dich

User Menu

 Kaffeezeit

  • Wir arbeiten hart daran sicherzustellen, dass unser Forum permanent online und schnell erreichbar ist, unsere Forensoftware auf dem aktuellsten Stand ist und der Server regelmäßig gewartet wird. Auch die Themen Datensicherheit und Datenschutz sind uns wichtig und hier sind wir auch ständig aktiv. Alles in allem, sorgen wir uns darum, dass alles Drumherum stimmt :-)

    Dir gefällt das Forum und unsere Arbeit und du möchtest uns unterstützen? Unterstütze uns durch deine Premium-Mitgliedschaft!
    Wir freuen uns auch über eine Spende für unsere Kaffeekasse :-)
    Vielen Dank! :ciao:


     Spende uns! (Paypal)