Sanguino mit Atmega324 (Solved)

Ich habe mir 3 Sanguinos gebaut.

Der erste hat einen Atmega324, der zweite einen Atmega644 und der dritte einen Atmega1284.

Bei den Atmega644 und Atmega1284 Versionen blinkt die im Sanguino eingebaute Led wenn
const int ledPin =  0;

bei der Atmega324 Version jedoch wenn
const int ledPin =  8;

Der Atemga644 und der Atmega1284 haben einem BTArduino Bootloader und der Atmega324 einen Platino Bootloader.

Kann mir jemand erklären warum die Led beim einen Atmega bei ledPin = 0 und beim anderen bei
ledPin = 8 blinkt ?

Hast Du Dir die Schaltpläne angeschaut?
Sind die LED am gleichen Anschluß angeschlossen?
grüße Uwe

Ich benutze für den Atmega324, Atmega644 und Atmega1284 ein und dieselbe Sanguino Platine.

Sind ja angeblich alle 3 pinkompatibel !

Die mikrocontrollerinterne Zuweisung der I/Os zu Pins und Ports ist ganz anders als beim Arduino, wo sämtliche I/Os aufsteigend nummeriert ssind. Dieses "Umbiegen" auf laufende Nummern wird innerhalb der entsprechenden Core-dateien für jeden Mikrocontroller gemacht, der in der Arduino-IDE als Arduino, Freeduino, Sanguino etc. programmiert werden soll. Von daher wundert es mich nicht, dass hier trotz Pinkompatibilität unterschiedliche Pinnummern vergeben worden sind.

@sth77: Danke für den Hinweis !

Für den Fall das sich mal jemand einen Sanguino mit einem Atmega324 bauen will, unter Benutzung des Platino Bootloaders, hier die Unterschiede in der Pinbelegung:

Sanguino:

Platino: