Un Tour del Lampone Pi GPIO

01 di 09

Un’introduzione ai perni del lampone Pi

Il lampone Pi GPIO.

Il termine «GPIO» (General Purpose Input Output) non è un’esclusiva del Raspberry Pi. I pin di ingresso e di uscita si trovano sulla maggior parte dei microcontrollori come Arduino, Beaglebone e altri.

Quando parliamo di GPIO con il Raspberry Pi, ci riferiamo al lungo blocco di spilli in alto a sinistra della tavola. I modelli più vecchi avevano 26 pin, tuttavia la maggior parte di noi utilizzerà un modello attuale con 40.

È possibile collegare componenti e altri dispositivi hardware a questi pin, e usare il codice per controllare ciò che fanno. È una parte importante del Raspberry Pi e un modo eccellente per imparare l’elettronica.

Dopo alcuni progetti di software, probabilmente vi troverete a sperimentare con questi pin, desiderosi di mescolare il vostro codice con l’hardware per far accadere le cose nella ‘vita reale’.

Questo processo può essere intimidatorio se si è nuovi sulla scena, e considerando che una mossa falsa può danneggiare il vostro Raspberry Pi, è comprensibile che sia una zona nervosa da esplorare per i principianti.

Questo articolo spiegherà cosa fa ogni tipo di pin GPIO e i loro limiti.

02 di 09

Il GPIO

I pin GPIO sono numerati da 1 a 40 e possono essere raggruppati in diverse funzioni.

Prima di tutto, diamo un’occhiata al GPIO nel suo complesso. I perni potrebbero sembrare uguali, ma hanno tutti funzioni diverse. L’immagine qui sopra mostra queste funzioni in colori diversi che spiegheremo nei passi successivi.

Ogni perno è numerato da 1 a 40 a partire dal basso a sinistra. Questi sono i numeri fisici dei pin, tuttavia, ci sono anche convenzioni di numerazione/etichettatura come ‘BCM’ che vengono usate quando si scrive il codice.

03 di 09

Potenza e terra

Il Raspberry Pi offre più di una potenza e pin di terra.

Evidenziati in rosso, sono pin di alimentazione etichettati ‘3’ o ‘5’ per 3,3V o 5V.

Questi pin consentono di inviare direttamente l’alimentazione ad un dispositivo senza bisogno di alcun codice. Non c’è modo di spegnerli.

Ci sono 2 binari di alimentazione – 3,3 volt e 5 volt. Il binario da 3,3 V è limitato a 50 mA di assorbimento di corrente, mentre il binario da 5 V può fornire qualsiasi capacità di corrente rimanente dall’alimentatore dopo che il Pi ha preso ciò di cui ha bisogno.

Evidenziato marrone sono i pin di terra (GND). Questi pin sono esattamente quello che dicono – pin di terra – che sono una parte vitale di qualsiasi progetto elettronico.

(i pin 5V GPIO sono numeri fisici 2 e 4. I pin 3.3V GPIO sono numeri fisici 1 e 17. I pin GPIO a terra sono numeri fisici 6, 9, 14, 20, 25, 30, 34 e 39)

04 di 09

Pin di ingresso/uscita

I pin di ingresso e di uscita consentono di collegare hardware come sensori e interruttori.

I pin verdi sono pin di ingresso/uscita «generici». Questi possono essere facilmente utilizzati come ingressi o uscite senza alcuna preoccupazione di scontrarsi con altre funzioni come I2C, SPI o UART.

Questi sono i pin che possono inviare l’alimentazione ad un LED, un cicalino o altri componenti, o essere utilizzati come ingresso per leggere sensori, interruttori o altri dispositivi di ingresso.

La potenza di uscita di questi pin è di 3,3V. Ogni pin non dovrebbe superare i 16mA di corrente, sia di affondamento che di sourcing, e l’intero set di pin GPIO non dovrebbe superare i 50mA in una sola volta. Questo può essere restrittivo, quindi potrebbe essere necessario essere creativi in certi progetti.

(I pin GPIO generici sono numeri fisici 7, 11, 12, 13, 15, 16, 18, 18, 22, 29, 31, 32, 33, 33, 35, 36, 37, 38 e 40)

05 di 09

Perni I2C

I2C permette di collegare altri dispositivi al vostro Pi con solo un paio di pin.

In giallo, abbiamo i pin I2C. I2C è un protocollo di comunicazione che in termini semplici permette ai dispositivi di comunicare con il Pi lampone. Questi pin possono essere utilizzati anche come pin GPIO «generici».

Un buon esempio di utilizzo di I2C è il popolarissimo chip di espansione della porta MCP23017, che può dare più pin di ingresso/uscita attraverso questo protocollo I2C.

(i pin I2C GPIO sono numeri di pin fisici 3 e 5)

06 di 09

UART (Seriale) Pins

Collegatevi al vostro Pi tramite un collegamento seriale con i pin UART.

In grigio, sono i pin UART. Questi pin sono un altro protocollo di comunicazione che offre connessioni seriali, e possono essere utilizzati anche come ingressi/uscite GPIO ‘generici’.

Un uso per UART è quello di abilitare una connessione seriale da un Pi ad un portatile via USB. Ciò può essere ottenuto utilizzando schede aggiuntive o semplici cavi e non è necessario uno schermo o una connessione internet per accedere al vostro Pi.

(i pin UART GPIO sono numeri di pin fisici 8 e 10)

07 di 09

Perni SPI

I pin SPI – un altro utile protocollo di comunicazione.

In rosa , abbiamo i pin SPI. SPI è un bus di interfaccia che invia dati tra il Pi e altri hardware/periferiche. È comunemente usato per il concatenamento di dispositivi come una matrice LED o un display.

Come altri, anche questi pin possono essere utilizzati come ingressi/uscite GPIO «generici».

(i pin GPIO SPI sono numeri di pin fisici 19, 21, 23, 24 e 26)

08 di 09

Perni DNC

Qui non c’è niente da vedere – i pin DNC non hanno alcuna funzione.

Infine sono due pin in blu che, attualmente, sono etichettati come DNC che sta per ‘Do Not Connect’. Questo potrebbe cambiare in futuro se la Raspberry Pi Foundation dovesse modificare le schede/software.

(i pin DNC GPIO sono numeri di pin fisici 27 e 28)

09 di 09

Convenzioni di numerazione GPIO

Portsplus è un pratico strumento per il controllo dei numeri di pin GPIO.

Durante la codifica con il GPIO, si ha la scelta di importare la libreria GPIO in uno dei due modi – BCM o BOARD .

La prima opzione è GPIO BCM . Questa è la convenzione di numerazione Broadcom ed è usata più comunemente tra i progetti e gli add-on hardware.

La seconda opzione è GPIO BOARD . Questo metodo usa invece i numeri di pin fisici, che è utile quando si contano i pin, ma troverete che è usato meno negli esempi di progetti.

Il modo GPIO è impostato quando si importa la libreria GPIO:

Per importare come BCM:

Da importare come BOARD:

Entrambi questi metodi fanno esattamente lo stesso lavoro, è solo una questione di preferenza di numerazione.

È possibile utilizzare le pratiche schede di etichette GPIO come il RasPiO Portsplus (nella foto) per verificare quali pin sto collegando anche i fili. Un lato mostra la convenzione di numerazione BCM, l’altro mostra BOARD – così sei coperto per qualsiasi progetto che trovi.

Deja un comentario