Forum: Mikrocontroller und Digitale Elektronik AVR Studio


von Simon (Gast)


Lesenswert?

Hallo.
Ich habe eine Frage zum Mega644 und dem AVRStudio-Simulator:
Da die Register vom Counter/Timer1 Memory Mapped sind, benutze ich
folgenden code, um das entsprechende Register zu setzten:

ldi temp1, 0b00000011
sts TCCR1B, temp1

ich habe das Ganze im Simulator getestet und es werden die Register,
die ich versuche so zu modifizieren, nicht geändert !?
was mache ich falsch ?
Eigentlich müsste ich doch nach "sts TCCR1B, temp1" 0x03 im Register
stehen haben. Das Register ändert aber nicht den wert.

Mfg Simon

von crazy horse (Gast)


Lesenswert?

Hm, Mega644 kenne ich nicht, gibts den wirklich?

von Simon (Gast)


Lesenswert?

Ja, den gibts wirklich. Is fast wie der Mega64 nur n anderes Gehäuse und
ist schwer zu bekommen.
Nur funktioniert das mit dem Memory mapped irgendwie nicht.

von Stefan Kleinwort (Gast)


Lesenswert?

Wie ist TCCR1B definiert?

Bei den ATmegas muss Du bei memory-mapped einen Offset von 20hex
addieren. Die ersten 32 Adressen werden von den CPU-Registern belegt.

Gruß, Stefan

von Simon (Gast)


Angehängte Dateien:

Lesenswert?

ich hab mal einen teil auf der definitionsdatei vom avrstudio
ausgeschnitten. (siehe anhang)

.equ  TCCR1B  = 0x81  ; MEMORY MAPPED

hab jetzt durch den simulator festgestellt, dass das der wert (bei
meinem beispiel oben) korrekt in den ram geschrieben wird, aber am
register TCCR1B tut sich laut "I/O View" (das feld im simulator, wo
man die register etc. sehen kann) nichts.

MfG Simon

von Stefan Kleinwort (Gast)


Lesenswert?

Habe gerade im Manual geschaut, die 0x81 ist die korrekte
memory-mapped-Adresse.
Ist der Simulator korrekt auf den 644 eingestellt? Im Zweifelsfall
würde ich dem Simulator nicht blind vertrauen. Hast Du eine
Debug-Möglichkeit über jtag?

Viele Grüße, Stefan

von Klaus Bröntgen (Gast)


Lesenswert?

...und wenn du den "out"-befehl benutzt?

out TCCR1B, temp1

von mmerten (Gast)


Lesenswert?

Aktuelle Version AVR Studio 4.12 SP1 Build 462 im Einsatz ?
Ebenso sind im Simulator gerade für noch nicht in Massenproduktion
befindliche Controller einige Bugs drin, die aber zum grössten Teil
auch dokumentiert sind.

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.