Modifications

Sauter à la navigation Sauter à la recherche
2 618 octets ajoutés ,  20 septembre 2015 à 10:55
aucun résumé de modification
Ligne 1 : Ligne 1 :  
{{ARDX-NAV}}
 
{{ARDX-NAV}}
   −
{{traduction}}
+
== Ce que nous faisons ==
 
  −
== Ce que faisons nous ==
      
'''.: 8 Leds de plus :.'''
 
'''.: 8 Leds de plus :.'''
Ligne 54 : Ligne 52 :  
   |label=LED (ou DEL)
 
   |label=LED (ou DEL)
 
   |label2=x8
 
   |label2=x8
   |img=ARDX-LED.png
+
   |img=ARDX-LED-red.png
 
   |pl=66
 
   |pl=66
 
}}
 
}}
Ligne 72 : Ligne 70 :     
{{ARDX-composant-end}}
 
{{ARDX-composant-end}}
 +
Tous ces éléments sont disponibles dans [http://shop.mchobby.be/product.php?id_product=11 le Kit Ardx proposé sur shop.mchobby.be].
    
=== Schéma ===
 
=== Schéma ===
Ligne 141 : Ligne 140 :     
== Faire encore mieux ==
 
== Faire encore mieux ==
=== zzz 1 ===
+
=== Le faire à la dure! ===
zzzz
+
Un Arduino est capable de faire des choses assez complexes très facilement, envoyer des données bit par bit fait partie de ses possibilités.
 +
 
 +
Cependant, une des particularités intéressantes d'Arduino est que vous pouvez implémenter vos projets de façon simple ou compliquée en fonction de vos souhaits.
 +
 
 +
Essayons donc un exemple dans cette optique. Dans la fonction loop, remplacez la ligne de code {{fname|updateLEDs(i);}} par {{fname|updateLEDsLong(i);}}
 +
 
 +
Chargez le programme et notez que rien n'a changé. Si vous regardez au code, vous pouvez voir qu'il communique un bit à la fois au circuit intégré ([http://ardx.org/SPI ardx.org/SPI] pour plus de détails) (''en anglais'')
 +
 
 +
=== Contrôler les LEDs individuellement ===
 +
Il est temps de contrôler les LEDs d'une façon identique à celle employée dans le montage CIRC02.
 +
 
 +
Les états des 8 LEDs sont alors stockés dans un octet (une valeur en 8 bits). Pour plus de détails sur son fonctionnement, voyez [http://ardx.org/BINA ardx.org/BINA].
 +
 
 +
Arduino est très bon pour manipuler les bits et il dispose d'un ensemble complet d'opérateurs bien utiles pour ces tâches.
 +
 
 +
Pour plus de détails sur les mathématiques binaires ( http://ardx.org/BITW ).
 +
 
 +
{{underline|Notre implémentation:}}
 +
 
 +
Remplacer le code de la fonction {{fname|loop()}} par
 +
 
 +
<nowiki>int delayTime = 100; //nbre de ms à attendre
 +
// entre deux mise-à-jour des LEDs
 +
for(int i = 0; i < 8; i++){
 +
    changeLED(i,ON);
 +
    delay(delayTime);
 +
}
 +
 
 +
for(int i = 0; i < 8; i++){
 +
  changeLED(i,OFF);
 +
  delay(delayTime);
 +
}</nowiki>
 +
 
 +
Chargez le code et les LEDs s'allument les unes après les autres puis s'éteignent de façon similaire.
 +
 
 +
Jetez un oeil sur le code et Wikipedia pour comprendre comment cela fonctionne, ou envoyez-nous un e-mail si vous avez des questions (''anglais'').
 +
 
 +
=== Plus d'animations ===
 +
Maintenant les choses deviennent plus intéressantes. Si vous regardez au code du circuit CIRC02 (Jeu à 8 LEDs), vous pouvez voir que nous changeons les LEDs en utilisant {{fname|digitalWrite(led, state)}} qui a le même format que la routine {{fname|changeLED(led, state)}} que nous avons écrit.
 +
 
 +
Vous pouvez utiliser l'animation écrite lors de CIRC02 en copiant le code dans ce sketch et en changeant tous les {{fname|digitalWrite()}} par {{fname|changeLED()}} .
 +
 
 +
Puissant non?
 +
 
 +
<small>(Vous aurez aussi besoin de changer quelques autres petites choses, consultez les erreurs de compilation pour savoir ce qu'il faut adapter).</small>
    
== Plus, plus et encore plus ==
 
== Plus, plus et encore plus ==
29 837

modifications

Menu de navigation