Forum: Mikrocontroller und Digitale Elektronik ATmega128 --> ATmega2561


von ..,- (Gast)


Lesenswert?

Hallo,

mein ATmega128 ist irgendwie ganz schön voll geworden ...
sicherlich auch durch schlechtes Programmieren, aber das sei mal 
dahingestellt.
Da ich perspektivisch sowieso bisschen mehr Platz für Programmcode 
brauche, hab ich mir gedacht auf den ATmega2561 zu wechseln.

Ich hab da auch eine feine App-Note gefunden ...
http://www.atmel.com/dyn/resources/prod_documents/doc2581.pdf

Gibt es außer den Hinweisen in der Note noch weitere Sachen zu beachten?

Wenn ich den Satz ... "ATmega128 and ATmega1281/2561 are designed to be 
a pin and functionality compatible sub family." ... für bare Münze 
nehme, dann dürfte dem ja nichts im Wege stehen, oder?

von Jan W. (wek)


Lesenswert?

In one project we have migrated from 'M128 to 'M2561 with no hardware 
issues whatsoever. We still use the same board for two versions of the 
product.

Of course the firmware had to be modified.

von ..,- (Gast)


Lesenswert?

Thanks a lot Jan!

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


Lesenswert?

Die Appnote sollte es ganz gut zusammenfassen.

Falls ihr jemals in die Verlegenheit kommt, den Watchdog zu benutzen,
das hier ist geringfügig untertrieben:
1
If the operation voltage is 5V and the WDTON fuse is left unprogrammed, the WDT
2
will behave similar on both devices. [...]

Den neuen Watchdog kannst du nämlich erst dann wieder deaktivieren,
wenn du das WDRF-Bit in MCUCSR zuvor gelöscht hast.  Ansonsten, hat
der Watchdog einmal zugeschlagen, dann bekommst du künftig aller 15 ms
einen Reset, wenn du dich nicht darum kümmerst, WDRF zu löschen und
den Watchdog danach außer Betrieb zu nehmen.  Das hat uns damals beim
Übergang vom ATmega128 auf den ATmega1281 mal einen halben Tag Suche
gekostet.  (Ohne diese Firmware-Aktion kannst du dich auf den Kopf
stellen und mit den Beinen wackeln, auch ein chip erase ändert nichts,
denn die *RF-Bits in MCUCSR überleben jeglichen Reset.  Lediglich
ein power cycle würde noch helfen.)

Angenehm ist der bessere RC-Oszillator.  RS-232 mit RC-Oszillator geht
beim ATmega1281 selbst dann in der Regel noch, wenn man ihn statt mit
5 V (für die die Kalibrierung gemacht worden ist) nur mit 3 V betreibt.
Zu beachten ist der gänzlich andere RC-Oszillator-Aufbau: es gibt nur
noch einen (mit nominal 8 MHz) statt derer vier, dafür einen clock
prescaler, der initial auf 1:8 steht.  Den kann man per Fuse auf 1:1
setzen, aber man kann ihn auch in der Firmware umsetzen.

Beachte den eingeschränkten Taktbereich des ATmega256x (im Vergleich
zu ATmega128x) beim Betrieb unterhalb 2,7 V.  (War für den ATmega128
gar nicht spezifiziert, sollte insofern kein Problem sein.)

von ..,- (Gast)


Lesenswert?

Hab Dank Jörg =)

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.