Ich glaube ich habs,
habe es zumindest sowetit das der code nur noch 40% bracuht, also mal eben 50% eingespart.
Ihr könnt mir ja evtl nochmal einen Tip geben um das weiter zu verkürzen, oder ist das so schon OK?
Ich habe alles in excel aufbereitet und musste dann nachher nur aus excel in Bascom rauskopieren. Das klappt hervorragend.
Ich hänge die Excelliste auch mal an. Dann seht ihr auch die Werte die ich berechnet habe und die Werte die der mega errechnet hat.
Code:
$regfile = "m8def.dat"
$crystal = 3686400
$baud = 9600
Declare Sub Fall
Dim Temp As Integer
Dim Volt As Integer
Dim Differenz As Integer
Dim Helfer As Integer
Dim Startwert As Integer
Dim Wert As Integer
Dim Anzeige As Integer
Ddrb = &B00000001
Original Alias Pinb.3
Auf Alias Pinb.5
Zu Alias Pinb.4
Relais Alias Portb.0
Set Portb.3
Set Portb.4
Set Portb.5
Config Adc = Single , Prescaler = Auto , Reference = Internal
Start Adc
Cursor Off
Cls
Locate 1 , 2
Lcd Chr(239) ; "ltemp:"
Locate 1 , 13
Lcd Chr(223) ; "C"
Lowerline
Lcd Chr(239) ; "ltemp2:"
Locate 2 , 13
Lcd Chr(223) ; "C"
Do
Volt = Getadc(0)
Locate 1 , 9
Fall
Print "vor berechnung"
Print "startwert:" ; Startwert
Print "Tempstartwert:" ; Temp
Print "Differenz:" ; Differenz
Print
Helfer = Differenz / 5 'analogwert um wieviel verändern damit temperatur um 1 größer
Wert = Volt - Startwert
Wert = Wert / Helfer
Anzeige = Temp + Wert
Print "Ergebnisse"
Print "Isttemperatur" ; Anzeige
Print "aufzu addierender Wert:" ; Wert
Print "Helfer für Berechnunng:" ; Helfer
Wait 2
Loop
End
Sub Fall
Select Case Volt 'startwertetabelle für alle 5°C
Case 0 To 515
Lcd " LO "
Case 515 To 567
Startwert = 515
temp= 20
differenz= 51
Case 567 to 616
startwert= 567
temp= 25
differenz= 49
Case 616 to 662
startwert= 616
temp= 30
differenz= 46
Case 662 to 705
startwert= 662
temp= 35
differenz= 43
Case 705 to 744
startwert= 705
temp= 40
differenz= 39
Case 744 to 779
startwert= 744
temp= 45
differenz= 35
Case 779 to 811
startwert= 779
temp= 50
differenz= 32
Case 811 to 838
startwert= 811
temp= 55
differenz= 27
Case 838 to 862
startwert= 838
temp= 60
differenz= 24
Case 862 to 882
startwert= 862
temp= 65
differenz= 21
Case 882 to 900
startwert= 882
temp= 70
differenz= 18
Case 900 to 916
startwert= 900
temp= 75
differenz= 16
Case 916 to 929
startwert= 916
temp= 80
differenz= 13
Case 929 to 941
startwert= 929
temp= 85
differenz= 12
Case 941 to 951
startwert= 941
temp= 90
differenz= 10
Case 951 to 959
startwert= 951
temp= 95
differenz= 8
Case 959 to 966
startwert= 959
temp= 100
differenz= 7
Case 966 to 973
startwert= 966
temp= 105
differenz= 6
Case 973 to 978
startwert= 973
temp= 110
differenz= 6
Case 978 to 983
startwert= 978
temp= 115
differenz= 5
Case 983 to 987
startwert= 983
temp= 120
differenz= 4
Case 987 To 1025
Lcd " HI "
End Select
End Sub
Lesezeichen