Flashspeicher auslesen im Butterfly

#525987
Lesenswert?
• ▲
▼
Meinst du den Dataflash, oder den Programmflash?
Beim ersten musst du in der Tat ein Tool schreiben, beim zweiten sollte 
der interne Bootloader normalerweise vollkommen ausreichen.

Ich hab mir vor ewigkeiten mal ein ASM-Tool geschrieben, das den Inhalt 
des Flashspeichers ausgibt. War nur zum testen... aber vielleicht hilft 
es:

[quote]

dump_mem:
push r20   ;Register retten
push r21
push ZL
push ZH
ldi ZL,0    ;Z-Pointer auf Flash-Start
ldi ZH,0
print_line:    ;Eine Zeile ausgeben
rcall getchar_noblock  ;Zeichen von Serial holen
cpi ACCU,0x03    ;CTRL-C ?
breq end_dump   ;wenn ja, dann ausgabe abbrechen

ldi r21,0x10  ; 0x10 Werte pro Zeile
mov r20,ZH    ; ZH als HEX-Wert   (00-FF)
rcall print_byte ;auf Serial augeben
mov r20,ZL
rcall print_byte


ldi ACCU,':'
rcall putchar  ; ":" ausgeben als Trennzeichen

print_values:
lpm r20,Z+    ;Wert von Speicherstelle Z in R20 laden und Z++
rcall print_byte ; Wert als HEX-Zahl ausgeben
ldi ACCU,' '
rcall putchar  ;Leerstelle ausgeben
dec R21
brne print_values ;0x10 Werte ausgegeben?
ldi ACCU,0x0D
rcall putchar
ldi ACCU,0x0A
rcall putchar  ;CR+LF ausgeben
cpi ZH,0x20   ;Speicherstelle 0x2000 erreicht?
brne print_line
end_dump:

pop ZH
pop ZL
pop R21
pop R20
ret

[/quote]

Gruß,
  SIGINT

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.