Après avoir reçu mon premier Arduino UNO, j’ai vite réalisé qu’il sera impossible d’utiliser un UNO pour chaque projet. Comme avec la famille de microcontrôleurs Microchip, je voulais un moyen facile de programme autonome circuits et de puces.
La recherche sur internet, il était évident que l’IDE Arduino peut répondre à tous mes besoins, et qu’aucun matériel supplémentaire ne sera nécessaire. L’Arduino UNO peut être programmé comme un programmateur en Circuit avec l’esquisse de l’exemple fourni ArduinoISP et l’ONU. Il n’y a donc pas besoin d’un programmeur séparé, ou en utilisant le logiciel AvrDude pour la programmation. Beaucoup d’exemples sur ce a été trouvé sur l’internet.
Après quelques tests, il était clair que la programmation de la AtMega328P n’était pas aussi facile que je pensais. Programmation tout dépendait de la puce AtMega328P. Elle contenait déjà le programme d’amorçage, ou la puce n’est vide ? Les coûts d’une puce avec bootloader est le double que d’une puce propre, donc mon premier lot de jetons était vide.
Quelle est la différence, vous pouvez demander. Eh bien, c’est tout au sujet de la sélection d’oscillateur AtMega328P.
Permet d’observer les différences
AtMega328P avec bootloader
Coût de cette puce est environ double de celle d’une puce vierge
Les registres de configuration de la puce est configuré pour utiliser un cristal externe comme horloge (16MHz)
Sans un oscillateur externe, on ne peut pas programmer la puce en utilisant l’Arduino en tant que programmeur
Une fois équipé d’un oscillateur externe, la puce peut être programmée à l’aide de l’Arduino en tant que programmeur
AtMega328P sans programme d’amorçage
Il en coûte la moitié d’une puce avec bootloader
Le registre de configuration de la puce est configuré pour utiliser l’horloge interne de 1MHz
Puce peut être programmé à l’aide de l’Arduino en tant que programmeur, mais le programme s’exécutera 16 fois plus lents que le code devrait, comme l’Arduino IDE compile le code s’exécute à 16MHz et pas de 1MHz
Puce peut être configuré pour 16MHz en téléchargeant le bootloader Arduino.