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






Zitieren

Lesezeichen