diy:grove:grove
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
diy:grove:grove [2020/04/03 17:29] – [Télémetre Ultrasonic ranger] jbpuel | diy:grove:grove [2020/04/03 17:44] (Version actuelle) – jbpuel | ||
---|---|---|---|
Ligne 5: | Ligne 5: | ||
L' | L' | ||
- | Par ailleurs, un shield de base Grove doit être installé sur la carte Arduino. Ce shield met à disposition ces mêmes connecteurs, | + | Par ailleurs, un shield de base Grove doit être installé sur la carte Arduino. Ce shield met à disposition ces mêmes connecteurs, |
- | Chaque | + | Chaque |
Par exemple, le connecteur numérique D3 correspond aux pins digital 3 et digital 4.\\ | Par exemple, le connecteur numérique D3 correspond aux pins digital 3 et digital 4.\\ | ||
Certains composants n' | Certains composants n' | ||
Ligne 13: | Ligne 13: | ||
===== Utilisation d'un composant Grove ===== | ===== Utilisation d'un composant Grove ===== | ||
- | On trouve toutes les informations sur l' | + | On trouve toutes les informations sur l' |
- | + | ||
- | ===== Programmes Grove ===== | + | |
- | + | ||
- | Cette [[diy: | + | |
===== Tutoriels sur les composants ===== | ===== Tutoriels sur les composants ===== | ||
Ligne 29: | Ligne 25: | ||
[[diy: | [[diy: | ||
+ | ===== Programmes Grove ===== | ||
- | + | Cette [[diy:grove:programmes|page]] regroupe tous les programmes utilisant | |
- | + | ||
- | ==== Afficheur 4 chiffres ==== | + | |
- | + | ||
- | Dans la bibliothèque TM1637 fournie pour Grove, plusieurs fonctions d' | + | |
- | + | ||
- | === Avec la bibliothèque Grove (modifiée) === | + | |
- | + | ||
- | + | ||
- | <code C++> | + | |
- | #include " | + | |
- | + | ||
- | // Définition des pins pour TM1637 : connecter sur D6 du shield Grove | + | |
- | const int CLK = 6; | + | |
- | const int DIO = 7; | + | |
- | TM1637 afficheur(CLK, | + | |
- | + | ||
- | void setup() { | + | |
- | afficheur.init(); | + | |
- | afficheur.set(BRIGHT_TYPICAL); | + | |
- | } | + | |
- | + | ||
- | void loop() { | + | |
- | int potar = analogRead(A0); | + | |
- | int val = map(potar, | + | |
- | delay(150); | + | |
- | afficheur.displayNum(val); | + | |
- | } | + | |
- | </ | + | |
- | + | ||
- | === Avec la bibliothèque alternative === | + | |
- | + | ||
- | Bibliothèque de [[https:// | + | |
- | [[https:// | + | |
- | + | ||
- | <code C++> | + | |
- | #include < | + | |
- | + | ||
- | // Définition des pins pour TM1637 : connecter sur D6 du shield Grove | + | |
- | const int CLK = 6; | + | |
- | const int DIO = 7; | + | |
- | + | ||
- | TM1637Display afficheur(CLK, | + | |
- | + | ||
- | void setup() { | + | |
- | afficheur.clear(); | + | |
- | afficheur.setBrightness(2); | + | |
- | } | + | |
- | + | ||
- | void loop() { | + | |
- | int potar = analogRead(A0); | + | |
- | int val = map(potar, | + | |
- | delay(150); | + | |
- | afficheur.showNumberDec(val); | + | |
- | } | + | |
- | </ | + | |
- | + | ||
- | ==== Afficheur Barre de LED ==== | + | |
- | + | ||
- | Cet afficheur est composé de 10 barres (Leds), 8 vertes, 1 orange et 1 rouge.\\ | + | |
- | On peut les piloter individuellement ou bien considérer qu' | + | |
- | + | ||
- | Pour définir individuellement l' | + | |
- | C'est sous cette forme qu'est attendu le paramètre de la fonction setBits et le résultat renvoyé par la fonction getBits. | + | |
- | + | ||
- | Pour définir un niveau, c'est un entier entre 0 et 10.\\ | + | |
- | + | ||
- | + | ||
- | Le programme suivant utilise toutes les fonctions disponibles : | + | |
- | + | ||
- | <code C++> | + | |
- | #include < | + | |
- | + | ||
- | Grove_LED_Bar barre(7, 6, 1, LED_BAR_10); | + | |
- | // Orientation : 1 = Vert à Rouge, 0 = Rouge à Vert - Autre type : LED_CIRCULAR_24 | + | |
- | + | ||
- | unsigned int etat; | + | |
- | + | ||
- | void setup() { | + | |
- | barre.begin(); | + | |
- | barre.setGreenToRed(1); | + | |
- | } | + | |
- | + | ||
- | void loop() { | + | |
- | // Adressage individuel des Leds : setBits, getBits, setLed, toggleLed | + | |
- | barre.setBits(0x0); | + | |
- | delay(1000); | + | |
- | barre.setBits(0x3ff); | + | |
- | delay(1000); | + | |
- | barre.setBits(0b000000000000001); | + | |
- | delay(1000); | + | |
- | barre.setBits(0b000000000010100); | + | |
- | delay(1000); | + | |
- | etat = barre.getBits(); | + | |
- | etat <<= 1; // Décalage à gauche (Led 4 et 6) | + | |
- | barre.setBits(etat); | + | |
- | delay(1000); | + | |
- | etat >>= 2; // Décalage de 2 positions à droite (Led 2 et 4) | + | |
- | barre.setBits(etat); | + | |
- | delay(1000); | + | |
- | barre.setLed(1, | + | |
- | barre.setLed(2, | + | |
- | barre.toggleLed(7); | + | |
- | delay(2000); | + | |
- | // Adressage des Leds par niveaux | + | |
- | for (int i = 0; i <= 10; i++) { | + | |
- | barre.setLevel(i); | + | |
- | delay(500); | + | |
- | } | + | |
- | delay(1000); | + | |
- | } | + | |
- | </ | + | |
diy/grove/grove.1585934973.txt.gz · Dernière modification : de jbpuel