Pi-WiringPi-GPIO-Extension
Les extensions WiringPi
WiringPi supporte un certain nombre d'extensions. Ces extensions permettent à votre programme d'utiliser du matériel complémentaire de façon comparable à celle vous permettant d'utiliser le GPIO de la carte Raspberry-Pi.
Par exemple, vous pourriez avoir un MCP23017 (un circuit intégré GPIO expander en I2C, comme celui de la carte Quick2Wire) et étendre wiringPi avec ce composant.
Mise en oeuvre
Pour utiliser votre MCP23017 avec votre Raspberry-Pi, vous deviez bien entendu le brancher sur le bus I2C (ou utiliser le module Quick2Wire correspondant).
Vous avez juste besoin de connaître l'adresse du composant sur le bus I2C (habituellement 0×20) et l'intégrer ensuite au programme comme ceci:
#include <wiringPi.h> #include <mcp23017.h>
et appeller:
wpi23017Setup (120, 0x20) ;
A partir de maintenant, vous pouvez utiliser les fonctions standards pinMode(), digitalWrite() et digitalRead() comme précédemment, mais utilisez 120 comme valeur de base pour le périphérique. Si vous avez 16 LEDs connectées sur le MCP23017, vous pouvez toutes les allumer à l'aide du code suivant:
for (i = 0 ; i < 16 ; ++i) { // Activer la broche I du MCP23017 en sortie ("output" en anglais) pinMode (120 + i, OUTPUT) ; // Placer l'état de la broche I au niveau logique haut ("HIGH" en anglais) digitalWrite (120 + i, HIGH) ; }
Et ainsi de suite.
Il existe un certain nombre de systèmes d'extension GPIO basé sur différent circuit-intégré. WiringPi en prends de plus en plus en charge. Si vous avez un besoin spécifique, vous pouvez écrire votre propre extension.
Broches réservée et limite
Les broches de 0 à 63 sont réservées pour le GPIO du Raspberry Pi mais il n'y a presque pas de limite à l'ajout de broches et gamme de valeur que vous pouvez utiliser pour votre propre matériel. La seule limite est celle fixée par la valeur que peut contenir un entier 32 bit signé (signed 32-bit integer, soit 65535)
Source: WiringPi.com. WiringPi est une libraire sous licence GPL écrite par Gordon Henderson. Crédit: wiringpi.com
Traduit de l'anglais par Meurisse D. pour MCHobby.be
Traduit avec l'accord de Gordon Henderson, créateur de wiringPi - Translated with authorization of Gordon Henderson, creator of wiringPi
Toute référence, mention ou extrait de cette traduction doit être explicitement accompagné du texte suivant : « Traduction par MCHobby (www.MCHobby.be) - Vente de kit et composants » avec un lien vers la source (donc cette page) et ce quelque soit le média utilisé.
L'utilisation commercial de la traduction (texte) et/ou réalisation, même partielle, pourrait être soumis à redevance. Dans tous les cas de figures, vous devez également obtenir l'accord du(des) détenteur initial des droits. Celui de MC Hobby s'arrêtant au travail de traduction proprement dit.