Gast
#50997
Hallo zusammen. Ich habe eine kleine Anwendung, in der der uC eine bestimmte Zeit abwartet (eine Art Warteschleife), dann wird der Rest des Programmes ausgeführt. Diese Warteschleife kommt oft im Programm vor. Ein Beispiel: Steuere Transistor 1 warte 100 ms Steuere Transistor 2 warte 100 ms usw. Diese Zeit von 100 ms ist als Konstante definiert. Nun möchte ich dem Anwender ein Visual Basic Programm schreiben, in dem er diese Zeit beliebig zwischen 100 ms und 9000 ms ändern kann. Die Änderung soll natürlich in der HEX-Datei stattfinden. Dem Anwender liegt kein Compiler vor und deshalb muss er die HEX-Datei selbst anpassen, wenn er eine neue Zeit einstellen will und dann den uC neu programmieren. 2 HEX-Dateien habe ich bereits erzeugt (1000 ms und 2000 ms) und verglichen. Die Dateien unterscheiden sich nur in einer Zeile und zwar an 3 hintereinanderfolgenden Bytes und an der Prüfsumme (letztes Byte einer Zeile). Allerdings finde ich meine Zeitkonstanten nicht mehr. Nun zu meiner Frage: Gibt es irgend eine Möglichkeit, die Zeitkonstante so festzulegen, dass man sie im Programm immer an der selben Stelle wiederfinden kann? Dann ist die Änderung leichter. Das Visual Basic Programm sieht dann beispielsweise so aus: 1)Zeit in Millisekunden eingeben (zBsp. 1000) 2)daraus eine 4 stellige HEX-Zahl berechnen (bei 1000ms ist es 03E8) 3)die 2 Bytes (03 und E8) an der richtigen Stelle in die HEX-Datei eintragen. 4)Die neue Prüfsumme für die veränderte Zeile berechnen und benfalls in die HEX-Datei eintragen 5)Die neu entstandene HEX-Datei unter einem vom Anwender wählbaren Namen abspeichern 6) Nun steht der Programmierung des uC mit der neuen Zeit nichts mehr im Weg Hoffe ich jedenfalls!! Ich hoffe, ich habe mich klar ausgedrückt. Vielen dank für die Bereitschaft und die tolle Unterstützung.