So...jetzt bin ich dank Deiner hilfe schon ein ganzes Stück weiter.
Ich bin jetzt in der Lage, auch eine 0x00 aus dem Eingangspuffer der seriellen Schnittstelle zu laden, ich musste den ReadTimeOut-Multiplikator des COM-Ports erhöhen.
Bei der char-Variable hatte mir natürlich nur die Adresse anzeigen lassen - dumme Schusselfehler. :/
Die Struktur kann ich so leider noch nicht anwenden, da die jeweiligen Datencontainer im EEPROM des µC unterschiedlich groß sind, eine passende Routine zum ausarbeiten habe ich aber bereits, die müsste so klappen.
Nun habe ich noch ein kleines Problemchen mit der Darstellung der eingelesenen Zeichen bzw. derer Abbildung. klar ist mir, dass int=4Byte sind. Da aber char nur 1Byte groß ist, bildet mir die Ausgabe leider einige Zeichen mit vorangestellten ff ab (habe die Hexausgabe gewählt, da diese für mich am praktischsten ist). Bei "normalen Zeichen" wie 1 (0x31), a (0x61) u.s.w. zeigt er mir nur den zweistelligen Hex-Code an, bei Nicht-Standardzeichen wie z.B. 0x8f werden jedoch immer 3Byte mit ff vorangestellt. Wie kann ich das lösen?
Deinen Vorschlag habe ich jedoch so umgemünzt, leider funktioniert er nicht richtig, wenn das Programm an der Stelle read ist erscheint die Fehlermeldung "Das System kann die angegebene Datei nicht finden", im Debug-Modus meldet er "Unzulässiger Zugriff auf einen Speicherbereich"
Ich bin jetzt in der Lage, auch eine 0x00 aus dem Eingangspuffer der seriellen Schnittstelle zu laden, ich musste den ReadTimeOut-Multiplikator des COM-Ports erhöhen.
Bei der char-Variable hatte mir natürlich nur die Adresse anzeigen lassen - dumme Schusselfehler. :/
Die Struktur kann ich so leider noch nicht anwenden, da die jeweiligen Datencontainer im EEPROM des µC unterschiedlich groß sind, eine passende Routine zum ausarbeiten habe ich aber bereits, die müsste so klappen.
Nun habe ich noch ein kleines Problemchen mit der Darstellung der eingelesenen Zeichen bzw. derer Abbildung. klar ist mir, dass int=4Byte sind. Da aber char nur 1Byte groß ist, bildet mir die Ausgabe leider einige Zeichen mit vorangestellten ff ab (habe die Hexausgabe gewählt, da diese für mich am praktischsten ist). Bei "normalen Zeichen" wie 1 (0x31), a (0x61) u.s.w. zeigt er mir nur den zweistelligen Hex-Code an, bei Nicht-Standardzeichen wie z.B. 0x8f werden jedoch immer 3Byte mit ff vorangestellt. Wie kann ich das lösen?
Deinen Vorschlag habe ich jedoch so umgemünzt, leider funktioniert er nicht richtig, wenn das Programm an der Stelle read ist erscheint die Fehlermeldung "Das System kann die angegebene Datei nicht finden", im Debug-Modus meldet er "Unzulässiger Zugriff auf einen Speicherbereich"
Code:
int* cominhalt1;
.
.
m_bytes=port.Read((char*)cominhalt1,1);
.
.