I. Matériel nécessaire▲
|
|
|
|
|
|
Vous pouvez acheter ces composants séparément ou regroupés dans un kit éducatif (comme le CamJam Edukit #1).
II. Étape 1 : connecter la LED▲
Il est préférable de débrancher le Pi quand on câble un circuit. La plaquette de câblage présente des colonnes numérotées, chacune comportant une série de cinq trous adjacents et reliés électriquement entre eux. Enfichez les pattes de votre LED sur deux colonnes numérotées adjacentes, comme montré sur le schéma ci-dessus. Notez que la patte la plus courte de la LED est la borne négative ; sur la colonne de celle-ci, insérez la patte d'une résistance électrique, l'autre patte étant insérée sur la ligne bleue ou noire marquée avec un signe « - » (une ligne de masse). Utilisez un fil mâle/femelle pour relier un autre trou de la ligne de masse à une broche GND du Pi. Finalement, utilisez un autre fil pour connecter un trou situé sur la même colonne que la patte la plus longue de la LED (borne positive) à la broche GPIO 17.
III. Étape 2 : configurer les broches du port GPIO▲
Avant d'utiliser le port GPIO dans Scratch, il faut démarrer le serveur GPIO. On pourrait le faire directement depuis le menu Édition, mais nous allons plutôt l'activer depuis le script. Sous le bloc quand (drapeau vert) pressé, ajoutez un bloc de contrôle envoyer à tous, cliquez sur sa petite flèche, sélectionnez nouveau/edit et saisissez le message gpioserveron. Nous devons aussi configurer la broche GPIO 17 en sortie (pour allumer la LED), donc ajoutez un nouveau bloc envoyer à tous et modifiez-le avec le message config17out.
Note de traduction : par rapport à l'article original qui est en anglais, les scripts présentés ici sont obtenus pour une utilisation de Scratch en langue française (icône ).
IV. Étape 3 : allumer la LED▲
Nous allons maintenant tester notre circuit en utilisant une boucle infinie pour faire clignoter la LED. Ajoutez un bloc répéter indéfiniment à la suite du script. Insérez à l'intérieur de la boucle les blocs suivants : envoyer à tous gpio17on, attendre 1 secondes, envoyer à tous gpio17off, et attendre 1 secondes. Maintenant, exécutez votre script et vous devriez voir votre LED clignoter indéfiniment toutes les secondes.
V. Étape 4 : connecter le bouton-poussoir▲
Nous pouvons contrôler la LED à l'aide d'un bouton-poussoir. Une fois encore, nous supposons que vous effectuez le câblage avec le Pi hors tension. Rajoutez le bouton-poussoir sur la plaquette de câblage, en lui faisant chevaucher la rainure centrale, comme représenté sur le schéma de câblageÉtape 1 : connecter la LED. Reliez une broche du bouton en plantant l'extrémité mâle d'un fil mâle/femelle dans un trou de sa colonne, à la broche GPIO 21 du Pi. Avec un fil mâle/mâle, reliez l'autre broche du bouton (du même côté de la rainure centrale) à la ligne de masse commune à la LED.
VI. Étape 5 : configurer le bouton-poussoir▲
Avant que Scratch puisse réagir à l'appui sur votre nouveau bouton, il faut lui dire sur quelle broche est relié le bouton. Détachez la boucle répéter indéfiniment du script précédent de clignotement de la LED, et faites glisser le bloc en dehors de l'aire d'écriture des scripts pour le supprimer. Ajoutez un nouveau bloc envoyer à tous complété avec le message config21in pour configurer la broche GPIO 21 en entrée, voir le script ci-dessous.
Exécutez le script, puis stoppez-le. Maintenant, cliquez sur la catégorie capteurs dans le panneau en haut à gauche. Trouvez le bloc valeur du capteur et complétez avec le message gpio21. Dans la palette des blocs, cochez la case du bloc pour que la valeur de l'entrée du capteur s'affiche sur la scène : quand le bouton est pressé, l'entrée devrait basculer de 1 à 0 (cf. NDLR(1)).
VII. Étape 6 : agir sur la LED▲
Maintenant que le bouton fonctionne, il est temps d'agir sur la LED. Ajoutez le script ci-dessous :
Puis insérez-le à la suite de votre script d'initialisation du serveur GPIO :
Une fois de plus, nous utilisons un bloc répéter indéfiniment. À l'intérieur de la boucle, nous ajoutons un bloc si…sinon. Dans le champ si, on place un bloc opérateur « = » ; dans le champ à gauche de l'opérateur, on ajoute la valeur du capteur gpio21, puis le chiffre 1 dans le champ à droite de l'opérateur. Juste en dessous, on insère un bloc envoyer à tous gpio17off. De cette façon, lorsque le bouton n'est pas pressé, la LED sera éteinte. Sous le sinon, on insère le bloc envoyer à tous gpio17on, pour que la LED s'allume lorsque le bouton est pressé. Lancez l'exécution du script final, pressez le bouton, et miracle… la LED s'allume !
VIII. Notes de la Rédaction de Developpez.com▲
Cet article est une traduction extraite du numéro spécial du magazine The MagPi : Learn to code with Scratch.
Nous remercions les membres de la Rédaction de Developpez pour le travail de traduction et de relecture qu'ils ont effectué, en particulier :
Merci également à jacques_jean pour sa relecture orthographique.