Gast
#555095
Guten Tag !
Habe einen Temperatursensor mit dig. Ausgang an den LPT angeschlossen
und würde gerne wissen wie ich die Temperatur auslesen kann. Der Ausgang
ist ein: "Single-wire 11-bit digital serial signal output".
Ich arbeite mit VB 2005 und verwende die inpout32.dll.
Befehle: Inp und Out.
Was ich nicht recht verstehe ist wie ich diese Daten auslesen kann und
wie das überhaupt funktioniert. Das ich den Inp Befehle brauche ist mir
schon klar, aber der Rest eben nicht.
In dem µC & Elektronik Bereich hat man mir diesen Code in C gegeben mit
dem ich nichts Anfangen kann. BTW: Der Output vom Sensor hängt an
Ausgang 1, also PIN3 des LPT's.
a = inp(BASE);
if(a & (1 << BIT#)) {...} else {...}
Nur als Ergebnis kommt doch eine Zahl zwischen 0 - 255 oder nicht ?
Die Formel im Datenblatt ist folgende:
Temperature = (Digital Signal / 2047 * 70 - 10)°C
Dazu ist eine kleine Tabelle:
Temp(°C) Temp(°F) Digital Value
-------------------------------------------------------------
-10 14 0x000
0 32 0x124
25 77 0x3FF
60 140 0x7FF
Zum Beispiel ist ja 25 °C = Hex 3FF bzw. in dez. 1023, aber wie soll man
in einem Zahelbereich von 0-255 die Zahl 1023 anzeigen lassen ?
Ich versteh dieses ganze Prinzip noch nicht und bitte um Erklärung.
Ich war schon in einem anderen Forum, aber dort sind nicht so viele User
im Hardware Bereich aktiv.
Bedanke mich für jeden Hinweis.
x86