Forum: Mikrocontroller und Digitale Elektronik Daten ablegen mit .dseg?


von Torsten O. (Gast)


Lesenswert?

Hallo und Guten Abend,

ich versuche gerade herauszufinden wie das genau mit dem .dseg 
funktioniert. Ich habe quasi zehn plus sechs Werte die ich gerne im 
Bereich ab 0x60 (also ich glaube im Datenbereich des Controllers) 
ablegen möchte.

Um mein Programm zu testen habe ich die Daten erstmal mit Hilfe von :

ldi    R16, Wert1
sts    0x60, R16

ldi    R16, Wert2
sts    0x61, R16

gespeichert. Im Simulator und auf dem realen Controller funktioniert das 
so wie es soll.

Nun habe ich folgendes versucht :

.dseg Data: .db 0x6f, 0x06, 0xab, 0x8f, 0xc6, 0xcd, 0xed, 0x07, 0xef, 
0xcf, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06

Ich arbeite mit dem neuen AVR Studio 5. Müssten in der Speicheranzeige 
nach dem Programmstart (im Simulator) nicht die entsprechenden Daten 
angezeigt werden? Der Controller funktioniert auch nicht so wie er soll. 
Wo ist da mein Verständnisproblem?

Vielen Dank im voraus


lg Torsten

von Bitte füllen Sie dieses Feld aus. (Gast)


Lesenswert?

.dseg ist SRAM, also flüchtig. Du kannst du Flash und EEPROM 
programmieren.

von Bitte füllen Sie dieses Feld aus. (Gast)


Lesenswert?

Deine Daten müssen in den Flash, also .cseg und dann mittels lpm laden. 
Es hindert dich auch keiner daran diese per Programm in den RAM (also 
dseg) zu kopieren.

von Torsten O. (Gast)


Lesenswert?

Ah deswegen, okay - danke. Dann werde ich wahrscheinlich den EEPROM 
nutzen. So wie es aussieht kommen noch mehr statische Daten dazu, muss 
ich aber nochmal genauer überlegen.

lg Torsten

von Torsten O. (Gast)


Lesenswert?

G' Morgen,

ich habe doch noch eine Frage. Mit welchem Programm kann ich denn eine 
hex-EEPROM Datei bearbeiten? Bzw. wie bekomme ich die gewünschte 
Informationen in eine Hex-Datei rein damit ich sie hochladen kann?

lg Torsten

von Läubi .. (laeubi) Benutzerseite


Lesenswert?

Dafür gibt es das .eseg ... siehe auch AVR-Tutorial hier auf der Seite
http://www.mikrocontroller.net/articles/AVR-Tutorial:_Speicher

von Torsten O. (Gast)


Lesenswert?

Ich hatte das ".eseg" im Quelltext drin, aber es wurde keine hex-Datei 
erzeugt. Muss ich das extra einstellen irgendwo?

von spess53 (Gast)


Lesenswert?

Hi

>Ich hatte das ".eseg" im Quelltext drin, aber es wurde keine hex-Datei
>erzeugt. Muss ich das extra einstellen irgendwo?

Die Hex-Datei für den EEPRM heisst 'xyz.eep'.

MfG Spess

von Torsten O. (Gast)


Lesenswert?

Dass sie auf ".eep" endet ist mir bekannt, sie wird dennoch nicht 
erzeugt. Ist es egal an welcher Stelle :

// *******************************
//    Daten im Speicher ablegen
// *******************************

.eseg Data: .db 0x6f, 0x06, 0xab, 0x8f, 0xc6, 0xcd, 0xed, 0x07, 0xef, 
0xcf, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06

im Quelltext steht?


lg Torsten

von spess53 (Gast)


Lesenswert?

Hi

>Ist es egal an welcher Stelle : .....
>im Quelltext steht?

Ja.

MfG Spess

von Läubi .. (laeubi) Benutzerseite


Lesenswert?

Möglicherweise benötigst du wenigstens auch etwas Programmcode, hast 
nicht kompiliert, oder schaust im falschen Verzeichnis ;)

von Torsten O. (Gast)


Lesenswert?

Nein, aber ich habe das Problem gelöst. Man muss es im neuen AVR Studio 
eben doch aktivieren, ich glaube das war in der 4er Version nicht so.

lg Torsten

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.