mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AVRDUDE kann Datei nicht erstellen


Autor: Marek N. (bruderm)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guten Abend,

ich plage mich derzeit ein bisschen mit dem Programm AVRDUDE unter 
Windows XP rum.
Als Programmier-Adapter verwende ich einen selbstgebauten AVR-Doper, der 
aber soweit zu funktionieren scheint.

Mein Problem ist, ich kann mit AVRDUDE keinen Dump vom Controller 
erstellen. Auch nicht von einem leeren.

Die Kommunikation mit dem Controller scheint soweit zu klappen, da ich 
ja die Signature und Fuse-Bits auslesen kann, aber der Dude meint immer, 
dass ein ungültiges Dateiformat vorliegt.

Irgendwelche Ideen?

Beste Grüße, Marek

Anbei mal die Ausgabe

Lesen:
D:\Programme\avrdude>avrdude -c stk500v2 -p m8 -P avrdoper -v -U flash:r:lese.hex

avrdude: Version 5.5, compiled on Nov  8 2007 at 16:08:45
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/

         System wide configuration file is "D:\Programme\avrdude\avrdude.conf"

         Using Port            : avrdoper
         Using Programmer      : stk500v2
         AVR Part              : ATMEGA8
         Chip Erase delay      : 10000 us
         PAGEL                 : PD7
         BS2                   : PC2
         RESET disposition     : dedicated
         RETRY pulse           : SCK
         serial program mode   : yes
         parallel program mode : yes
         Timeout               : 200
         StabDelay             : 100
         CmdexeDelay           : 25
         SyncLoops             : 32
         ByteDelay             : 0
         PollIndex             : 3
         PollValue             : 0x53
         Memory Detail         :

                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           eeprom         4    20   128    0 no        512    0      0  9000  9000 0xff 0xff
           flash         33    10    64    0 yes      8192   64    128  4500  4500 0xff 0x00
           lfuse          0     0     0    0 no          1    0      0  2000  2000 0x00 0x00
           hfuse          0     0     0    0 no          1    0      0  2000  2000 0x00 0x00
           lock           0     0     0    0 no          1    0      0  2000  2000 0x00 0x00
           calibration    0     0     0    0 no          4    0      0     0     0 0x00 0x00
           signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00

         Programmer Type : STK500V2
         Description     : Atmel STK500 Version 2.x firmware
         Programmer Model: STK500
         Hardware Version: 1
         Firmware Version: 2.04
         Topcard         : STK501
         Vtarget         : 0.0 V
         Varef           : 0.0 V
         Oscillator      : 1.229 MHz
         SCK period      : 2.2 us

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.05s

avrdude: Device signature = 0x1e9307
avrdude: safemode: lfuse reads as E1
avrdude: safemode: hfuse reads as D9
avrdude: reading flash memory:

Reading | ################################################## | 100% 40.67s

avrdude: writing output file "lese.hex"
avrdude: output file lese.hex auto detected as invalid format
avrdude: invalid output file format: -1
avrdude: write to file 'lese.hex' failed

avrdude: safemode: lfuse reads as E1
avrdude: safemode: hfuse reads as D9
avrdude: safemode: Fuses OK

avrdude done.  Thank you.


D:\Programme\avrdude>

Autor: Alexander Schmeil (knut740)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Marek N. schrieb:
> avrdude -c stk500v2 -p m8 -P avrdoper -v -U flash:r:lese.hex

Probiere mal

avrdude -c stk500v2 -p m8 -P avrdoper -v -U flash:r:lese.hex:h

also mit der Formatangabe :h (oder d, b) am Schluß

mfg

Autor: Marek N. (bruderm)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi und vielen Dank,

der Parameter "h" hilft tatsächlich! Erstaunlich, dass ich ihn zum 
beschreiben nicht unbedingt brauchte.
Oki, dann kann ich mal weitermuddeln.

Beste Grüße, Marek

Autor: Randy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Erstaunlich, dass ich ihn zum
> beschreiben nicht unbedingt brauchte.

Da steckt durchaus Logik drin, beim schreiben kann der Dude ja sehen in 
welchem Format die Daten kommen. Beim lesen muß er aber wissen welches 
Format gewünscht wird.

Autor: Mike (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke Alexander!

Autor: Oliver Ju. (skriptkiddy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Marek N. schrieb:
> der Parameter "h" hilft tatsächlich!
Damit erzeugst du aber kein Intel-Hexfile.

avrdude Manpages:

i    Intel Hex

s    Motorola S-record

r    raw binary; little-endian byte order, in the case of
                        the flash ROM data

m    immediate; actual byte values specified on the command
     line, separated by commas or spaces.  This is good for
     programming fuse bytes without having to create a sin‐
     gle-byte file or enter terminal mode.

a    auto detect; valid for input only, and only if the
     input is not provided at stdin.

d    decimal; this and the following formats are only valid
     on output.  They generate one line of output for the
     respective memory section, forming a comma-separated
     list of the values.  This can be particularly useful
     for subsequent processing, like for fuse bit settings.

h    hexadecimal; each value will get the string 0x
     prepended.

o    octal; each value will get a 0 prepended unless it is
     less than 8 in which case it gets no prefix.

b    binary; each value will get the string 0b prepended.


Gruß Oliver

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.