Node.js Raspberry Pi - Introduzione a GPIO


Cos'è GPIO?

GPIO è l'acronimo di General Purpose Input Output.

Il Raspberry Pi ha due file di pin GPIO, che sono connessioni tra il Raspberry Pi e il mondo reale.

I pin di uscita sono come interruttori che il Raspberry Pi può accendere o spegnere (come accendere/spegnere una luce a LED). Ma può anche inviare un segnale a un altro dispositivo.

I pin di input sono come interruttori che puoi attivare o disattivare dal mondo esterno (come un interruttore della luce acceso/spento). Ma può anche essere un dato di un sensore o un segnale di un altro dispositivo.

Ciò significa che puoi interagire con il mondo reale e controllare dispositivi ed elettronica utilizzando Raspberry PI e i suoi pin GPIO!


Uno sguardo più da vicino ai pin GPIO

Raspberry Pi 3 con GPIO

Questa è un'illustrazione del Raspberry Pi 3.

I pin GPIO sono i quadratini rossi in due file sul lato destro del Raspberry Pi, sul Raspberry Pi attuale sono piccoli pin di metallo.

Il Raspberry Pi 3 ha 26 pin GPIO, il resto dei pin sono alimentazione, terra o "altro".

Le posizioni dei pin corrispondono alla tabella seguente.

Raspberry Pi B+, 2, 3 e zero

3V3 1 2 5V
GPIO 2 3 4 5V
GPIO 3 5 6 GND
GPIO 4 7 8 GPIO 14
GND 9 10 GPIO 15
GPIO 17 11 12 GPIO 18
GPIO 27 13 14 GND
GPIO 22 15 16 GPIO 23
3V3 17 18 GPIO 24
GPIO 10 19 20 GND
GPIO 9 21 22 GPIO 25
GPIO 11 23 24 GPIO 8
GND 25 26 GPIO 7
DNC 27 28 DNC
GPIO 5 29 30 GND
GPIO 6 31 32 GPIO 12
GPIO 13 33 34 GND
GPIO 19 35 36 GPIO 16
GPIO 26 37 38 GPIO 20
GND 39 40 GPIO 21

Leggenda

Numero di pin fisico
Potenza +
Terra
UART
I2C
SPI
GPIO
Non connetterti


Uno sguardo più da vicino alla breadboard

Una breadboard viene utilizzata per la prototipazione elettronica, consente di creare circuiti senza saldature. È fondamentalmente una tavola di plastica, con una griglia di punti di fissaggio (fori). All'interno della scheda sono presenti delle strisce metalliche che collegano i diversi punti di ancoraggio in modi specifici.

Nell'illustrazione sottostante abbiamo evidenziato alcune sezioni con colori diversi. Questo per mostrarti come è collegata la rete.

Breadboard con connessioni evidenziate

Le diverse sezioni della breadboard:

  • Sul lato sinistro e destro ci sono 2 colonne di punti di collegamento. Tutti i punti di collegamento in ciascuna di queste colonne sono collegati.
  • Il bus di alimentazione - Le colonne evidenziate in rosso. Di solito vengono utilizzati per collegare l'alimentazione alla breadboard. Poiché l'intera colonna è collegata, è possibile collegare l'alimentazione a qualsiasi punto di collegamento nella colonna.
  • The Ground Bus - Le colonne evidenziate in blu. Di solito vengono utilizzati per collegare la massa alla breadboard. Poiché l'intera colonna è collegata, è possibile collegare la terra a qualsiasi punto di collegamento nella colonna.
  • Righe di punti di collegamento collegati - Le righe evidenziate in verde. I punti di collegamento di ciascuna di queste righe sono collegati, ma non l'intera riga! I punti di collegamento del lato sinistro sono collegati (ABCDE) e i punti di collegamento del lato destro sono collegati (FGHIJ).
  • Al centro della breadboard c'è una trincea, che separa le righe sinistra e destra. La larghezza della trincea è progettata in modo che molti circuiti integrati vi si adattino.

Installare il modulo on-off

Per interfacciarci con il GPIO sul Raspberry Pi utilizzando Node.js, utilizzeremo un modulo chiamato "onoff".

Install the onoff module using npm:

pi@w3demopi:~ $ npm install onoff

Now onoff should be installed and we can interact with the GPIO of the Raspberry Pi.