digitaler Thermosensor

Gast #1834167
Lesenswert?

Hallo,

ich hab mir einen digitalen Thermosensor TSIC206/306 geholt. Das Teil 
hat 11 bit und eine Messrate von 10Hz. 3 Beinchen, +5V, 0V und Singal.

Datenblatt:
http://www.produktinfo.conrad.com/datenblaetter/500000-524999/502186-da-01-de-TSIC_206_TEMPERATURSENSOR_TO92.pdf

Doch wie schliesse ich das Teil an meinen µC, einfach mit dem 
Singal-Beinchen an meinen Rx ???

Gruss
#1834180
Lesenswert?

Anfänger schrieb:

> Doch wie schliesse ich das Teil an meinen µC, einfach mit dem
> Singal-Beinchen an meinen Rx ???

Sieht nicht so aus, als ob da ein Open Collector Ausgang vorhanden wäre. 
Also: rann damit. Solange du den µC-Pin auf Eingang stehen hast, kannst 
du nicht viel Schrotten. Die Versorgungsspannungsbereiche passen 
zusammen.

Sicherheitshalber solltest du dir aber noch das richtige Datenblatt 
besorgen und nicht nur mit diesem Werbefolder operieren.
Das richtige Datenblatt brauchst du sowieso, weil da drinnen steht, in 
welcher Form dir der Sensor seine Daten überspielt (also: das 
Übertragungsprotokoll). Ohne diese Information ist der Sensor so 
nützlich wie ein 2kg Klotz Silizium in einem Stück - nämlich gar nicht.
#1834257
Lesenswert?

PS:
Weil der sich doch etwas erwärmt im Betrieb, aber ja nicht
so schnell auf Temperaturänderungen reagiert, daß man ihn
mehrmals pro Sekunde auslesen müsste, hatte ich zusätzlich
einen Pin spendiert und daran die Spannungsversorgung (ebenfalls
direkt) angeschlossen.
Dadurch kann man zur Messung einfach diesen Pin auf High legen,
das reicht zur Versorgung. Kurz warten, bis er "gebootet" hat,
auslesen und wieder abschalten.
Gast #1834272
Lesenswert?

Klaus Wachtler schrieb:
> Genau so hatte ich mal mit einem TSic 306 an einem AVR gemacht.
> Geht einwandfrei, ohne Widerstände oder anderen Schnickschnack.
> Mehr Bastelei war die SW-Seite...

Und welche Einstellungen hattest Du da ? Baudrate, Stopbit usw ????


> Dadurch kann man zur Messung einfach diesen Pin auf High legen,
> das reicht zur Versorgung. Kurz warten, bis er "gebootet" hat,
> auslesen und wieder abschalten.

Auch nicht schlecht. Das das Teil nur wenige µA zieht und auch über 5V 
läuft könnte ich den direkt an den µC anschliessen.
#1834307
Lesenswert?

Erst mal ähnlich, aber halt nicht gleich.
Spontan sehe ich drei Unterschiede:
- Ruhepegel und log. 0 ist bei ZACwire High (5V),
  Signal=1 ist TTL low (0V).
  Bei RS232 ist es eigentlich +10..12V für log. 0 und Ruhepegel,
  -10..12V für logisch 1.
  RS232 vor dem MAX232 hat logisch 0 bei 0V und log. 1 bei 5V.
- Zwei Bytes (nötig für die 11 Bit-Werte) kommen bei ZACwire
  direkt hintereinander (nur von einem halben Stopbit nach dem
  ersten Byte getrennt).
  Bei RS232 muß dazwischen erst einmal der Ruhepegel einkehren,
  um den Start des nächsten Bytes zu erkennen.
- Bei ZACWire hat man eine Manchestercodierung, d.h. jedes
  Bit hat eine Zeit lang log. 1 (0V) und eine Zeit lang log. 0
  (5V). Die Werte 0 und 1 unterscheiden sich darin, ob der Wechsel
  zwischen den beiden früher oder später erfolgt.
  Bei RS232 dagegen ist immer das ganze Bit auf 0 oder das
  ganze Bit auf 1.
  Das macht keinen Unterschied, wenn man nur zur Bitmitte liest,
  aber sicherer ist es immer, ein paar aufeinanderfolgende
  Messungen zu machen. Das klappt dann bei ZACwire nicht,
  wenn diese zu weit über das Bit verstreut sind.

Ich habe es nicht probiert, aber mit dem eingebauten UART
glaube ich nicht, daß es geht.
Gast #1834317
Lesenswert?

Hehe, ja ich merk schon. Jetzt will man nur "mal eben" einen Sensor an 
eine Schaltung bringen und muss fast schon eine Doktorarbeit draus 
machen.

Also lt. Datenblatt muss ich das Teil am besten an einen Eingang mit dem 
der µC einen Interrupt auslösen kann. Also nicht einfach an Rx und Du 
hast schonwieder recht, schmeckt mir gar nicht :-)
#1834727
Lesenswert?

Ich habe schon einige TSICs verbaut, der Daten-PIN wird direkt an den 
Dateneingang des µC angeschlossen, keine Pullups oder andere 
Widerstände.

Das ZACwire-Protokoll ist absolut easy und trotzdem tricky. Falls Du 
ohne Interrupt arbeiten willst (was die Sache noch weiter wesentlich 
vereinfacht, Du willst ja wohl nicht 10x/sec die Temperatur messen), 
dann schalte den TSIC über einen zusätzlichen Port ein (Port über 
100-220 Ohm an V+ des TSIC), warte die 2 Datenbytes ab und schalte ihn 
wieder aus.

Wichtig: so dicht wie möglich an den TSIC einen 100 nF 
Keramik-Kondensator.

Wenn Du mit PICs arbeitest, habe ich eine erprobte ASM-Routine für Dich.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren