Forum: Mikrocontroller und Digitale Elektronik Atmega640 vs Atmega1280


von Tom (Gast)


Lesenswert?

Hallo Leute,

bevor ich mir gar die Kugel gebe wollte ich von euch einfach nur eine 
kleine Bestätigung:

Der Atmega1280 unterscheidet sich vom Atmega640 lediglich durch 
unterschiedliche flash-größe, bootloaderposition und device id. (?)

Mein Programm ist für den 640er zu klein geworden, auf dem 1280er 
funktionieren jetzt einfach die beiden ersten seriellen schnittstellen 
nicht mehr richtig... (Hören tun sie was, aber sprechen nur müll...) 
Die dritte funktioniert wunderbar.



Danke für Info!

von shit reader (Gast)


Lesenswert?

Wenn Du das Datenblatt mit der richtigen Bezeichnung gefunden hast, dann 
hast du auch schon die Antwort darauf.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Tom schrieb:
> Der Atmega1280 unterscheidet sich vom Atmega640 lediglich durch
> unterschiedliche flash-größe, bootloaderposition und device id. (?)

So ist es.

von holger (Gast)


Lesenswert?

>Mein Programm ist für den 640er zu klein geworden, auf dem 1280er
>funktionieren jetzt einfach die beiden ersten seriellen schnittstellen
>nicht mehr richtig... (Hören tun sie was, aber sprechen nur müll...)

War da nicht mal was das AVR-GCC auf Daten jenseits 64kB nur mit Tricks
zugreifen kann? Also das ganze pgm_read_.. Zeugs zum Beispiel.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

holger schrieb:
> Also das ganze pgm_read_.. Zeugs zum Beispiel.

Ja, das kann (weil Zeiger nur 16 bit groß sind) nur auf die ersten
64 KiB Flash zugreifen.  Sofern man aber nicht insgesamt mehr als
(knapp - wegen der Vektortabelle) 64 KiB an progmem-Daten hat, ist
das kein Thema, denn der normale Linkerscript platziert sie am
Anfang des Flashs und den ausführbaren Code dann dahinter.

von Tom M. (Gast)


Lesenswert?

Zugriff auf die "oberen" 64 KiB ist mittels pgm_read_xxx_far möglich. 
Die _far Funktionen möchten einen 32 bit Datentypen sehen statt des 16 
bittigen bei den "normalen" Funltionen.

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.