Forum: Mikrocontroller und Digitale Elektronik Temperatursensor an LPT


von x86 (Gast)


Lesenswert?

Einen wunderschönen, sonnigen, Tag an alle.

Ich besitze einen Temperatursensor mit einem digitalen Ausgang (11 Bit) 
und würde gerne wissen wie ich diesen an den LPT Port anschliessen muss, 
um die Temperatur mit dem PC auswerten zu können.

Ich habe mir das folgendermaßen vorgestellt:

GND ---------------------- PIN 25 ??
VCC (5V) ----------------- PIN 2 ??? (immer auf High)
DIGITAL OUTPUT ----------- PIN 3 ??  (mit input Befehlen auslesen und 
mit der im Datenblatt genannten Formel die Temperatur ausrechnen)

Kann das so funktionieren ? Eventuell pack ich noch 100nF an VCC und GND 
- so nahe wie es geht natürlich ;).

Ich würde es gerne ausprobieren, aber ich frage lieber nach, weil der 
LPT ja nicht so sicher wie der COM Anschluss ist.

Die einzelnen Ports werde ich dann mit VB oder C abfragen...

Schönes Wochenende

x86

von Peter D. (peda)


Lesenswert?

In meiner Glaskugel kann ich leider nicht erkennen, welcher Sensor da 
vor Dir liegt.

Muß sie wohl reparieren lassen.


Peter


von Jupp (Gast)


Lesenswert?

>Kann das so funktionieren ?

Hab so mal einen DS1620 an den LPT gehangen, glaub aber mit anderer 
Belegung.

Su solltest sicherstellen, dass dein LPT bidirektionaler Betrieb 
ermöligcht, wenn du die Daten deines Sensors an Pin 3 des LPT gibst. 
Dazu mußt du den Port im BIOS als EPP konfigureiren.

von x86 (Gast)


Lesenswert?

@Peter

Ist es nicht egal was für ein Temperatursensor das ist ? Er hat ja einen 
digitalen Ausgang...

Es ist ein TSiC 506 im TO92 Gehäuse von ZMD.

Datenblatt: 
http://www.zmd.de/pdf/ZMD%20TSic506%20Data%20Sheet%20V3.6.PDF

@ Jupp, könntest du mir deine Pin Belegung sagen ?

Danke

von A.K. (Gast)


Lesenswert?

Es ist nicht egal, weil "digital" allein fast nichts aussagt. Kritisch 
ist beispielsweise:
- unidirektional/bidirektional
- Signalpegel
- Zeitverhalten

Bei den ZMDs ist das alles kein Problem.  Abgesehen davon dass eine 
LPT-Schnittstelle keine 5V führt, du also entweder dir 
Versorgungsspannung anderswo herzaubern musst, oder hoffen musst, dass 
ein auf "high" liegender Pin der Schnittstelle genug Spannung für die 
Stromversorgung des Sensors hergibt.

von x86 (Gast)


Lesenswert?


[1] Ich kann doch einfach mit einem DVM nachmessen ob da 5V rauskommen, 
außerdem braucht der 506'er keine 5V, sondern läuft auch mit weniger. 
Ich schau nochmal ins Datenblatt.

[2] Ist meine Pin Belegung so in Ordung ?

[3] Danke für den Hinweis mit dem digitalen Ausgang

[4] :)

von Jupp (Gast)


Lesenswert?

> @ Jupp, könntest du mir deine Pin Belegung sagen ?

Klar doch, hab grad mal in meinem Ordner gekramt:

DS1620     LPT
-------------------
(4) GND    (25) GND
(8) VCC    (5)  D3
(1) DQ     (3)  D1
(2) CLK    (2)  D0
(3) /RST   (4)  D2

von x86 (Gast)


Lesenswert?

Ok. Hmm versteh ich das richtig das mein Sensor nur 45 (µA) micro Ampere 
benötigt, wie geht das, das dieser nur so wenig braucht ?
Den LPT darf man bis auf max. 20 mA belasten. Das reicht ja total aus.

von A.K. (Gast)


Lesenswert?

Ja, der Strom ist kein Problem. Nur sind nicht alle LPTs gleich 
gestrickt, beispielsweise tun sich Notebooks mit 5V mitunter etwas 
schwer. Weshalb manche LPT-Lösungen arg vom Rechner abhängen, an dem sie 
stecken. Was manche Nutzer von Parallelport-ISP-Adaptern schon 
feststellen mussten.

von A.K. (Gast)


Lesenswert?

Soft/Hardware für den 1620 nützt einem Anwender von ZMD-Sensoren nicht 
arg viel. "Digital" hat zwar nur Nullen und Einsen, aber das heisst 
nicht, dass es nur 2 Geräte gibt, eines mit Null und eines mit Eins. ;-)

von x86 (Gast)


Lesenswert?

A.K.

Ja ich benutze ein Parallelport-ISP-Adapter für meine AVR's ;). Mein PC 
gibt scho 5V.. sonst gibt es haue für ihn ^^.

Also kann ich wie oben beschrieben meine Schaltung aubauen ?

VCC Pin immer auf HIGH

und den PIN wo die Daten ankommen auf High oder Low ? Ich würde LOW 
sagen.

von Jupp (Gast)


Lesenswert?

Mach in die VCC-Leitung noch nen Widerstand rein, so < 1000 Ohm. War bei 
mir auch notwendig, ohne gab's Bitfehler beim Auslesen.

von x86 (Gast)


Lesenswert?

danke für den Hinweis :)

von x86 (Gast)


Lesenswert?

BTW: Ist da ein Fehler im Datenblatt ?

Ich habe ein TO 92 Gehäuse, dort steht

PIN 1 = GND
PIN2 = Signal
PIN4 = VCC

Aber die Abbildung des TO 92 hat nur:

PIN 1 2 3.

Ist dann 3 = 4 btw. 3 = VCC ?

Datenblatt:
http://www.zmd.de/pdf/ZMD%20TSic506%20Data%20Sheet%20V3.6.PDF

von Jupp (Gast)


Lesenswert?

Ist ein Fehler im Datenblatt, copy&paste halt....

von Jupp (Gast)


Lesenswert?

3 = V+

von x86 (Gast)


Lesenswert?

Hallo Jupp

Wie lese ich denn die Information aus dem Chip heraus ?

Ich habe früher mal mit VB6 die inpout32.dll benutzt..

da gibt es den inp(Adresse) Befehl... aber ich muss doch gezielt einen 
PIN auslesen oder nicht ? Das ist mir noch etwas unklar.

von Jupp (Gast)


Lesenswert?

Du mußt erstmal den Port auslesen, und dir dann das jeweilige Bit 
ausmaskieren:
1
a = inp(BASE);
2
if(a & (1 << BIT#)) {...} else {...}

BIT# = 3, falls deine Daten an D3 gehen, halt als Beispiel.

von x86 (Gast)


Lesenswert?

Danke !


Bist du sicher das ich bei den ZMD auch einen Widerstand brauche ? Sind 
470 Ohm in Ordnung  oder doch mehr ?

von x86 (Gast)


Lesenswert?

Sorry aber ich check das nicht...

Ich habe das in VB so getestet:

   Val = Inp(&H37C)
        If Val And (1 < 3) Then
            MsgBox(Val)
        End If

ich bekomm nur 255... ist ja logisch, weil meine Daten an Ausgang1 gehen 
(PIN3 des LPTs) VCC ist Ausgang0 (PIN2 des LPTS). Wie muss das denn bei 
PIN3 aussehen ?

Kannst du mir das irgendwie erklären ?

von x86 (Gast)


Lesenswert?

jemand eine idee ?

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.