Tutto quello che c'è da sapere sui pin GPIO di Raspberry Pi

Il Raspberry Pi è un piccolo computer fantastico, ma cosa fanno esattamente i pin GPIO (General Purpose Input / Output)? In breve, aprono un intero mondo di bricolage elettronico e invenzione fai-da-te.

Il Raspberry Pi è un piccolo computer fantastico, ma cosa fanno esattamente i pin GPIO (General Purpose Input / Output)?  In breve, aprono un intero mondo di bricolage elettronico e invenzione fai-da-te.
Annuncio pubblicitario

Il Raspberry Pi è un computer economico e piccolo in grado di svolgere una vasta gamma di attività, tra cui i giochi retrò e di essere un centro multimediale di casa Installa Kodi per trasformare il tuo Raspberry Pi in un Home Media Center Installa Kodi per trasformare il tuo Raspberry Pi in un Home Media Center Hai bisogno di una soluzione per i media center e hai sentito parlare di Kodi. È adatto e puoi installarlo sul tuo Raspberry Pi? E come lo fai oltre le basi? Leggi di più . Il Pi ha anche un forte focus sull'educazione, con Scratch Getting Started With Scratch sul Raspberry Pi Iniziare con Scratch sul Raspberry Pi Il nostro tutorial su Scratch ti permette di divertirti con un Raspberry Pi anche se non sai come programmare . Leggi di più e Minecraft Pi edition Impara Python ed Electronics con Minecraft Pi Edition Impara Python ed Electronics con Minecraft Pi Edition Hai sempre desiderato imparare a programmare ma non sapevo da dove cominciare? Scopri come controllare Minecraft sul Raspberry Pi usando Python e alcuni semplici dispositivi elettronici. Leggi di più orientato ad aiutare i giovani a imparare a programmare, ei pin GPIO ( General Purpose Input / Output ) aprono un intero mondo di bricolage elettronico e invenzione fai-da-te.

Cosa sono i pin GPIO di Raspberry Pi?

guida dei perni di raspberry pi gpio

In questo articolo, ti diremo tutto ciò che devi sapere sui pin GP di Pi: cosa possono fare, come usarli ed errori da evitare durante l'utilizzo.

Una nota prima di iniziare: diverse revisioni del Pi possono variare con i loro pin! Prima di attaccare qualcosa alla tua tavola, assicurati di utilizzare quelli corretti. Un modo rapido per controllare è digitare pinout nel terminale di Raspberry Pi, che mostrerà un diagramma della configurazione corrente.

I pin GPIO sono integrati nella scheda elettronica del computer. Il loro comportamento può essere controllato dall'utente per consentire loro di leggere i dati dai sensori e controllare componenti come LED, motori e display. I vecchi modelli del Pi avevano 26 pin GPIO, mentre i modelli più recenti ne avevano 40. Questo grafico mostra cosa fa ogni pin:

Tutto ciò che c'è da sapere sui pin GPIO di Raspberry Pi GPIO pinout 670

Nello schema sopra riportato, puoi vedere che ci sono diversi tipi di pin GPIO che servono a scopi diversi. Puoi trovare una versione interattiva di questo grafico su pinout.xyz. Delinea anche una delle prime cose confuse con cui dovrai fare i conti. Ad ogni pin sono associati due numeri. Il suo numero di BOARD (i numeri nel cerchio) e il suo numero BCM (Broadcom SOC channel). Puoi scegliere quale convenzione usare quando scrivi il tuo codice Python:

# 1 - GPIO/BCM Numbering GPIO.setmode(GPIO.BCM) # 2 - Board Numbering GPIO.setmode(GPIO.BOARD) 

Puoi utilizzare una sola convenzione in ogni progetto, quindi sceglierne una e attenervici. Nessuna delle due convenzioni è "giusta", quindi scegli quella che ha più senso per te. Vale la pena notare, tuttavia, che alcune periferiche si basano sulla numerazione GPIO / BCM.

Per questo articolo, ci atteniamo alla numerazione BOARD . Quindi cosa fanno effettivamente i birilli?

Pin di potenza

Iniziamo con i pin di alimentazione. Il Raspberry Pi può fornire sia alimentazione 5v (pin 2 e 4) che 3.3 v (pin 1 e 17). Fornisce anche una massa (GND) per i circuiti sui pin 6, 9, 14, 20, 25, 30, 34 e 39.

Sfortunatamente, non esiste una risposta unica a quanto corrente possono attingere i pin di alimentazione 5v poiché dipende da quale alimentatore si sta utilizzando e da quali altri componenti si sono collegati al proprio Pi. Il Raspberry Pi 3 estrae solo 2, 5 A dal suo alimentatore e richiede circa 750 mA per l'avvio e il normale funzionamento senza testa. Ciò significa che se si utilizza un alimentatore da 2, 5 A, i pin 5v possono fornire una corrente totale di circa 1, 7 A massimo. Fastidiosamente, questo varia tra i modelli di Pi tuttavia, come mostra questa tabella:

guida dei perni di raspberry pi gpio
Credito immagine: raspberrypi.org

Per la maggior parte degli utenti che iniziano con Pi, questo non sarà un problema, ma è qualcosa da tenere a mente mentre passi più tempo con i pin GPIO.

I pin 3.3v sono in qualche modo più semplici, con le recenti revisioni Raspberry Pi (modello B + in poi) che forniscono fino a 500mA totali e modelli più vecchi che forniscono solo 50mA . Nota che questa corrente è condivisa anche da tutti gli altri pin GPIO!

Quindi questi pin possono fornire energia ai componenti, ma questo è tutto ciò che fanno. La vera roba divertente viene dal resto dei pin.

GPIO standard

Nella tabella in alto, ignorando i pin di alimentazione, vedrai che alcuni sono contrassegnati in colori diversi. I pin verdi sono pin standard GPIO, e questi sono quelli che userete per la maggior parte dei progetti per principianti. Questi pin sono in grado di fornire un'uscita a 3, 3 V, indicata anche come impostazione del pin HIGH in codice. Quando un pin di uscita è LOW, significa che sta semplicemente fornendo 0v.

guida dei perni di raspberry pi gpio

Sono anche in grado di prendere un input fino a 3, 3v, che il pin legge come HIGH .

Non fornire i pin con maggiore di 3, 3v: questo è un modo rapido per friggere il tuo Pi!

Per un'ottima guida per iniziare a utilizzare i pin GPIO in un progetto semplice, prova il nostro progetto GPIO Getting Started with Raspberry Pi. Per iniziare con GPIO su un Raspberry Pi Per iniziare con GPIO su un Raspberry Pi Se anche tu fossi un Arduino, aspetta solo di mettere le mani su un Raspberry Pi - queste cose sono incredibili. Oltre ad essere un computer perfettamente funzionante, hanno anche un ... Per saperne di più.

Mentre copriremo alcuni dei pin con usi speciali in questo articolo, puoi utilizzare qualsiasi pin tranne i pin di alimentazione e i pin 27 e 28 come normali pin GPIO.

PWM

PWM (Pulse Width Modulation) viene utilizzato con componenti come motori, servo e LED inviando impulsi brevi per controllare la quantità di energia che ricevono. Lo abbiamo utilizzato con un Arduino nella nostra guida definitiva per strisce LED tutorial Guida definitiva per collegare strisce di luce a LED per Arduino Guida definitiva per collegare strisce di luce a LED per Arduino Uno dei prodotti LED più comuni è la striscia LED. In questo articolo, vedremo come impostare i due tipi più comuni con un Arduino. Leggi di più .

PWM è anche possibile sul Pi. Pin 12 (GPIO 18) e pin 35 (GPIO 35) sono compatibili con hardware PWM, sebbene il Pi sia anche in grado di fornire software PWM attraverso librerie come pigpio.

Per un'introduzione al codice richiesto per PWM, questo semplice tutorial sulla luminosità dei LED dovrebbe aiutarti a farti andare.

UART

I pin 8 e 10 (GPIO 14 e 15) sono pin UART, progettati per comunicare con Pi utilizzando la porta seriale. Ci sono alcune situazioni in cui potresti voler fare questo, ma per la maggior parte dei principianti che si connettono al tuo Pi senza testa tramite SSH Configurazione del tuo Raspberry Pi per uso senza testa Con SSH Impostazione del tuo Raspberry Pi per l'uso senza testa Con SSH Il Raspberry Pi può accettare comandi SSH se connesso a una rete locale (tramite Ethernet o Wi-Fi), consentendo di configurarlo facilmente. I vantaggi di SSH vanno oltre a sconvolgere lo screening quotidiano ... Leggi di più o utilizzando un VNC Come eseguire un desktop remoto su Raspberry Pi con VNC Come eseguire un desktop remoto su Raspberry Pi con VNC Cosa fare se è necessario accedere al Raspberry Pi desktop dal tuo PC o laptop, senza dover collegare una tastiera, un mouse e un monitor? È qui che entra in gioco VNC. Leggere di più sarà probabilmente più facile.

Se sei interessato a una visione dettagliata di come funzionano i pin seriali, questo è un ottimo primer.

SPI

SPI (Serial Peripheral Interface bus) è un metodo di comunicazione con dispositivi come il lettore RFID che abbiamo utilizzato nel nostro Smart Lock con Arduino e RFID DIY Smart Lock con Arduino e RFID DIY Smart Lock con Arduino e RFID Ecco come costruire un semplice RFID basato su smart lock che utilizza un Arduino come backbone e alcuni componenti economici. Leggi altro progetto.

Permette ai dispositivi di comunicare con Raspberry Pi in modo sincrono, il che significa che possono passare molti più dati tra i dispositivi master e slave . Se hai mai usato un piccolo touch screen per il tuo Pi, questo è il modo in cui hanno comunicato.

Tutto ciò che c'è da sapere su Raspberry Pi GPIO Pin pi touchscreen flikr 670
Immagine di credito: Gareth Halfacree / flickr.com

Ci sono vari dispositivi e HAT di estensione per Raspberry Pi che usano SPI, e possono aprire i tuoi progetti a molto più hardware di quanto i normali pin GPIO possano sostenere. Tuttavia, richiede molto cablaggio per farlo funzionare. C'è una panoramica approfondita di SPI sul sito web della fondazione Raspberry Pi.

I pin 19, 21, 23, 24, 25 e 26 (GPIO 10, 9, 11, 8, GND e GPIO 26) vengono utilizzati per connettersi a un dispositivo SPI e sono tutti necessari per un funzionamento regolare. Un buon modo per evitare tutti gli spaghetti è quello di acquistare un'estensione premade come il Sense HAT, che si adatta alla parte superiore della scheda e fornisce una matrice LED e una vasta gamma di sensori. È stato un favorito per diversi anni, ed è stato persino usato sulla Stazione Spaziale Internazionale per fare alcuni esperimenti!

Il protocollo SPI non è abilitato come standard su Raspbian, ma può essere abilitato nel file raspi-config, insieme a I2C.

I2C

I2C (Inter-Integrated Circuit) è simile a SPI, ma generalmente è considerato più facile da configurare e da usare. Comunica in modo asincrono ed è in grado di supportare il numero di dispositivi diversi a seconda delle esigenze, a condizione che abbiano indirizzi di indirizzi univoci sul bus I2C. A causa di questo sistema di indirizzamento, il Pi ha bisogno solo di due pin pin I2C 3 (GPIO 2) e pin 5 (GPIO 3), il che rende molto più semplice da usare rispetto a SPI.

L'ingombro ridotto di I2C apre una vasta gamma di possibilità. Con i pin GPIO standard, la configurazione di uno schermo LCD e alcuni pulsanti occuperebbero quasi tutti i pin, utilizzando un dispositivo I2C come il controller LCD Adafruit Negativo si riduce a due soli pin!

Sparkfun ha una panoramica completa di SPI e I2C insieme ad esempi per iniziare.

I pin 27 e 28 (contrassegnati ID_SD e ID_SC) sono anch'essi I2C. Sono utilizzati dal Pi per le funzioni interne e anche alcune schede HAT. Come regola generale, non scherzare con loro a meno che tu non sappia davvero cosa stai facendo!

Raspberry Pi: un pin GPIO per tutto!

Il Raspberry Pi è il coltellino svizzero per l'informatica moderna. Insieme a una quantità enorme di usi quotidiani, apre anche a chiunque la possibilità di creare le proprie creazioni.

Molti progetti per principianti Raspberry Pi Progetti per Raspberry Pi per principianti Progetti Raspberry Pi per principianti Questi 10 progetti Raspberry Pi per principianti sono ideali per ottenere un'introduzione alle funzionalità hardware e software del Pi, e ti aiuteranno a metterti in funzione in pochissimo tempo! Leggi di più usa i protocolli discussi in questo articolo e un approccio pratico è il modo migliore per imparare. Continua ad armeggiare e divertiti!

In this article