c't Projekte - c't-Bot und c't-Sim - Mailinglisten

c't-Bot und c't-Sim


[Voriger (Datum)] [Nächster (Datum)] [Voriger (Thread)] [Nächster (Thread)]
[Nach Datum][Nach Thread]

Re: [ct-bot] ATmega644 oder ATmega644P?

Absender: Timo Sandmann
Datum: Mi, 07.01.2009 14:10:23


Hi,

Am 07.01.2009 um 10:35 schrieb Fred Ammann:
Hallo

nur eine kleine Frage: es gibt den ATmega644 und auch den ATmega 644P.
Welchen von beiden passt am besten zum ct-bot?

der ATmega644 ist im Prinzip ein ATmega32 mit jeweils doppelt soviel Speicher (Flash, RAM und EEPROM). Für diesen Prozessor ist der ct-Bot- Code bereits angepasst, man muss nur in den Compilereinstellungen auf atmega644 umstellen. Der ATmega644P ist vollständig zum ATmega644 kompatibel, hat aber noch weitere Verbesserungen, im Wesentlichen eine zweite serielle Schnittstelle. Der ct-Bot-Code ist auch für diese Prozessorversion vorbereitet, ein paar Anpassungen wären aber wohl noch nötig. Bisher war der ATmega644P nur sehr schlecht erhältlich, daher ist er im Code noch nicht vorgesehen.

Kann ich mit dem 644 die Probleme mit der Image-Grösse vollständig umgehen?

Vermutlich ja, der ATmega644 hat 64 KB Flash-Speicher. Solange die Bot- Software also kleiner als 64 KB ist, läuft sie auf einem ATmega644(P). Entscheidend ist hier das, was das Programm avr-size ausgibt, nicht die Dateigröße der ct-Bot.hex-Datei (diese kann deutlich größer sein).

Wenn du also nur mehr Speicher brauchst, bist du mit dem ATmega644 auf der sicheren Seiten, der steckt zurzeit auch in meinem Bot. Falls du z.B. für Hardware-Erweiterungen auch eine zweite serielle Schnittstelle gebrauchen kannst, bietet sich die P-Version an, es sind dann aber kleine Änderungen am Code nötig (bei Interesse gibt's gerne weitere Details). Zu beachten ist auch, dass die zweite serielle Schnittstelle nur nutzbar sein wird, wenn man ein oder zwei Pinbelegungen tauscht (siehe Datenblatt).

ATmega644 und ATmega644P lassen sich übrigens bis 20 MHz takten, dafür müsste man dann allerdings den Quarz tauschen. Ich weiß nicht, ob das schon mal jemand ausprobiert hat, der Code liefe dann 25 % schneller.

Gruß,
Timo