Raspberry Pi : Utilisation des périphériques externes

Contrôler les GPIO de la Raspberry en C

Testez gratuitement nos 1270 formations

pendant 10 jours !

Tester maintenant Afficher tous les abonnements
Vous allez télécharger ou simplement vérifier que WiringPi vous permet d'accéder à l'état de toutes broches. Puis, vous allez apprendre à modifier l'état d'une broche depuis le shell.
05:28

Transcription

Dans cette vidéo, je vais vous montrer, que l'on peut programmer les GPIO de différentes façons. Pour cela, rendons-nous sur Internet. Et, je vous conseille d'aller faire un petit tour du côté de « Elinux.org/RPi_GPIO_Code_Samples ». En effet, là, vous allez avoir, vraiment, le panel complet de tous les langages qui sont supportés, avec, d'ailleurs, des compilateurs qui sont déjà inclus à l'intérieur de Noobs, donc de Rasbian, ici, et qui vous permettent, en fait, de ne pas faire d'installation supplémentaire de ces compilateurs, ainsi que des bibliothèques. Je pense notamment, à C, C#, Ruby, Perl et Python, ainsi que Java. Alors, le Shell, c'est normal, mais c'est du Shell qui est natif. Mais, là aussi, ce Shell natif, on vient y greffer encore, quelques fonctionnalités supplémentaires. Alors, nous, l'objectif, là, c'est de faire la démonstration au moins une fois, que l'on peut faire cela en C. Donc, nous allons nous rendre sur la page qui nous explique comment faire clignoter une LED, à raison de 0.5 secondes. Il faut savoir, en fait, que cette librairie « wiringPi.h », est due à ce monsieur. Donc, là aussi, si vous avez décidé de contrôler vos GPIO, exclusivement en C, vous allez voir, donc, chez « wiringPi.com ». Ce monsieur s'appelle Gordon, il est anglais. Et, à partir de là, vraiment, il actualise tous ces packages, vraiment, au fur et à mesure, et, c'est quelqu'un qui est très actif dans la communauté, à tel point que toutes ses librairies ont été inclues dans la version 1.7 de Noobs. Vous n'avez même plus besoin de faire ce genre de manipulations, parce qu'en fait, tout est déjà intégré à l'intérieur de Noobs. Donc voilà, en ce qui concerne le code. alors, moi, j'ai fait un copier-coller de ce code, et puis, je l'ai, un petit peu, remis à ma sauce. À partir de là, vous avez deux possibilités. Soit, vous utilisez un éditeur de texte, quelconque, alors là, vous voyez bien que, vous fassiez ça, dans un éditeur de texte, c'est l'équivalent de WordPad, dans Windows. Eh bien, ça vous indique strictement rien, les mots clés ne sont pas mis en relief, vous n'avez pas d'indentations, enfin, vous faites tout à la main, quoi. Bon, moi, je n'aime pas trop travailler comme cela, donc, je vais laisser tomber. Et, par contre, ce que je vous conseille de charger, c'est « gedit ». Pour cela, vous allez faire « sudo apt-get install gedit », chose que j'ai déjà faite. Et après, donc, « gedit » va se retrouver, ici, dans les accessoires, voilà, et vous allez pouvoir, en fait, éditer votre même programme, en choisissant le langage, alors vous voyez, ici, il y en a une pléthorique. Ici, vous choisissez le C et vous pouvez choisir l'indentation automatique, l'utilisation des espaces, etc. Et puis, vous voyez que, tout de suite, cela devient beaucoup plus sympathique, puisque vous êtes face à une interface qui met en relief les mots clés du C, qui viennent, par exemple, des librairies standards « stdio.h ». C'est pour cela que vous pouvez utiliser « printf ». Vous voyez « int, void, return, if, while », et j'en passe. Et puis après, vous avez des fonctions qui viennent directement de « wiringPi.h », qui vont vous permettre de contrôler les GPIO. Exemple, « pinMode », « digitalWrite » et « delay », ne sont, pas du tout, natifs de « stdioi.h ». Par contre, elles viennent d'une bibliothèque qui a été créée par Gordon, qui viennent de « wiringPi.h », Eh bien voilà, j'ai refait un copier-coller de ce programme et je l'ai, un tout petit peu, modifié. Et puis après, si vous voulez travailler, non plus avec la correspondance des broches, mais avec la correspondance des pins, du « BCM », pour le Broadcom, en fait, pour le processeur. Eh bien, vous pouvez le faire. Il a tellement bien travaillé ce monsieur, que si vous faites « gpio readall », qui est une commande Shell, qui a été intégrée, en fait, dans la périphérie du Shell. Gordon a passé son temps, en fait, à créer, pour la Raspberry Pi 2, ici, les pins de 1 à 40, qui sont les sorties GPIO. Leurs modes de fonctionnement, si par défaut, sont « in » ou « out ». En sachant que vous pouvez le changer, de façon dynamique. Et puis, leurs vrais noms. Ceux qui apparaissent sur la T-Copper, par exemple. Donc voilà, vous avez aussi, le petit nom utilisé par « wPI », si vous décidez d'utiliser la bibliothèque « wiringPi », Eh bien, vous voyez que, par exemple, si vous voulez la GPIO 21, eh bien, vous mettez 21. Et c'est exactement, ce que nous allons faire. Mais, qui correspond à la broche 5 du BCM, donc du processeur. À partir de là, voilà, vous avez tous les éléments en mains, pour pouvoir faire une programmation, non pas à l'aveugle, mais, vraiment, en ayant tous les éléments qui vous permettent de répondre à votre cahier des charges.

Raspberry Pi : Utilisation des périphériques externes

Communiquez avec le monde extérieur avec votre Raspberry Pi 2. Appréhendez l’utilisation des périphériques externes pris en charge au travers des protocoles I²C et SPI.

2h11 (24 vidéos)
Aucun commentaire n´est disponible actuellement
 
Logiciel :
Spécial abonnés
Date de parution :24 mars 2016

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !