Ich bin dabei mit FreeBasic mein erstes Programm zu schreiben. Dabei soll die EEPROM Aufzeichnung meines µC Projekts in eine Tabellenkalkulations taugliche *.csv Datei umgewandelt werden. Jeder Datensatz besteht aus 7 Byte. 3 Byte stellen das Datum dar, gefolgt von 2 16Bit Werten. Die Konvertierung des Datums funktioniert wunderbar. Der erste 16Bit Wert ist auch richtig als Zeichenkette dargestellt, aber dann beginnen die Fehler. Der zweite Wert sollte 1185 (0h04A1) betragen. In der Archiv.csv steht er aber mit 929. Der Fehler wiederholt sich über die ganze Datei. Nun verstehe ich nicht, warum einige Werte richtig sind und andere nicht. Habe alles nötige gleich mit angehängt. Würde mich sehr freuen wenn sich das mal Jemand anschauen könnte. Vielen Dank im voraus.
Roy H. schrieb: > dargestellt, aber dann beginnen die Fehler. > Der zweite Wert sollte 1185 (0h04A1) betragen. > In der Archiv.csv steht er aber mit 929. > Der Fehler wiederholt sich über die ganze Datei. > > Nun verstehe ich nicht, warum einige Werte richtig sind und andere > nicht. Heisser Tip: Wenn man nicht so ganz versteht, wie ein Programm zu den Ergebnissen kommt, zu denen es kommt, dann empfiehlt es sich dem Programm über die Schulter zu sehen. Das kann bedeuten: In einem Debugger Zeile für Zeile einzeln ablaufen zu lassen und sich die Zwischenergebnisse anzusehen. Das kann aber auch bedeuten sich zusätzliche Ausgaben ins Programm einzubauen, mit denen man sich Zwischenwerte ansehen kann. AM besten mit den Eingaben anfangen: Welche Werte liest mein Programm von der Datei und was passiert damit weiter.
Ich habe den Fehler selbst gefunden. Die Variable "Zeichen" muß als UByte (unsigned) und nicht als Byte definiert werden. Dadurch wurde das von der Datei eingelesen Zeichen falsch interpretiert. Trozdem vielen Dank.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.