4 459 octets ajoutés
, 28 octobre 2013 à 18:36
{{Trinket-NAV}}
== Introduction ==
Une fois que vous avez fait fonctionner l'exemple de base Blink, vous pouvez vous attaquer à d'autres fonctions de la librairie Arduino.
Cette section contient plus d'exemples plus d'exemples de code et de liens vers des tutoriels - pour vous aider à démarrer!
'''pinMode() & digitalWrite() & digitalRead()'''
Vous pouvez utiliser pinMode() pour configurer une broche comme entrée ou sortie (valable sur toutes les broches digitales de numéro #0 à #4).
digitalWrite() fonctionne également avec pinMode(INPUT) pour activer la résistance pullUp interne sur une broche utilisée en sortie.
Dans cet exemple, la broche numérique #0 est configurée comme entrée, et sa résistance de pullup interne est activée. Ensuite, on vérifier si le potentiel est ramené ('tiré') à la masse à l'aide d'un bouton ou un interrupteur. Lorsque le bouton est pressé, le programme allumer la LED rouge :
<nowiki>/*
Bouton
Allumer une LED lorsqu'un bouton, connecté à la broche #0 et à la masse, est pressé
Cet exemple de code est dans le domaine public.
Pour charger le programme dans le Gemma ou Trinket :
1) Sélectionner la platine correcte dans le menu Tools->Board
2) Sélectionner USBtinyISP dans Tools->Programmer
3) Connecter Gemma/Trinket, s'assurer que la LED verte est allumée
4) Pour windows, installez les drivers USBtiny
5) Presser le bouton du Gemma/Trinket - vérifiez que vous voyez
la LED rouge clignoter. Cela signifie qu'il est prêt à recevoir des données
6) Cliquez le bouton de chargement dans les 10 secondes
*/
#define SWITCH 0
#define LED 1
// Fonction d'initialisation, qui s'exécute une fois au démarrage
void setup() {
// initialise la broche LED en tant que sortie.
pinMode(LED, OUTPUT);
// initialise la broche SWITCH en entée.
pinMode(SWITCH, INPUT);
// ...avec la résistance de pullup
digitalWrite(SWITCH, HIGH);
}
// Boucle principale (qui s'exécute encore et encore)
void loop() {
if (! digitalRead(SWITCH)) { // si le bouton est pressé
digitalWrite(LED, HIGH); // allume la LED
} else {
digitalWrite(LED, LOW); // autrement, l'éteindre
}
}</nowiki>
=== analogRead() ===
Vous pouvez lire une tension analogique de la broche digitale #2 (nommée '''A1'''), digitale #3 (nommée '''A3''') et digitale #4 (nommée '''A2''')
Par exemple, pour lire la tension analogique sur la broche #2, vous pouvez appeler '''analogRead(A1)'''
=== analogWrite() ===
Nous disposons aussi de quelques sorties PWM (Pulse With Modulation - Modulation de Largeur d'Impulsion) sur le Trinket, vous pouvez appeler analogWrite() sur la broche digitale #0, #1 et #4.
Téléchargez ce code pour faire pulser doucement la LED interne :
<nowiki>/*
Pulse
Fait pulser la LED interne pour démontrer la fonction analogWrite()
et signal PWM.
Cet exemple de code est dans le domaine public.
Pour charger votre Gemma ou Trinket:
1) Sélectionner la platine correcte dans le menu Tools->Board
2) Sélectionner USBtinyISP dans Tools->Programmer
3) Connecter Gemma/Trinket, s'assurer que la LED verte est allumée
4) Pour windows, installez les drivers USBtiny
5) Presser le bouton du Gemma/Trinket - vérifiez que vous voyez
la LED rouge clignoter. Cela signifie qu'il est prêt à recevoir des données
6) Cliquez le bouton de chargement dans les 10 secondes
*/
int led = 1; // Broche digitale #1 - branchée sur la LED rouge
// Fonction d'initialisation exécute une fois à chaque démarrage
void setup() {
// initialise la broche digitale en sortie.
pinMode(led, OUTPUT);
}
// Fonction principale du programme (qui se répète indéfiniment)void loop() {
for (int i=0; i<256; i++) {
analogWrite(led, i); // PWM la LED de 0 à 255 (max)
delay(5);
}
for (int i=255; i>=0; i--) {
analogWrite(led, i); // PWM la LED de 255 (max) à 0
delay(5);
}
}</nowiki>
== Plus... ===
Nous savons aussi que les bibliothèques suivantes fonctionnent :
* [https://github.com/adafruit/Adafruit_NeoPixel Adafruit NeoPixel] - contrôle jusqu'à ~150 Neopixels à l'aide d'un Trinket!
* SoftwareSerial - intégré dans la bibliothèque SoftSerial, peut (au moins) transmettre des données par une broche numérique.
* Comme nous le faisons, faites plus de tests et de vérifications!
{{Trinket-TRAILER}}