Questa pagina l'ho scritta molto tempo fa e contiene materiale obsoleto
L'uso è sconsigliato e non posso più fornire alcun supporto
wiringPi è una libreria che ha lo scopo di semplificare l'accesso alle periferiche collegate al connettore GPIO. Il sito ufficiale è http://wiringpi.com.
wiringPi è disponibile come pacchetto standard in Raspbian (nota 1):
pi@raspberrypi:~ $ sudo apt install wiringpi
pi@raspberrypi:~ $ gpio -v
gpio version: 2.50
Copyright (c) 2012-2018 Gordon Henderson
This is free software with ABSOLUTELY NO WARRANTY.
For details type: gpio -warranty
Raspberry Pi Details:
Type: Pi 3, Revision: 02, Memory: 1024MB, Maker: Sony
* Device tree is enabled.
*--> Raspberry Pi 3 Model B Rev 1.2
* This Raspberry Pi supports user-level GPIO access.
wiringPi ha due modalità di funzionamento:
Questo programma viene definito il "coltellino svizzero" che permette di accedere direttamente da shell alle funzioni di wiringPi.
Purtroppo questo programma deve essere eseguito con i diritti di root. Nell'installazione standard la cosa viene mascherata dal fatto che l'eseguibile è "SUIDdato", cioè con il flag setuid settato e quindi eseguito con i diritti di root anche se lanciato da un utente normale:
pi@raspberrypi:~/wiringpi $ which gpio
/usr/bin/gpio
pi@raspberrypi:~/wiringpi $ ls -l /usr/bin/gpio
-rwsr-xr-x 1 root
root 31436 Feb 29 07:32 /usr/bin/gpio
Per conoscerne il funzionamento (non esiste il man):
pi@raspberrypi:~ $ gpio
Un esempio d'uso (gpio -v) lo abbiamo già visto, per mostrare la versione installata.
Una opzione particolarmente utile permette di visualizzare i nomi dei 40 (o 26) pin presenti sul connettore GPIO (nota 3):
pi@raspberrypi:~ $ gpio readall
Per esempio il pin fisico 3 è indicato a seconda del contesto gpiocome:
Probabilmente questo in nome della chiarezza e della semplificazione...
Proviamo ad accendere un LED collegato al pin GPIO.3 (pin fisico: 15; pin Broadcom, indicato in figura: GPIO22):
Ovviamente per spegnere:
pi@raspberrypi:~ $ gpio write
3 0
Proviamo a leggere un interruttore. Lo schema è uno dei seguenti, funzionalmente identici (nota 4). Si noti la presenza di una resistenza di pull-up (valore molto indicativo: 10 KΩ) necessaria al funzionamento (nota 5).
Analogamente al'esempio precedente il pin GPIO21 è identificato da wiringPi come GPIO.29 e corrisponde al pin fisico 40,
Data di creazione di questa pagina: marzo 2017
Ultima modifica: 31 luglio 2019
Raspberry Pi: note di hardware - Versione 1.31 - Luglio
2019
Copyright 2013-2019, Vincenzo Villa (https://www.vincenzov.net)
Quest'opera è stata rilasciata con licenza Creative Commons | Attribuzione-Condividi allo stesso modo 3.0 Unported.