Hallo nautnätic,

Ich kann mich den gesagten nur anschliessen.

Der RasPi ist ein Klein-Computer, meistens unter Linux. Da ist die Hardware eigentlich gar nicht so wichtig.

Der Arduino, ist, je nach Ausführung, einfach ein µC, welcher schon mal aufgebaut ist.

Mit der Arduino-IDE hast du eine Umgebung, welche vieles vereinfacht und dich von der Hardware etwas abschirmt. Auf Arduinisch gibt es Funktionen welche dir erlauben einen Pin als Ein/Ausgang, mit oder ohne Pulups usw. zu betreiben, ohne zu wissen wie dies mit den I/O-Registern anzustellen ist. Zudem sind die I/O Pins durchnummeriert und diese Nummer hat nichts mit den Port-Bezeichnungen des µC zu tun.
Durch diese Hardwareabstrahierung haben fast alle Arduinos an Pin13 eine LED.

Du kannst aber einen normalen Compiler oder Assembler verwenden und den Arduino-Loader runter schmeissen. Dann hast du einfach einen nackten AtMega auf einem Board.

Bei der ARM-Variante geht dies im Prinzip auch. Allerdings sitzt da neben dem ARM-µC noch ein zweiter µC auf dem Board, welcher die Kommunikation mit dem PC abwickelt und den ARM programmiert. Man kann aber den ARM auch vom Arduino-Zeugs befreien und dann wie einen µC verwenden, der halt den Programmer mit auf den Board hat.

Um sich in die Verwendung eines nackten µCs einzuarbeiten, ist der Arduino sicher die beste Lösung für dich.

Vielleicht ist es am Einfachsten zuerst mit der Arduino-IDE anzufangen. Damit hast du dann schnell Erfolge und kannst schon eine Menge machen.
Der nächste Schritt wäre dann, der Arduino-Umgebung unter die Haube zu schauen und eigene Bibliotheken zu schreiben.

Mit der Zeit wirst du dann auch an die Grenzen der Arduino-Umgebung. Die Hardware-Abstrahierung durch die ganzen Wraper kostet doch einiges an Laufzeit und Speicherplatz. Steuert man die Hardware direkt an, kann man da noch etwas an Leistung rausholen.

MfG Peter(TOO)