Vous pouvez définitivement retirer la puce de l'arduino et l'utiliser sur une carte nue ou dans un autre projet. La puce de l'arduino uno et des anciennes versions de l'arduino duemilanove est un atmega328 (certaines versions ont un atmega168). Vous pouvez trouver la référence réelle de la puce sur le site Web d'atmel (impossible de publier des liens car pas assez de karma). La chose à prendre en compte est que les numéros de broches sont en fait assez différents de ceux de la carte Arduino. Voici une page avec le brochage réel, au cas où vous voudriez l'utiliser dans un autre projet ou lire des choses dans la fiche technique: http://www.arduino.cc/en/Hacking/PinMapping168 Quand vous retirez la puce, veillez à ne pas plier les pattes de la puce. J'utilise généralement un tournevis plat que j'insère sous la puce d'un côté et je remue soigneusement à mi-chemin. Ensuite, répétez de l'autre côté, et voilà, tirage net de la puce. Soyez prudent lorsque vous le rebranchez également, car parfois une jambe sort un peu de son emplacement de réception et se plie lorsque vous la repoussez.
Ce qui rend arduino "spécial" en tant que carte de développement, c'est l'environnement utilisé pour le programmer. Similaire au traitement (il utilise la même base de code), c'est une sorte de frontend simplifié au langage C ++. Le code que vous écrivez dans l'éditeur arduino reçoit des éléments ajoutés à l'avant et à l'arrière, et est compilé en utilisant avr-g ++ dans un exécutable fonctionnel. Il est également lié à ce qu'on appelle le "core", qui se trouve dans le dossier hardware / cores / arduino dans le dossier Arduino. Il initialise quelques éléments (comme les minuteries et l'interface série), et implémente les fonctions d'assistance que nous connaissons et aimons tous: digitalWrite, analogRead, etc ... Si vous voulez en savoir plus sur la programmation avr-gcc en général, il existe un beaucoup de tutoriels autour. Je peux recommander le site Web http://www.avrfreaks.net/, qui contient de nombreux liens et tutoriels.
Ce fichier binaire est ensuite téléchargé sur la puce de l'arduino en utilisant un programme appelé avrdude, qui est à nouveau appelé automatiquement par le traitement comme GUI. Ce programme téléchargera le fichier binaire via le port série, vers ce qu'on appelle un chargeur de démarrage sur l'atmega328. Un bootloader est un petit programme (généralement 2 ko ou 4 ko) qui est stocké en permanence sur la puce. Si vous le supprimez, que vous l'utilisez sur une autre carte et que vous le rebranchez, vous pourrez à nouveau utiliser le logiciel arduino. La puce arduino utilise une version légèrement modifiée du protocole stk500 et nécessite un correctif pour avrdude. Il faut un peu de volonté pour écraser le chargeur de démarrage, mais c'est quelque chose qui est tout à fait possible. Vous pouvez ensuite utiliser un programmeur standard pour reflasher l'arduino. Vous pouvez en fait utiliser un autre arduino comme programmeur flash: google pour arduino ISP