Problem mit MightyCore und AtMega 1284P-AU (TQFP 44)

Guten Abend,

ich weiß wieder nicht weiter. Anscheinend ist in der MightyCore (von GitHub)ein Bug, d.h. DIL40 geht / SMD nicht. Das Pinmapping ist auch unterschiedlich - die Pins sind unterschiedlich den jeweiligen Port zugeordnet. Zum Beispiel DIL40 : Pin21 - PD7 und bei SMD ist Pin16 - PD7. Meine Frage : wie passe ich die "pins_arduino.h" entsprechend an.

Konkret gehts um die I2C Pins - die sollen auf PC0 / PC1 liegen. Bei TQFP 44 ist das Pin 19/20 bei DIL 40 aber Pin 22/23.

Aufgefallen ist mir der eventuelle Bug erst, nach dem mein I2c Scanner nichts gefunden hat. Auf einen "normalen" Arduino (Nano/Mini/etc.) läuft das alles ohne Probeleme. Oder mache ich was falsch - eine Idee ?

Danke für die Unterstützung

Die Pin Nummern der Arduino-IDE (0 .. ) haben nichts mit der Pin-Nummer am Gehäuse (1..40) zu tun. Die Gehäuse-Pins für GND, Vcc sind keine Signal-Pins.

Die pins_arduino.h mappt die Arduino- Nummern auf die Ports (A ..) und deren Bits. Und ist daher unabhängig vom Gehäuse.

Ich habe TQFP mit 44 Pins nicht DIL 40. Bitte meinen Beitrag richtig lesen - danke. Das Mapping kann nicht stimmen - da mehr Pins / andere Zuordnung als wie bei DIL 40.

Hallo,

es gibt keinen offiziellen Arduino mit einem Mega1284. Das Mapping im MightyCore ist für das DIL-Gehäuse willkürlich so gewählt, damit es möglichst weit mit den üblichen Arduino mit Mega328/Mega2560 übereinstimmt. Die Bilder für die bekannten Zuordnungen sind ja auf der github Seite, leg das daneben und Du weißt, wo Du was anlöten mußt.

Gruß aus Berlin Michael

maik_s: Oder mache ich was falsch - eine Idee ?

Entweder Deine Erwartung oder Deine Fehlerbeschreibung ist falsch.

maik_s: Ich habe TQFP mit 44 Pins nicht DIL 40.

Wenn ich die Pinouts anschaue, sehe ich mehr GND- und VCC-Pins am TQFP, aber keine speziellen Funktionalitäten.

Port C Bit 0 = PC0 = ArduinoIDE D16 = TQFP Pin 19 = DIL40 Pin 22

Laß doch mal D16 mit digitalWrite(16, status); blinken. Was passiert?

Ich habe nach einigen Suchen im Web eine ähnliches Board gefunden welches in etwa den entspricht, was ich selbst entworfen habe (meines hat aber keine USB Schnittstelle).

https://aptinex.com/product/lakduino-dwee-1284-pro-mini/

Mit den dort verlinkten Boardmanager kann ich alle Ports (und auch wieder I2C) mit meinen Board nutzen. ich hatte noch einige AtMega1284P - AU in SMD gehabt und wollte diese gerne für eine "aufgebohrte" Boardversion mit mehr Speicher unter Arduino nutzen.

Danke nochmal an alle - ich hoffe ich konnte mit den Infos auch etwas zurück geben.