AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein case of "anstatt constanten - Variablen einsetzen
Thema durchsuchen
Ansicht
Themen-Optionen

case of "anstatt constanten - Variablen einsetzen

Ein Thema von 1967Schorsch · begonnen am 8. Jul 2020 · letzter Beitrag vom 9. Jul 2020
 
1967Schorsch

Registriert seit: 28. Feb 2020
Ort: Dinslaken
8 Beiträge
 
Delphi 6 Enterprise
 
#1

case of "anstatt constanten - Variablen einsetzen

  Alt 8. Jul 2020, 15:59
Hallo zusammen,
ich nutze Delphi 6 und bin eher der unbedarfte Programm Nutzer.

Für meinen vor Jahren entwickelten Bordcomputer Adapter für eine Audi 80 Cabrio TDI und nun frisch für einen Audi 100 TDI (fast mit H-Kennzeichen) möchte die Abstimmung, des Adapters auf das Fahrzeug, komfortabler gestalten. Dazu habe ich eine Software geschrieben die zwei Zeilen der Eprom Daten des AVR Microcontrollers verändern und wieder in den AVR zurückschreiben kann.

Da die Daten für den Audi 100 noch nicht wirklich festliegen möchte ich die Stammdaten ( liegen zur Laufzeit "dezimal" in den unteren 32 Editfelder der Software) in die Simulation einbinden. Jedes einzelen der 32 Editfelder ist über den Spinbutton unterhalb zwischen 1 und 254 veränderbar.

Für die Simulation des Verbrauchswertes habe ich zunächst den Eingang der Einspritzpumpenwerte als integer Wert eingebunden. Über eine case of hole ich mit verschieden Stützwerte der Berechnung.

Nun kommt mein Problem: die Werte in der case of sind ja Constanten und die möchte ich aber entsprechend der Werte in den Editfeldern 32-64 verändern.
Einbinden der Variablen funktioniert nicht..... mit If then else möchte ich nicht arbeiten... und so die Frage was gibt es noch für Möglichkeiten die Werte der Editfelder entsprechend dem ESP integer Wert auszulesen. Habe schon mal was über eine Lockup Tabelle gelesen komm da aber nicht weiter.


Ich bin für jeden Hinweis Dankbar, hier noch die case of mit den Werte. Die Werte liegen auch in einem Array.

DANKE !!!


Zitat:
// function ESPwerte aus der Case select Tabelleauslesen
function ESPwerte(ESP : integer ):integer ;
var
i, EZ :Integer;

begin
i := ESP;

case i of
0: // 0-7=>0
begin
EZ:= 0;
end;
1: // 8-15=>8
begin
EZ:= 0;
end;
2: // 16-23=>16
begin
EZ:= 0;
end;
3: // 24-31=>24
begin
EZ:= 0;
end;
4: // 32-39=>32
begin
EZ:= 0;
end;
5: // 40-47=>40
begin
EZ:= 0;
end;
6: // 48-55=>47
begin
EZ:= 0;
end;
7: // 56-63=>54
begin
EZ:= 3;
end;
8: //64-71=>61
begin
EZ:= 11;
end;
9: //72-79=>68
begin
EZ:= 20;
end;
10: // 80-87
begin
EZ:= 30;
end;
11: //88 - 95 => 79
begin
EZ:= 41;
end;
12: //96 - 103 => 83
begin
EZ:= 53;
end;
13: //104 - 111
begin
EZ:= 66;
end;
14: //112 - 119
begin
EZ:= 80;
end;
15: //120 - 127
begin
EZ:= 94;
end;
16: //128 - 135
begin
EZ:= 108;
end;
17: //136 - 143
begin
EZ:= 122;
end;
18: //144 - 151
begin
EZ:= 135;
end;
19: //152 - 159
begin
EZ:= 148;
end;
20: //160 - 167
begin
EZ:= 159;
end;
21: //168 - 175
begin
EZ:= 170;
end;
22: //176 - 183
begin
EZ:= 179;
end;
23:
begin
EZ:= 187;
end;
24:
begin
EZ:= 193;
end;
25:
begin
EZ:= 198;
end;
26:
begin
EZ:= 202;
end;
27:
begin
EZ:= 205;
end;
28:
begin
EZ:= 207;
end;
29:
begin
EZ:= 208;
end;

else
begin
EZ:= 208;
// ShowMessage ('ESP hier ende ');
end;
end; // Sehr Wichtig: Das End von Case!

result :=EZ;
end;
Angehängte Grafiken
Dateityp: jpg Tabelle-edit-TChart.jpg (210,6 KB, 34x aufgerufen)
Georg
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:25 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz