Hallo, ich möchte ein kleines Projekt mit Arduin9 für den Atmega 2560 erstellen, aber nicht mit dem Arduino Mega. Bei der Platine werden Ports verwendet, die auf der Arduino Mega Platine gar nicht rausgeführt sind wie PD5. Dementsprechend gibt es dafür keinen definierten Pin in Arduino. Ich möchte aber ein Display mit u8g2 ansteuern, das Pins verwendet, die in Arduino nicht definiert sind. u8g2 erwartet aber leider Arduino Pins und scheint keine normalen Portdefinitionen zu akzeptieren. Kann ich die ungenutzten Pins irgendwie nutzen?
Warum wählst Du für Dein Sketch dann nicht den richtigen Prozessor?
Markus B. schrieb: > Kann ich die ungenutzten Pins irgendwie nutzen? Ja! In dem du eine angepasste Board Definition verwendest! Du könntest eine eigene hinzubauen, oder eine schon vorhandene verwenden Die Anpassungen finden sich in der betreffenden boards.txt/boards.local.txt und im variants Ordner
Beitrag #7305350 wurde von einem Moderator gelöscht.
Beitrag #7305351 wurde von einem Moderator gelöscht.
Jürgen schrieb: > Warum wählst Du für Dein Sketch dann nicht den richtigen Prozessor? Arduino nutzt von Hause aus nicht alle Pins in seiner Nummerierung, da sie nicht auf dem Board herausgeführt sind. Evtl ist https://github.com/MCUdude/MegaCore das richtige...
Ich verwende den Controller selbst als "Board", aber ich finde nirgendwo eine Zuweisung, welcher AVR Port welche Arduino Pinnummer hat. Ich finde nur die vom Arduino Mega und da gibt es eben kein PD4, PD5 oder PD6. Also wo finde ich die Pinnezeichnungen für die Controller direkt?
Markus B. schrieb: > Ich finde nur die vom Arduino Mega und da gibt es eben kein PD4, PD5 > oder PD6. Loht sich der Aufwand WIKLICH? Der Mega hat TONNENWEISE IOs, warum zur Hölle willst du ausgerechnet die nehmen, die nicht verdrahtet sind?
Markus B. schrieb: > Ich finde nur die vom Arduino Mega und da gibt es eben kein PD4, PD5 > oder PD6. Verwenden kannst du sie trotzdem! Unter den PD4, PD5 usw. Bezeichnern.... Nur halt nicht mit digitalWrite() usw. Wie schon gesagt: Deine Boarddefinition erweitern, oder eine schon erweiterte nutzen. Dann gehts auch mit digitalWrite() usw. Das sind 3 Möglichkeiten, sich dir die schönste aus.
Falk B. schrieb: > Loht sich der Aufwand WIKLICH? Der Mega hat TONNENWEISE IOs, warum zur > Hölle willst du ausgerechnet die nehmen, die nicht verdrahtet sind? Die Hardware existiert schon. Bei der Entwicklung wurde halt keine Rücksicht auf die Befindlichkeiten von Arduino Boards genommen. Ich hab vergessen zu erwähnen, dass ich PlatformIO verwende, aber mit dem Arduino Framework. Ich habe wie gesagt als Board den Controller selbst ausgewählt, nicht das Mega Board. Gibt es für die Controller direkt keine Pindefinitionen?
Jürgen schrieb: > Warum wählst Du für Dein Sketch dann nicht den richtigen Prozessor? Weil in der Arduino IDE der Prozessor über die Bordverwaltung gewählt wird. Wenn im offiziellen Mea-Bord, also das welches man fix und fertig kaufen kann, die entsprechenden Ports nicht herausgeführt sind, dann gibt es diese Ports eben erst mal nicht. Wenn man diese benutzen möchte muß man die Borddatei anpassen oder, besser sich seine Boarddatei erstellen. EAF hat bereits die passenden Hinweise gegeben.
Ich habe in den Tiefen von PlatformIO die Antwort gefunden. Es gibt für die 64 Pin und 100 Pin Controller jeweils eine pins_arduino.h, in der alle Ports definiert werden. Ich habe es noch nicht getestet, aber ich habe zumindest einen Ansatz, den ich weiter verfolgen kann.
> einen Ansatz
Du haettest die ungenutzten Pins auch abzwicken koennen.
Das haette das Problem global geloest.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.