Gast
#833782
Hallo, Ich verwende AVR-Studio 4.13 und als Programmiersprache, für den Atmega 8, C. Wenn man Variablen im EEPROM speichert und z.B schreibt double eeTsoll EEMEM = 25; schreibt der Compiler eine .eep Datei mit dem Wert 25 und der Adresse (glaube ich halt) in hexformat. Wie kann ich z.B in Matlab diesen Wert ändern und dann wieder in den Atmega laden (laden mit AVR-Studio)? Mich würde interessieren wie die Hexzahl aufgebaut ist. Zum speichern der double Variable wurde folgendes gemacht: union { // "Konverter" double d; // Beim Auslesen double uint8_t i[sizeof(double)]; // zum Abspeichern uint8_t Array }u; So holt man die Varible aus dem EEPROM eeprom_busy_wait(); eeprom_read_block(&(u.i),&eeTsoll,sizeof(double)); eeprom_busy_wait(); Tsoll = u.d; So schreibt man die Variable in den EEPROM u.d = Tsoll; eeprom_busy_wait(); eeprom_write_block(&(u.i),&eeTsoll,sizeof(double)); Das heißt sie wird als uint8_t Array abgespeichert. hier das was dann in der .eep Datei steht: :040000000000C841F3 :00000001FF Danke Werner Weiß leider nicht wie die double Variablen hier aufgebaut sind, möglicherweise finde ich es aber noch heraus. Also wenn jemand eine Idee hat bitte schreiben