Variablenadresse im SRAM angeben?

Gast #1430035
Lesenswert?
• ▲
▼
Sers.

Daten im SRAM zu speichern ist ja kein Problem, aber wie gebe ich die 
Adresse an?
Im Moment habe ich es so gemacht:
1
.dseg
2
variable1: .BYTE 1
3
variable2: .BYTE 1
4

5
.cseg
6
STS variable, r16
7
LDS variable, r16
8
....

Wenn ich das ganze debugge, sehe ich im AVR Studio, dass die 
Variablendaten irgendwo im SRAM abgelegt werden.
Ich möchte aber später über Pointer darauf zugreifen und dabei den 
Pointer erhöhen/erniedrigen können und so von Zelle zu Zelle springen. 
Im Moment ist das nicht möglich, da die Daten auseinander liegen.

Kann ich irgendwie angeben variable: .BYTE 1 Adresse XY ? Oder sowas in 
der Art?
#1430053
Lesenswert?
• ▲
▼
Foreigner schrieb:
> Das Tutorial habe ich schon gelesen, aber das was ich suchte war
> Folgendes:
>
>
1
.dseg
2
> ;SRAM Startadresse oder beliebige andere Adresse
3
> .ORG SRAM_START
4
> var: .Byte 1

Verstehe jetzt den Zusammenhang nicht.
Alle im Progamm vorgefundenen DSEG werden sowieso in der Reihenfolge im 
SRAM abgelegt in der sie im Programm auftauchen. Der .ORG ist zwar nett 
aber eigentlich so nicht nötig.

Und wenn du über den Z-Pointer zugreifst hast du ja im Regelfall so 
etwas wie eine Tabelle. Gib einfach beim .BYTE an, wieviele Bytes du 
brauchst und der Assembler reserviert dir die entsprechende Anzahl in 
garantiert aufeinanderfolgenden Zellen :-)

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.