Schreiben ins Flash

Gast #3464446
Lesenswert?

Josef schrieb:

> was brauche ich noch dazu?

Nur einen tiefen Blick in's Datenblatt. Da steht der ganze Kram 
ausführlich drinne. In JEDEM Datenblatt. Soll heißen: es gibt 
Zieldevice-abhängige Unterschiede zu beachten.

Verschieden sind inbesondere drei Sachen:
1) Page-Größe
2) Nötige Manipulation zum Freischalten des spm-Befehls
3) Voraussetzungen, damit sich spm überhaupt an einer bestimmten Stelle 
freischalten läßt (fuses und Flash-Bereiche)
Gast #3464452
Lesenswert?

Hi

>ich will jetzt nicht aufdringlich sein aber könntest du vielleicht ein
>Programmschnipsel senden?

Habe ich leider nicht. SPM ist eigentlich nur für Bootloader 
interessant. Und so etwas habe ich bisher noch nicht gebraucht. Einen 
einfachen Assemblercode für einen Bootloader ist aber in jedem 
ATMega-Datenblatt zu finden. Z.B. hier S.212

http://www.atmel.com/Images/Atmel-2486-8-bit-AVR-microcontroller-ATmega8_L_datasheet.pdf

MfG Spess
Gast #3464475
Lesenswert?

spess53 schrieb:

> SPM ist eigentlich nur für Bootloader
> interessant.

Nein. Kann auch interessant sein zur Datenspeicherung (Datenlogger 
z.B.).

Ich persönlich benutze es z.B. für meine "lernfähige" IR-Lösung. 
Gelernte Codes landen nach Verifikation in der internen "Flash-Disk". 
Und sind von dort mittels USB-Storage auch vom PC aus les- und 
schreibbar. Sehr nützlich zur Archivierung und auch zur Distribution 
über mehrere Exemplare von Fernbedienungen.

Weil: Die Dinger heißen wahrscheinlich deshalb Fernbedienung, weil sie 
immer in maximaler Entfernung von dem Ort liegen, wo man sie gerade 
brauchen würde. Verteilt man sie schon gleichmäßig, ist immer eine in 
der Nähe. ;o)
Gast #3464477
Lesenswert?

hallo

schon mal danke für die schnellen Antworten!!

ich werde mir das mit dem schreiben auf Boot-Flash-Section durchschauen.

Weiters möchte ich wissen ob man auf Application-Flash-Section schreiben 
kann und wie der Befehl lautet.

lg
#3464635
Lesenswert?

Hallo,

das schreiben auf welche Sektion auch immer ist an sich in jedem Fall 
der selbe Vorgang. Es mach halt nur einen Unterschied in welcher Sektion 
das Programm läuft welches die Schreibbefehle ausführt und welche 
Sektion beschrieben werden soll - hier sind nicht alle Kombinationen 
möglich! Bei der Initialisierung sind davon abhängig einige Unterschiede 
zu beachten. Genauers kannst du dem schon erwähnten Datenblatt 
entnehmen.

Sascha

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren