Digitale terningdesign med syv segment og esptop 10 ved bruk av Arduino IDE

Digitale terningdesign med syv segment og esptop 10 ved bruk av Arduino IDE
ESP32 er en kompakt kraft som bevarer mikrokontroller som har en rekke GPIO -pinner som lar oss grensesnitt sammen med mange sensorer. ESP32 kan samhandle med et bredt utvalg av elektroniske enheter, inkludert syv segmentskjermer. Ved å bruke ESP32 mikrokontroller, er det mulig å enkelt kontrollere tilstanden til hvert segment i et syv-segment og designe en tilfeldig digital terninger eller pseudo-nummergenerator.

Denne artikkelen dekker etter innhold:

  • 1: Introduksjon til syv segment
  • 2: syv segment pinout
  • 3: Typer på syv segment
  • 4: Hvordan sjekke et syv segment er vanlig anode eller vanlig katode
  • 5: grensesnitt til syv segment med ESP32 og trykknapp
  • 5.1: Skjematisk
  • 5.2: Maskinvare
  • 5.3: Installere det nødvendige biblioteket
  • 6: Designe en digital terninger ESP32 og trykknapp
  • 6.1: Kode
  • 6.2: Output

1: Introduksjon til syv segment

Et syv-segment kan vise numerisk informasjon ved hjelp av et mikrokontrollerprogram. Den består av syv individuelle segmenter, som hver kan lyses opp eller slås av uavhengig for å lage forskjellige numeriske karakterer.

En syv-segment-skjerm fungerer ved å belyse forskjellige kombinasjoner av de syv segmentene for å vise numeriske tegn. Hvert segment styres av en individuell pin, som kan slås av eller på for å skape ønsket numerisk karakter. Når segmentene er opplyst i riktig kombinasjon, er den numeriske karakteren synlig for betrakteren.

Når du bruker en ESP32-mikrokontroller for å kontrollere en syv-segment-skjerm, sender ESP32 signaler til de spesifikke pinnene på syv-segment-skjermen, og forteller det hvilke segmenter som skal slå på eller på for å vise et spesifikt numerisk tegn.

2: syv segment pinout

Den syv-segment-skjermen har vanligvis 10 pinner, med en pinne for hvert segment, en for desimal og to vanlige pinner. Her er en tabell over den typiske pinout:

PIN-kode PIN -navn Beskrivelse
1 b Øverst til høyre LED -pinne
2 en Topp LED -pinne
3 VCC/GND GND/VCC avhenger av konfigurasjon
4 f Øverst til venstre LED -pinne
5 g Midt LED -pinne
6 DP Dot LED -pin
7 c Nederst til høyre LED -pinne
8 VCC/GND GND/VCC avhenger av konfigurasjon
9 d Bunn LED -pinne
10 e Nederst til venstre LED -pinne

Hvert segment er merket som A B C D E F og g. Den vanlige pinnen brukes vanligvis til å kontrollere alle segmentene samtidig. Den vanlige pinnen er enten aktiv lav eller aktiv høy, avhengig av displayet.

3: syv segmenttyper

Syv segmenter kan kategoriseres i 2 typer:

  • Vanlig katode
  • Vanlig anode.

1: I en Vanlig katode Alle negative LED -segmentterminaler er koblet sammen.

2: I en Vanlig anode Syv segment Alle positive LED -segmentterminaler er koblet sammen.

4: Hvordan sjekke et syv segment er vanlig anode eller vanlig katode:

For å sjekke typen syv segmenter trenger vi bare et enkelt verktøy - Multimeter. Følg trinnene for å sjekke typen syv segmentvisning:

  1. Hold syv-segment-displayet godt i hånden og identifiser PIN 1 Bruke pinout forklart ovenfor.
  2. Ta et multimeter. Anta en rød sonde for positivt (+) og svart sonde av et multimeter for negativt (-).
  3. Sett multimeter til kontinuitetstest.
  4. Etter den sjekken av måleren kan sjekkes ved å berøre både positive og negative sonder. En pipelyd vil bli produsert hvis måleren fungerer som den skal. Ellers bytt ut batteriene i multimeteret ditt med en ny.
  5. Sett svart sonde på pinne 3 eller 8 av multimeteret. Begge disse pinnene er vanlige og internt tilkoblet. Velg hvilken som helst pinne.
  6. Sett nå den røde eller positive ledelsen av multimeteret på andre pinner med syv-segmenter som 1 eller 5.
  7. Etter å ha berørt den røde sonden hvis noe segment gløder, er det syv segmentet en Vanlig katode.
  8. Utveksle multimeteret fører hvis ingen segment lyser.
  9. Koble nå den røde ledningen til pinne 3 eller 8.
  10. Etter det satte svart eller negativ bly på de gjenværende pinnene på displayet. Nå hvis noen av segmentene på skjermen lyser, er de syv segmentene Vanlig anode. Som i com anode er alle segmenters positive pinner vanlige, og gjenværende er forbundet med negativ forsyning.
  11. Gjenta trinn for å sjekke alle andre skjermsegmenter en etter en.
  12. Hvis noen av segmentene ikke gløder, vil det være feil.

Her er et referansebilde for en syv-segment-test ved hjelp av en multimeter. Vi kan se at rød sonde er på com pin 8 og svart er på segment pin, så vi bruker Vanlig anode Seven segment:

5: grensesnitt til syv segment med ESP32 og trykknapp

For å grensesnitt en syv-segment-skjerm med en ESP32, trenger du følgende materialer:

  • En ESP32 mikrokontroller
  • En syv-segment-skjerm
  • Trykk på knappen
  • En brødplate
  • Jumper ledninger

ESP32 grensesnitt med syv segmentskjermer i enkle trinn. Først må vi designe en krets som vi trenger å diskutere den skjematiske først.

5.1: Skjematisk

For å designe en digital terninger ved hjelp av syv segmenter først må vi designe kretsen gitt nedenfor og koble syv segmenter med trykknapp og ESP32. Bruke referanseskjema nedenfor kobler til ESP32-brettet med en syv-segment-skjerm og en trykknapp koblet til PIN-koden D23.

Følgende er Pinout -tabellen for ESP32 -tilkobling med en enkelt syv -segmentskjerm. En trykknapp er også koblet til på D23:

PIN-kode PIN -navn ESP32 PIN
1 b D2
2 en D15
3 Com GND/VCC avhenger av konfigurasjon - vanlig katode/anode
4 f D19
5 g D21
6 DP Dot LED -pin
7 c D4
8 Com GND/VCC avhenger av konfigurasjon - vanlig katode/anode
9 d D5
10 e D18

5.2: Maskinvare

Under bildet viser maskinvaren til ESP32 Connect med trykknapp og syv segment:

5.3: Installere det nødvendige biblioteket

Etter å ha koblet til syv segmenter må vi installere et bibliotek i Arduino IDE. Ved hjelp av dette biblioteket kan vi enkelt programmere ESP32 med syv segmenter.

Gå til Bibliotek sjef søk etter Sevseg bibliotek og installere det i Arduino IDE.

6: Designe en digital terninger ved hjelp av ESP32 og trykknapp

Å designe en digital terninger eller pseudo -nummergenerator ved hjelp av ESP32 En trykknapp er nødvendig. Trykknapp vil sende et signal på den digitale tappen til ESP32 som vil vise et siffer på syv segmenter. Hver gang knappen trykker på et tilfeldig siffer fra 0 til 6, genereres Arduino funksjon.

6.1: Kode

Åpne IDE og koble til ESP32. Etter det last opp den gitte syv segmentkoden til ESP32:

#include "sevseg.h " /*inkluderer syv segmentbibliotek* /
Sevseg sevseg; /*Syv segmentvariabel*/
int state1; /*Variabel for å lagre trykknappen State*/
#Define Button1 23 / *ESP32 Pin for trykknapp * /
void setup ()
pinmode (knapp1, input_pullup); /*Tildel knappen som inngang*/
byte sevensegments = 1; /*Antall syv segmenter vi bruker*/
byte CommonPins [] = ; /*Definere vanlige pinner*/
Byte LedSegmentPins [] = 15, 2, 4, 5, 18, 19, 21; /*ESP32 Digitale pinner definert for syv segmentsekvensstift A til G*/
Bool ResistorsSeagments = True;
sevseg.Begynn (Common_anode, Sevensegments, Commonpins, LedseGmentPins, ResistorsSeagments);/ *Konfigurasjon av syv-segment */
sevseg.setBrightness (80); /*Lysstyrke på syv segment*/
randomSeed (analogread (0));/* stokking av sekvensen av terningnummergenerering*/

void loop ()
State1 = DigitalRead (Button1); /*Les trykknappen*//
if (state1 == lav) /*lav tilstand når trykknappen trykkes* /
for (int b = 0; b <=6; b++)
sevseg.setNumber (b);
sevseg.Refreshdisplay ();/*Visning av for loopverdier på syv-segment*/
forsinkelse (100);

int i = tilfeldig (1,6);/ * generere verdiene for terninger */
sevseg.setNumber (i); /*Vis terningverdiene på syv-segment*/
sevseg.Refreshdisplay (); / * Forfrisking av syv-segment-skjermen etter hver iterasjon */
forsinkelse (1000); /* tid hvoretter for -loopen kjører igjen*/

Kode startet med å ringe Sevseg bibliotek. Her opprettet vi variabel State1. Denne variabelen vil lagre den nåværende tilstanden til trykknappen.

Etter det definerte vi antall segmenter, vi bruker med ESP32. LED -segmentpinner er definert for ESP32 -brett. Endre pinnen i henhold til typen ESP32 du bruker.

Enhver av ESP32 digitale pinner kan brukes.

Neste når vi bruker Vanlig anode type, så vi har definert det inne i koden.

I tilfelle Vanlig katode Bytt den ut med kode nedenfor.

Endelig ved å bruke tilfeldig (1,6) Funksjon ESP32 vil generere et tilfeldig tall og vise det på syv segmenter.

6.2: Output

Utgang viser tilfeldige sifre trykt fra 1 til 6.

Konklusjon

Avslutningsvis kan vi bruke ESP32 med trykknapp og Arduino-kode, og kan enkelt kontrollere tilstanden til hvert segment i en syv-segment-skjerm, noe. Vi kan bruke den til å spille flere spill som terninger.