Progettazione di dadi digitali con sette segmenti ed esptop 10 utilizzando Arduino IDE

Progettazione di dadi digitali con sette segmenti ed esptop 10 utilizzando Arduino IDE
ESP32 è un microcontrollore di conservazione dell'alimentazione compatta che ha un numero di pin GPIO che ci consentono di interfacciarsi con molti sensori. ESP32 può interagire con un'ampia varietà di dispositivi elettronici, inclusi sette segmenti. Utilizzando il microcontrollore ESP32, è possibile controllare facilmente lo stato di ogni segmento in un segmento a sette segmenti e progettare un dadi digitali casuali o un generatore di numeri pseudo.

Questo articolo copre i seguenti contenuti:

  • 1: Introduzione a sette segmenti
  • 2: pinout a sette segmenti
  • 3: tipi di sette segmenti
  • 4: come controllare un segmento a sette anni è un anodo comune o un catodo comune
  • 5: interfacciando sette segmenti con ESP32 e pulsante
  • 5.1: schema
  • 5.2: hardware
  • 5.3: installazione della libreria richiesta
  • 6: Progettazione di un pulsante Digital Dice ESP32 e Push
  • 6.1: codice
  • 6.2: output

1: Introduzione a sette segmenti

Un segmento a sette segmenti può visualizzare informazioni numeriche utilizzando un programma di microcontrollore. È costituito da sette singoli segmenti, ognuno dei quali può essere illuminato o disattivato in modo indipendente per creare vari caratteri numerici.

Un display a sette segmenti funziona illuminando diverse combinazioni dei suoi sette segmenti per visualizzare caratteri numerici. Ogni segmento è controllato da un singolo pin, che può essere acceso o spento per creare il carattere numerico desiderato. Quando i segmenti sono illuminati nella combinazione corretta, il carattere numerico è visibile allo spettatore.

Quando si utilizza un microcontrollore ESP32 per controllare un display a sette segmenti, ESP32 invia segnali ai pin specifici sul display a sette segmenti, dicendole quali segmenti si accendono o spegnere per visualizzare un carattere numerico specifico.

2: pinout a sette segmenti

Il display a sette segmenti in genere ha 10 Pin, con un perno per ciascun segmento, uno per il decimale e due perni comuni. Ecco una tabella del tipico pinout:

Codice PIN Nome PIN Descrizione
1 B Pin LED in alto a destra
2 UN Pin LED più in alto
3 VCC/GND GND/VCC dipende dalla configurazione
4 F Pin LED in alto a sinistra
5 G Pin a LED centrale
6 dp PIN LED DOT
7 C Pin LED in basso a destra
8 VCC/GND GND/VCC dipende dalla configurazione
9 D Pin LED inferiore
10 e Pin LED in basso a sinistra

Ogni segmento è etichettato come a B c D e F E G. Il pin comune viene in genere utilizzato per controllare tutti i segmenti contemporaneamente. Il pin comune è attivo basso o attivo in alto a seconda del display.

3: sette tipi di segmento

Sette segmenti possono essere classificati in 2 tipi:

  • Catodo comune
  • Anodo comune.

1: in a Catodo comune Tutti i terminali di segmento LED negativi sono collegati insieme.

2: in a anodo comune Sette segmenti Tutti i terminali di segmento LED positivi sono collegati insieme.

4: come controllare un segmento di sette segmenti è un anodo comune o un catodo comune:

Per controllare il tipo di sette segmenti abbiamo solo bisogno di uno strumento semplice - Multimetro. Seguire i passaggi per controllare il tipo di visualizzazione di sette segmenti:

  1. Tenere saldamente in mano il display a sette segmenti e identifica Pin 1 usando il pinout spiegato sopra.
  2. Prendi un multimetro. Assumi una sonda rossa per positivo (+) e sonda nera di un multimetro per negativo (-).
  3. Imposta il test multiple sul test di continuità.
  4. Dopo quel che il lavoro di controllo del contatore può essere controllato toccando sonde positive e negative. Verrà prodotto un suono segnale acustico se il misuratore funziona correttamente. Altrimenti sostituire le batterie nel multimetro con una nuova.
  5. Metti la sonda nera sul pin 3 o 8 del multimetro. Entrambi questi pin sono comuni e collegati internamente. Seleziona qualsiasi pin.
  6. Ora metti il ​​piombo rosso o positivo del multimetro su altri pin di sette seggi come 1 o 5.
  7. Dopo aver toccato la sonda rossa se un segmento si illumina, il segmento dei sette è un Catodo comune.
  8. Inchange i conducenti multimetri se nessun segmento si illumina.
  9. Ora collega il cavo rosso al pin 3 o 8.
  10. Successivamente ha messo il piombo nero o negativo sui pin rimanenti del display. Ora se uno dei segmenti del display si illumina, i sette segmenti lo sono anodo comune. Come in com anodo di tutti i pin positivi dei segmenti sono comuni e i restanti sono uniti con l'approvvigionamento negativo.
  11. Ripeti i passaggi per controllare tutti gli altri segmenti di visualizzazione uno per uno.
  12. Se uno qualsiasi dei segmenti non si illumina, allora lo sarà difettoso.

Ecco un'immagine di riferimento per un test a sette segmenti usando un file multimetro. Possiamo vedere la sonda rossa è su com perp 8 e il nero è al perno del segmento, quindi stiamo usando Anodo comune Sette segmenti:

5: interfacciando sette segmenti con ESP32 e pulsante

Per interfacciarsi un display a sette segmenti con un ESP32, avrai bisogno dei seguenti materiali:

  • Un microcontrollore ESP32
  • Un display a sette segmenti
  • Premi il bottone
  • Una breadboard
  • Fili jumper

ESP32 Interfacce con display a sette segmenti in semplici passaggi. Innanzitutto, dobbiamo progettare un circuito per il quale dobbiamo discutere prima lo schema.

5.1: schema

Per progettare un dadi digitali utilizzando prima sette segmenti, dobbiamo progettare il circuito indicato di seguito e collegare sette segmenti con pulsante e ESP32. Utilizzando lo schema di riferimento seguente collega la scheda ESP32 con un display a sette segmenti e un pulsante collegato a PIN D23.

Di seguito è riportata la tabella di pinout per la connessione ESP32 con un singolo display a sette segmenti. È inoltre collegato un pulsante D23:

Codice PIN Nome PIN ESP32 PIN
1 B D2
2 UN D15
3 Com GND/VCC dipende dalla configurazione - catodo/anodo comune
4 F D19
5 G D21
6 dp PIN LED DOT
7 C D4
8 Com GND/VCC dipende dalla configurazione - catodo/anodo comune
9 D D5
10 e D18

5.2: hardware

L'immagine sotto mostra l'hardware di ESP32 Connetti con il pulsante e sette segmenti:

5.3: installazione della libreria richiesta

Dopo aver collegato sette segmenti, è necessario installare una libreria in Arduino IDE. Usando questa libreria, possiamo facilmente programmare ESP32 con sette segmenti.

Vai a Biblioteca manager Cercare Sevseg libreria e installalo in Arduino IDE.

6: Progettazione di un dadi digitali utilizzando ESP32 e pulsante

Per progettare un dadi digitali o un generatore di numeri pseudo utilizzando ESP32 È necessario un pulsante. Il pulsante invierà un segnale sul pin digitale di ESP32 che visualizzerà una cifra su sette segmenti. Ogni volta che il pulsante viene premuto una cifra casuale da 0 a 6 verrà generata su sette segmenti usando il Arduino funzione.

6.1: codice

Apri IDE e Connetti ESP32. Dopo questo caricamento il codice Seven Segment dato su ESP32:

#include "sevseg.h " /*include sette segmenti libreria* /
Sevseg Sevseg; /*Variabile a sette segmenti*/
int State1; /*Variabile per archiviare lo stato a pulsante*/
#define Button1 23 / *ESP32 PIN per pulsante * /
void setup ()
pinMode (Button1, input_pullup); /*Assegna il pulsante come input*/
Byte Sevensegments = 1; /*Numero di sette segmenti che stiamo usando*/
byte comunepins [] = ; /*Definisci pin comuni*/
byte ledsegmentpins [] = 15, 2, 4, 5, 18, 19, 21; /*Pin digitali ESP32 definiti per il pin da una sequenza di sette segmenti da a a g*/
bool resistorsonsegments = true;
Sevseg.inizio (comune_anode, sevensegments, comunepins, ledsegencepins, resistorsonsegments);/ *Configurazione del sette segmenti */
Sevseg.SetBrightness (80); /*Luminosità di sette segmenti*/
semi casuale (analogread (0));/* mescolando la sequenza della generazione dei numeri di dadi*/

void loop ()
Stato1 = DigitalRead (Button1); /*Leggi PushButton State*/
if (State1 == basso) /*stato basso quando viene premuto il pulsante* /
per (int b = 0; b <=6; b++)
Sevseg.setnumber (b);
Sevseg.refreshDisplay ();/*Visualizzazione dei valori di Loop su sette segmenti*/
ritardo (100);

int i = casuale (1,6);/ * generazione dei valori per dadi */
Sevseg.setNumber (i); /*Visualizzazione dei valori dei dadi su sette segmenti*/
Sevseg.refreshDisplay (); / * rinfrescante il display a sette segmenti dopo ogni iterazione */
ritardo (1000); /* tempo dopo il quale il ciclo for si eseguerà di nuovo*/

Codice avviato chiamando il Sevseg biblioteca. Qui abbiamo creato variabile stato1. Questa variabile memorizzerà lo stato attuale del pulsante.

Dopo di che abbiamo definito il numero di segmenti, stiamo usando con ESP32. I pin di segmento a LED sono definiti per le schede ESP32. Cambia il pin in base al tipo di ESP32 che stai usando.

È possibile utilizzare uno qualsiasi dei pin digitali ESP32.

Successivamente come stiamo usando il Anodo comune Digita, quindi l'abbiamo definito all'interno del codice.

In caso di Catodo comune Sostituilo con il codice sotto.

Finalmente usando il casuale (1,6) La funzione ESP32 genererà un numero casuale e lo visualizzerà su sette segmenti.

6.2: output

L'output mostra cifre casuali stampate da 1 a 6.

Conclusione

In conclusione, usando ESP32 con pulsante e codice Arduino, possiamo facilmente controllare lo stato di ogni segmento in un display a sette segmenti, consentendo la creazione di generatori di numeri casuali o pseudo in tempo reale personalizzati. Possiamo usarlo per giocare a più giochi come i dadi.