Forum: Mikrocontroller und Digitale Elektronik Schreiben ins Flash


von Josef (Gast)


Lesenswert?

Hallo!

Könnte mir bitte jemand sagen wie der genaue Schreibbefehl um auf den 
Flash zu schreiben lautet.
Das Lesen mit dem lpm-Befehl funktioniert bereits.

von spess53 (Gast)


Lesenswert?

Hi

>Das Lesen mit dem lpm-Befehl funktioniert bereits.

Wie wäre es mit spm?

MfG Spess

von Josef (Gast)


Lesenswert?

spess53 schrieb:
> Wie wäre es mit spm?

Mit diesem funktioniert es nicht ganz : spm Z, R14

was brauche ich noch dazu?

von spess53 (Gast)


Lesenswert?

Hi

Nachtrag: Ist aber nicht so einfach, wie lpm. Sieh dir die Beschreibung 
im Instruction Set

http://www.atmel.com/dyn/resources/prod_documents/doc0856.pdf

an.

MfG Spess

von Josef (Gast)


Lesenswert?

ich will jetzt nicht aufdringlich sein aber könntest du vielleicht ein 
Programmschnipsel senden?
ich kann leider nicht wirklich was aus dem Datenblatt herauslesen.

von c-hater (Gast)


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)

von spess53 (Gast)


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

von c-hater (Gast)


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)

von Josef (Gast)


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

von Sascha W. (sascha-w)


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

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
Noch kein Account? Hier anmelden.