Ich habe mir vor einem Jahr oder länger einen Arduino gekauft. Das vereinfachte C fand ich nett. Jetzt habe ich das Gerät wieder rausgekramt und möchte gern richtiges C darauf nutzen. Könnt ihr mir bitte einen Link zu einer Anleitung schicken wie das gemacht wird. Benötige ich irgendwelche Werkzeuge außer die Verbindung per USB Kabel mit dem Computer?
Dort findest Du alle Informationen die Du brauchst.
Als ISP Programmer (damit die Software in den Controller kommt), kannst Du den USBasp USBasp - USB programmer for Atmel AVR controllers - fischl.de verwenden.
Ich nutze den, ist einfach zu bedienen, kann angepasst werden, 3,3 VDC und 5 VDC und vieles mehr.
Mit WinAVR kannst Du dann die Programme schreiben und mit dem ISP Programmer auf den Controller schreiben. Wenn Du Dir einen eigenen Bootloader schreibst (oder einen aus dem WWW) verwendest kannst Du den Controller auf wieder über die Serielle Schnittstelle programmieren.
Ich kann dir den hier empfehlen. http://shop.myavr.de/Programmer%20und%20Bridges/mySmartUSB%20light.htm?sp=article.sp.php&artID=200006
Nutze den auch schon rege um Attinys zu bespielen.
Als C++ Programm habe ich hier schonmal mit AVR Studio5 probiert. Mit dem 6er wirst du auch freude habe(ist übrigens kostenlos und beim 6er ist ein C++ Compiler schon drin).
Den mySmartUSBlight kannst du auch in das AVR Studio einbinden.
Nur um das noch klarzustellen: Du kannst auch mit der Arduino-Umgebung Dein "richtiges" C programmieren. Die IDE bietet nicht ein "vereinfachtes" C, sondern ganz einfach C mit ein paar netten Libraries, die das Leben vereinfachen und die verschiedene Hardware etwas abstrahieren. Dazu macht die IDE noch einen Wrapper um den Sketch, der am Anfang die setup()-Routine und danach in einer Endlos-Schleife die Loop()-Routine. Was Du darin machst, ist aber völlig Dir überlassen, direkte Register-Manipulation ist genauso einfach wie in WinAVR, aber der Uploader der fertigen Programme ist dank des Arduino-Bootloaders viel komfortabler. Nachteile hast Du eigentlich nur durch die leicht (ca. 2kB) verminderte Programmspeicher-Kapazität, die für den Bootloader gebraucht wird.
und unter umständen ist noch die ladezeit des bootloaders bei einem reset von nachteil, allerdings kannst du auch per arduino IDE und mit einem ISP ohne bootloader programmieren