Ich scheitere daran, den EEprom Inhalt meines ATMega1284 zu verändern. Ich kann im Atmel Studio eine EEP Datei lesen (also den Inhalt meines µC), kann das auch zurückschreiben. Aber wenn ich zwei Byte verändere, dann klapp das Schreiben zurück in den µC nicht. Weder wenn ich die Änderung mit dem Windows-Editor mache, noch wenn ich das eep file direkt im Atmel Studio öffne, modifiziere und speichere. Fehlermeldung ist manchmal "execution of command cancelled because of previous command failure" und manchmal "Unable to parse objectfile (hier steht der Pfad) test2.eep: Unsupported format" Ich habe nur in den ersten beiden Zeilen :10000000EF27011500FA0026024600143B01FFFF0E :10001000FEF90107F28A6002FFFFFFFFFFFFFFFF0B in :10000000EF27011500FA0026024600143B01FFFF0E :10001000FEF90107F3006002FFFFFFFFFFFFFFFF0B geändert (Drei Nibble in zweiter Zeile geändert). Was mache ich falsch?
Hallo Bernhard, ich lese den Eeprominhalt als binär oder raw Daten in eine Datei. Dann geht das mit einem einfachen Hexeditor Dazu verwende ich Avrdude, hier sind die Kommandozeilenparameter:
1 | Usage: avrdude-6.1 [options] |
2 | Options: |
3 | -p <partno> Required. Specify AVR device. |
4 | -b <baudrate> Override RS-232 baud rate. |
5 | -B <bitclock> Specify JTAG/STK500v2 bit clock period (us). |
6 | -C <config-file> Specify location of configuration file. |
7 | -c <programmer> Specify programmer type. |
8 | -D Disable auto erase for flash memory |
9 | -i <delay> ISP Clock Delay [in microseconds] |
10 | -P <port> Specify connection port. |
11 | -F Override invalid signature check. |
12 | -e Perform a chip erase. |
13 | -O Perform RC oscillator calibration (see AVR053). |
14 | -U <memtype>:r|w|v:<filename>[:format] |
15 | Memory operation specification. |
16 | Multiple -U options are allowed, each request |
17 | is performed in the order specified. |
18 | -n Do not write anything to the device. |
19 | -V Do not verify. |
20 | -u Disable safemode, default when running from a script. |
21 | -s Silent safemode operation, will not ask you if |
22 | fuses should be changed back. |
23 | -t Enter terminal mode. |
24 | -E <exitspec>[,<exitspec>] List programmer exit specifications. |
25 | -x <extended_param> Pass <extended_param> to programmer. |
26 | -y Count # erase cycles in EEPROM. |
27 | -Y <number> Initialize erase cycle # in EEPROM. |
28 | -v Verbose output. -v -v for more. |
29 | -q Quell progress output. -q -q for less. |
30 | -l logfile Use logfile rather than stderr for diagnostics. |
31 | -? Display this usage. |
Ach das ist eine Prüfsumme... Mist! Dann konnte es nicht gehen. Danke!!!
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.