Een display is een klein scherm met segmenten die worden verlicht door leds om wat informatie weer te geven. Daarom zijn ze erg handig om een bepaald type gegevens weer te geven, zoals het tellen van een teller, de waarde die door een sensor is verzameld in decimalen, enz. Zoals je al weet, is dit soort 7 segmenten display het kan cijfers en letters vormen, evenals enkele symbolen. Hoewel het vrij beperkt is.
Er zijn er nog meer displays van meer segmenten die complexere alfanumerieke tekens of symbolen kunnen vormen. U kunt ook meerdere van deze 7-segmentdisplays combineren om meer cijfers of een hoeveelheid informatie weer te geven. In feite verkopen ze al modules met meerdere van deze eenvoudige displays eraan bevestigd om een wat groter paneel te creëren, zoals modules die gebruik maken van vier 7-segment displays, enz.
7-segmentendisplay en pinout-bediening
Het is vrij simpel, het is een paneel met wat lijnen dat worden verlicht door een LED. Afhankelijk van de lijnen die oplichten, kan een ander teken worden weergegeven. Om deze controle uit te voeren, zijn er 10 pinnen voor elk 7-segment-display. Een voor elk segment, het punt (dp) en ook twee veelvoorkomende zoals te zien in de afbeelding. Om ze te verlichten, gebruik je gewoon een microcontroller om spanning te sturen naar het segment dat je wilt verlichten om het gewenste personage samen te stellen.
Meestal worden altijd cijfers weergegeven, maar u kunt ook enkele letters maken, maar niet allemaal. Y met een beetje fantasie ook enkele symbolen. Dit is al een kwestie van bedenken hoe. Maar als je meer complexiteit wilt, zoek dan naar LCD-schermen met meer segmenten zoals deze.
Pinout
door voorbeeld bekijken, om een "7" te maken, kun je A, B en C oplichten. Of om een "A" te maken, kun je alles behalve dp en D aansteken. Simpel, toch?
Controleer altijd de gegevensbladen van de fabrikant of datasheets weergeven die je hebt gekocht. In sommige gevallen kunnen er variaties zijn.
Het enige waar u op moet letten, is of het 7-segment-display dat u heeft gekocht dat wel is kathode of gemeenschappelijke anode. De gemeenschappelijke kathode heeft de gemeenschappelijke pin verbonden met de negatieve pinnen van de LED's, wat betekent dat deze wordt bestuurd met een logische 1 of hoge spanning om het segment te verlichten. Terwijl in het geval van de gemeenschappelijke anode alle anodes van de aanwezige LED's op dezelfde pin zijn aangesloten en deze wordt aangestuurd door laagspanning of 0. Op deze manier weet je of de Arduino-microcontroller 0 of 1 moet sturen om deze te activeren. ..
Verbinding met Arduino
Als je een breadboard hebt, een Arduino-borden een 7 segmenten display om het gebruik ervan te testen, kan het eenvoudig worden aangesloten. U hoeft alleen maar te beslissen met welke pin u elk segment gaat verbinden en deze vervolgens te onthouden om de juiste code te maken. In dit geval is een gemeenschappelijke kathode 7-segment display gebruikt, daarom wordt deze geactiveerd met 1 of HIGH.
Voor een gewone anode zou er niet veel verschil zijn, verander gewoon de pin die we op GND hebben aangesloten naar 5v. En onthoud in de code dat het is geactiveerd met LOW.
U kunt verschillende dingen doen, zoals het direct in de code zetten van de waarde van elk segment om experimenten uit te voeren en te zien hoe het display reageert of iets praktischer te doen en het de outputwaarde van een teller te laten zien, of een waarde gemeten door een sensor, enz. In sommige gevallen moet u converteren naar het decimale systeem ... Een eenvoudig codevoorbeeld voor een 7-segmentendisplay in Arduino IDE zou:
// Definieer de knop
#define DRUKKNOP 10
// Het is een reeks bits om verschillende waarden weer te geven op het display met 7 segmenten
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
};
void setup () {
// Start seriële monitor
Serial.begin (9600);
voor (int i = 2; i <10; i ++)
{
// Zet de pinnen in de uitvoermodus
pinMode (i, UITGANG);
}
// Configureer de drukknoppen als invoer
pinMode (DRUKKNOP, INPUT);
// Stel het vaste zaad in
randomSeed (analogRead (A0));
}
leegte lus () {
// Lees de waarde van de knop
int waarde = digitalRead (PUSH BUTTON);
// Als het is ingedrukt
if (waarde == HIGH)
{
// Genereer een willekeurig getal tussen 1 en 7
int randomNumber = willekeurig (1, 7);
// De segmenten worden in de juiste staat geplaatst om het willekeurige nummer te tonen
voor (int e = 0; e <8; e ++)
{
digitalWrite (e + 2, nummer [randomNumber] [e]);
}
vertraging (500);
}
}
7-segment-display met meerdere cijfers
Voor dit soort 7-segment display maar met meerdere cijfers Alles is hetzelfde. Het enige verschil is dat we het cijfer moeten controleren waarin we het teken willen afdrukken, aangezien het in feite een display is met verschillende eenvoudige 7-segment-displays die zijn bevestigd. Wat fabrikanten doen is dat elk beeldscherm waaruit het is samengesteld zijn eigen 7 pinnen heeft voor de gemeenschappelijke segmenten van alle cijfers, en de gemeenschappelijke (anode of kathode) is specifiek voor elk cijfer.
Zo kan worden bestuurd door Arduino. Als u bijvoorbeeld segment F wilt activeren, kunt u LOW of HIGH verzenden, afhankelijk van het type display dat het is, en dat segment wordt geactiveerd voor alle aanwezige cijfers. Maar er zal er maar één oplichten, die van de cijfers waarmee we de gewone hebben geactiveerd. Op die manier wordt het gecontroleerd ...
Als u geïnteresseerd bent in dit type display, Geen producten gevonden. en andere gespecialiseerde winkels ...