Ja da hat man doch wieder etwas gelernt \/


Ich störe nur ungern, aber ich habe ein Problem

Irgend wie liegt die Temperatur immer zwischen 28.23°C und 29.04°C, egal, welche innentemperatur herscht. Es ändert sich zwar linear zur realen Temperatur, aber der Bereich stimmt nicht.

Es wurde noch eine Tasterfunktion hinzugefügt.

Hier noch einmal der Code:

Code:
$regfile "m48def.dat"
$crystal = 8000000

Config Pinc.4 = Input
Portc.4 = 0

Config Portb = Output
Config Portd = Output
Config Lcdpin = Pin , Db4 = Portd.6 , Db5 = Portd.5 , Db6 = Portb.7 , Db7 = Portb.6 , E = Portd.7 , Rs = Portb.0
Config Lcd = 16 * 2

Config Adc = Single , Prescaler = Auto
Config Portc.0 = Input

Deflcdchar 6 , 7 , 5 , 7 , 32 , 32 , 32 , 32 , 32           '°C

Dim W As Word
Dim Z1 As Single
Dim Z2 As Single
Dim Temp As Single

T Alias Pinc.4
L Alias Portb.1

Cursor Off

Do
If T = 1 Then
L = 1
W = Getadc(2)

Z1 = W
Z2 = Z1 - 714
Temp = Z2 * 0.035
Temp = Temp + 25.7

Cls
Locate 1 , 1
Lcd "Temp: " ; Fusing(temp , "##.##") ; Chr(6) ; "C"
Locate 2 , 1
Lcd ""
Waitms 1000

Else
Cls
L = 0
End If

Waitms 1
Loop