7 segment display og Arduino

7 segment display

En skjerm er en liten skjerm med segmenter som er opplyst av lysdioder for å vise litt informasjon. Det er derfor de er veldig nyttige for å vise noen type data, for eksempel en telleroptelling, verdien samlet av en sensor i desimal, etc. Som du allerede vet, denne typen 7 segment display den kan danne tall og bokstaver, samt noen symboler. Selv om det er ganske begrenset.

Det er andre viser flere segmenter som kan danne mer komplekse alfanumeriske tegn eller symboler. Du kan også kombinere flere av disse 7-segmentskjermene for å vise flere figurer eller mengde informasjon. Faktisk selger de allerede moduler med flere av disse enkle skjermene festet for å skape et noe større panel, for eksempel moduler som bruker fire 7-segment skjermer, etc.

7-segment display og pinout-drift

form tegn på 7-segment display

Det er ganske enkelt, det er et panel med noen linjer som er opplyst av en LED. Avhengig av linjene som er tent, kan et annet tegn være representert. For å utføre denne kontrollen er det 10 pinner for hver 7-segment skjerm. Ett for hvert segment, punktet (dp) og også to vanlige som sett på bildet. For å belyse dem, bruk bare en mikrokontroller for å sende spenning til segmentet du vil belyse for å komponere tegnet du vil ha.

Vanligvis er tall alltid representert, men du kan også lage noen bokstaver, men ikke alle. Y kaster litt fantasi også noen symboler. Dette er allerede et spørsmål om at du tenker hvordan. Men hvis du vil ha mer kompleksitet, se etter LCD-skjermer med flere segmenter som denne.

pinout

7 segment display pinout

av ejemplo, for å lage et "7" kan du tenne A, B og C. Eller for å lage et "A" kan du tenne alt annet enn dp og D. Enkelt, ikke sant?

Sjekk alltid produsentens datablad eller vise datablad som du har kjøpt. Det kan være variasjoner i noen tilfeller.

Det eneste du bør huske på er hvis 7-segmentet skjermen du har kjøpt er katode eller vanlig anode. Den vanlige katoden har den felles pinnen koblet til de negative pinnene på lysdiodene, noe som betyr at den styres med en logikk 1 eller høyspenning for å belyse segmentet. Mens det er vanlig anode, er alle anodene til lysdiodene som er tilstede koblet til samme pinne, og den styres av lav spenning eller 0. På denne måten vet du om Arduino-mikrokontrolleren må sende 0 eller 1 for å aktivere den. ..

Forbindelse med Arduino

7 segment skjerm og Arduino tilkoblet

Hvis du har et brødbrett, et arduino-brettog 7 segment display for å begynne å teste bruken, kan den enkelt kobles til. Du må bare bestemme hvilken pin du skal koble hvert segment for å huske den for å lage riktig kode. I dette tilfellet har en vanlig katode 7-segment skjerm blitt brukt, derfor er den aktivert med 1 eller HIGH.

For en vanlig anode ville det ikke være mye forskjell, bare bytt pinnen som vi har koblet til GND til 5v. Og husk i koden at den er aktivert med LAV.

Du kan gjøre flere ting, for eksempel å direkte sette verdien til hvert segment i koden for å begynne å gjøre eksperimenter og se hvordan skjermen reagerer eller gjøre noe mer praktisk og få det til å vise utgangsverdien til en teller, eller en verdi målt med en sensor osv. I noen tilfeller må du konvertere til desimalsystemet ... Et enkelt kodeeksempel for en 7-segmentvisning i Arduino IDE ville:

// Definer knappen
#define PUSHBUTTON 10

// Det er en rekke bits som viser forskjellige verdier på 7-segmentskjermen
byte nummer [10] [8] =
{
{1, 1, 1, 1, 1, 1, 0, 0}, // 0
{0, 1, 1, 0, 0, 0, 0, 0}, // 1
{1, 1, 0, 1, 1, 0, 1, 0}, // 2
{1, 1, 1, 1, 0, 0, 1, 0}, // 3
{0, 1, 1, 0, 0, 1, 1, 0}, // 4
{1, 0, 1, 1, 0, 1, 1, 0}, // 5
{1, 0, 1, 1, 1, 1, 1, 0}, // 6
{1, 1, 1, 0, 0, 0, 0, 0}, // 7
{1, 1, 1, 1, 1, 1, 1, 0}, // 8
{1, 1, 1, 0, 0, 1, 1, 0} // 9
};

ugyldig oppsett () {
// Start seriell skjerm
Serial.begin (9600);
for (int i = 2; i <10; i ++)
{
// Sett pinnene i utgangsmodus
pinMode (i, OUTPUT);
}

// Konfigurer trykknappstiften som inngang
pinMode (PUSH KNAPP, INNGANG);

// Sett det faste frøet
randomSeed (analogRead (A0));
}

ugyldig sløyfe () {
// Les verdien på knappen
int-verdi = digitalRead (PUSH KNAPP);

// Hvis den er presset
hvis (verdi == HØY)
{

// Generer et tilfeldig tall mellom 1 og 7
int randomNumber = tilfeldig (1, 7);

// Segmentene settes i riktig tilstand for å vise tilfeldig tall
for (int e = 0; e <8; e ++)
{
digitalWrite (e + 2, nummer [randomNumber] [e]);
}

forsinkelse (500);
}
}

7 segment display med flere sifre

display-flere

For denne typen 7 segment display men med flere sifre Alt er det samme. Den eneste forskjellen er at vi må kontrollere sifferet der vi vil skrive ut tegnet, siden det i utgangspunktet er en skjerm med flere enkle 7-segment skjermer festet. Hva produsenter gjør er at hver skjerm den består av har sine egne 7 pinner for de vanlige segmentene av alle sifrene, og den vanlige (anode eller katode) er spesiell for hvert siffer.

kan styres av Arduino. For eksempel, hvis du vil aktivere segment F, kan du sende LAV eller HØY avhengig av hvilken type skjerm det er, og det segmentet vil bli aktivert for alle sifrene som er til stede. Men bare en vil lyse, den ene på sifferet som vi har aktivert den vanlige. På den måten blir det kontrollert ...

Hvis du er interessert i denne typen skjerm, Ingen produkter funnet. og andre spesialforretninger ...


Bli den første til å kommentere

Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.