atmega 128 Flash Problem

Gast #2069619
Lesenswert?
• ▲
▼
Hallo Leute,

Ich habe schon seit einiger Zeit einen Atmega128, auf nem selbst 
erstellten Testboard. Klappt auch alles einwandfrei.

Aber ich habe ein Problem. Der Atmega 128 hat ja 128kB flash.
aber ich verstehe nicht wie der µC den verwaltet, Der Program-Counter 
(PC)
ist ja 16 bit lang/groß

also maximaler Wert vom PC irgendwas mit 65000 (sorry, hab keine Lust 
2^16 zu rechnen) Der Flash vom Atmega128 ist aber viel größer als diese 
65000-und-irgenwas Bytes. wie soll der µC auf die Speicherzellen 
oberhalb der "Maximal-Grenze" von PC zugreifen?

Selbes Problem mit LPM.
#2069646
Lesenswert?
• ▲
▼
M. H. schrieb:
> Aber ich habe ein Problem. Der Atmega 128 hat ja 128kB flash.
> aber ich verstehe nicht wie der µC den verwaltet, Der Program-Counter
> (PC)
> ist ja 16 bit lang/groß

Der Programmspeicher ist in Worten organisiert, nicht in Bytes. 
Dementsprechend enthält der Program-Counter auch eine Wort-Adresse. Er 
kann also 65536 Worte (zu je 16 Bit) adressieren.

> Selbes Problem mit LPM.

Siehe im Datenblatt das Register PAMPZ und den Befehl ELPM.

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.