<?xml version="1.0"?>
<rss xmlns:php="http://php.net/xsl" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title>Arduino sans Arduino - Chicoree</title><link>http://www.chicoree.fr/w/Arduino_sans_Arduino</link><atom:link href="http://www.chicoree.fr/w/Arduino_sans_Arduino?action=toFeed" rel="self" type="application/rss+xml"/><description><![CDATA[J'ai eu récemment l'occasion d'assister aux Ateliers Arduino du pays de Lorient présentés par Xavier Hinault (http://www.mon-club-elec.fr). Le public y était étonnamment varié – et allait du retraité dynamique à la fillette de moins de 10 ans! Munis d'un ordinateur portable, d'une carte Arduino et d'un kit de composant, chacun était enthousiaste à l'idée de faire clignoter une LED ou buzzer un buzzeur. Bien entendu, tout le monde n'arrive pas avec la même facilité à mettre en œuvre les manipulations proposées, mais tous les participants arrivent à faire quelque-chose et le plaisir est au rendez-vous!
]]></description><item><title>1 Les clés du succès?</title><link>http://www.chicoree.fr/w/Arduino_sans_Arduino#Les_cl.C3.A9s_du_succ.C3.A8s.3F</link><description><![CDATA[<p>En observant la manière de faire des autres participants, je me dis que le succès de l'Arduino est la conséquence de plusieurs choix judicieux:
</p>]]></description></item><item><title>2 La cible</title><link>http://www.chicoree.fr/w/Arduino_sans_Arduino#La_cible</link><description><![CDATA[<p>La cible que je vais utiliser ici est un ATmega328P. Pourquoi? Parce que c'est un des micro-contrôleurs utilisés sur la carte Arduino. Ce qui m'assure de la compatibilité des bibliothèques avec ma cible. Pour les mêmes raisons, j'aurais pu prendre un ATmega168P, un ATmega8P ou d'autres encore. Il suffit qu'il y ait une carte Arduino supportée basée sur le même micro-contrôleur.
</p>]]></description></item><item><title>3 Connecter la machine de développement et la cible AVR</title><link>http://www.chicoree.fr/w/Arduino_sans_Arduino#Connecter_la_machine_de_d.C3.A9veloppement_et_la_cible_AVR</link><description><![CDATA[<p>Une fois que vous disposerez du matériel, vous devrez raccorder le PC de développement à votre cible en suivant les instructions spécifiques à votre programmateur. Pour les <i>petits</i> programmateurs bon marché, cela signifiera certainement relier le programmateur au PC par un câble USB, et le programmateur à la cible via l'interface SPI. Je vous renvoie sur l'article <a>Programmer son AVR</a> pour les détails.
</p>]]></description></item><item><title>4 Configurer l'IDE Arduino</title><link>http://www.chicoree.fr/w/Arduino_sans_Arduino#Configurer_l.27IDE_Arduino</link><description><![CDATA[<p>Voici maintenant le cœur de ce qui nous intéresse ici. Si vous avez téléchargé une version récente de l'IDE Arduino et que vous le lancez, vous trouverez dans le menu <i>Tools > Programmer</i> le moyen de sélectionner le programmateur que vous souhaitez utiliser. Vraisemblablement, pour les moins chers du marché il s'agira pour vous comme dans mon cas d'un programmateur <i>compatible USBasp</i>.
</p>]]></description></item><item><title>5 Charger le programme de test</title><link>http://www.chicoree.fr/w/Arduino_sans_Arduino#Charger_le_programme_de_test</link><description><![CDATA[<p>Comme d'habitude ♫, le programme de test qui va me servir sera l'exemple <i>blink</i> fournit avec la distribution standard d'Arduino (<i>File > Examples > Basics > Blink</i>). Du point de vue électronique, vous devrez connecter une DEL en série avec une résistance de quelques centaines d'ohms entre la masse et la broche 19 de l'ATmega328 (correspondant à la broche numérique Arduino 13 – <i>digital pin 13</i>). Avec un autre micro-contrôleur, vérifiez le numéro de la broche!
</p>]]></description></item><item><title>6 Ajuster l'IDE et le microcontrôleur…</title><link>http://www.chicoree.fr/w/Arduino_sans_Arduino#Ajuster_l.27IDE_et_le_microcontr.C3.B4leur.E2.80.A6</link><description><![CDATA[<p>Si, dans le cas de <i>blink</i>, c'est juste décevant de voir clignoter la LED aussi lentement, cette histoire d'horloge peut aussi causer de réels problèmes lorsque le micro-contrôleur doit respecter certains <i>timings</i>. Comme par exemple lors de la communication avec un système distant.
</p>]]></description></item><item><title>6.1 …en modifiant la fréquence d'horloge du microcontrôleur</title><link>http://www.chicoree.fr/w/Arduino_sans_Arduino#.E2.80.A6en_modifiant_la_fr.C3.A9quence_d.27horloge_du_microcontr.C3.B4leur</link><description><![CDATA[<p>Si, dans le cas de <i>blink</i>, c'est juste décevant de voir clignoter la LED aussi lentement, cette histoire d'horloge peut aussi causer de réels problèmes lorsque le micro-contrôleur doit respecter certains <i>timings</i>. Comme par exemple lors de la communication avec un système distant.
</p>]]></description></item><item><title>6.2 …en ajoutant une nouvelle définition de carte à l'IDE</title><link>http://www.chicoree.fr/w/Arduino_sans_Arduino#.E2.80.A6en_ajoutant_une_nouvelle_d.C3.A9finition_de_carte_.C3.A0_l.27IDE</link><description><![CDATA[<p>Une autre solution est d'ajouter une nouvelle définition de <i>carte</i> à l'environnement de développement Arduino. Celle-ci, sera pour l'essentiel une copie de celle d'une carte Arduino basée sur le même micro-contrôleur, mais précisera la fréquence d'horloge de la cible (dans mon cas, le réglage d'usine 1MHz) et le programmateur à utiliser (dans mon cas un clone USBasp). Pour cela, vous devrez modifier le fichier <i>/path/to/arduino/hardware/arduino/boards.txt</i> pour y ajouter la nouvelle configuration. :
</p>]]></description></item><item><title>6.3 …en combinant les deux solutions</title><link>http://www.chicoree.fr/w/Arduino_sans_Arduino#.E2.80.A6en_combinant_les_deux_solutions</link><description><![CDATA[<p>S'il est pratique de pouvoir programmer un micro-contrôleur possédant encore ses réglages d'usine, il faut avouer que la fréquence d'horloge de 1MHz est un peu <i>courte</i> – surtout que les micro-contrôleurs AVR peuvent faire nettement mieux. Dans la pratique, la meilleur solution sera sans doute de combiner ces deux techniques: tout d'abord en configurant votre cible avec la fréquence adaptée à <i>votre</i> application, puis en ajoutant la définition correspondante à l'IDE Arduino. Mais je pense que vous devriez être capable de vous en tirer seuls maintenant…
</p>]]></description></item><item><title>7 Le non-P problème</title><link>http://www.chicoree.fr/w/Arduino_sans_Arduino#Le_non-P_probl.C3.A8me</link><description><![CDATA[<p>Je dois avouer que l'écriture de cet article m'a pris plus de temps que je ne le pensais. En effet, au moment de faire les manipulations pour récupérer les copies d'écran, j'ai découvert que je n'avais plus à ma disposition que des ATmega328 et pas des ATmega328<b>P</b>. Ce sont deux versions différentes du même micro-contrôleur. Le <i>P</i> étant là pour <i>pico-power</i>, référence à la faible consommation de l'ATmega328P. D'après la note technique <a>AVR512</a> d'Atmel, il n'y a que peu de différences entre ces deux versions.
</p>]]></description></item></channel></rss>
