Hallo,
das Thema ist nicht neu, "wie messe ich die Temeperatur mit einem KTY81-220?"
Es wurde zwar schon sehr oft hier im Forum behandelt. So ganz schlau bin ich allerdings nicht daraus geworden.
Es geht darum:
Zunächst wird die Spannung, die über den Spannungsteiler am Eingangsport ankommt mit einem Wert multipliziert werden. Wie ermittle ich diesen Wert?
Dann wird ein Referenzwert davon abgezogen. In allen Beispielen die ich gefunden haben wird hier der selebe Wert beschrieben.
Woher kommt der Wert von 1.1593?
Um die Spannungsänderung, z.B. 1V = 1Krad, anzupassen wird hier durch 0.0077125 geteilt. Wo kommt dieser Wert her?
Bei mir kommt mit diesen Werten, bei 0 Krad eine Anzeige von -10 Krad und bei einer Außentemp von 36 Krad eine Anzeige von 14,6Krad.
Wie nehme ich hier einen Abgleich vor?
Code:'******************************************************************************* 'Temperaturmessung mit einem KTY 81-220 '******************************************************************************* $regfile = "m32def.dat" $crystal = 7372800 $baud = 9600 Dim W As Word Dim V_alt As Single Config Adc = Single , Prescaler = Auto , Reference = Avcc Const Refer = 1.1593 Config Lcdpin = Pin , Db4 = Porta.3 , Db5 = Porta.2 , Db6 = Porta.1 , Db7 = Porta.0 , E = Porta.4 , Rs = Porta.5 Config Lcdmode = Port Config Lcdbus = 4 '4 bit mode Config Lcd = 16 * 2 'LCD-Display mit 16 Zeichen in 2 Zeilen verwendet Initlcd Wait 1 Start Adc Cursor Off Noblink Cls '******************************************************************************* Do Gosub Temperatur Loop '******************************************************************************* Temperatur: 'Anschluss Spannungsteiler +5V---R2,7K---|---KTY81-220---GND ' ADC7 'AGND - GND 'AVCC - +5V 'AVREF - +5V W = Getadc(7) Waitms 200 V_alt = W * 0.0025 V_alt = V_alt - Refer V_alt = V_alt / 0.0077125 Locate 1 , 8 Lcd Fusing(v_alt , "#.#") ; Chr(4) ; "C" ' Return







Zitieren

Lesezeichen