Verstehe diese Programm nicht! Bitte um Hilfe

Gast #49434
Lesenswert?
• ▲
▼
Guten Abend

Ich habe da ein Prob mit nem Source-File! Ich bin grad dabei es zu
studieren quasi zu sch<uen wie das Programm arbeitet.

pwm_wert:  ds 8  ;0-7


ldi r16,LOW(RAMEND)
out SPL,r16
ldi r16,HIGH(RAMEND)  ;Stack initislisiert
out SPH,r16
ldi r16,1
out TCCR0,r16         ;Timer arbeitet mit CPU-Takt
ldi r16,2
out TIMSK,r16         ;overflow INT freigeben
ser r16
out DDRA,r16        ;PortA alle Ausgang
ldi r16,16
sts pwm_wert+0,r16
ldi r16,32
sts pwm_wert+1,r16
ldi r16,64
sts pwm_wert+2,r16
ldi r16,128
sts pwm_wert+3,r16

So mein Assembler bringt Fehler! Ich schätze mal weil er mit pwm_wert+X
nix anfnangen kann. Mit der Zeile "pwm_wert:  ds 8  ;0-7
" kann ich auch nix anfangen was sie bewirken soll. Könnte mir jemand
eventuell das erklären? Ich habe nur die Infos das "sts pwm_wert+3,
R16" die Daten von R16 ins SRAM kopieren soll!
Gast #49436
Lesenswert?
• ▲
▼
@mmerten

Danke für die Erklärung, aber leider motzt der Assembler immer noch!

Seh ich das richtig wenn ich sage das der Autor von diesem File erst
einen Wert in R16 schreibt z.B. 16 und diesen dann auf den SRAM
Speicherzelle 1 kopiert. Dann schreibt er 32 in R16 und kopiert diesen
Wert dann auf Speicherzelle 2 des SRAM u.s.w.?? Wenn das richtig ist
könnte ich ja die Speicherzellen des SRAM im Programm einfach durch
Register R1-R4 ersetzen oder?

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