Innehållsförteckning:

Med en 4 -siffrig och 7 -segmentig display, med Arduino: 7 steg
Med en 4 -siffrig och 7 -segmentig display, med Arduino: 7 steg

Video: Med en 4 -siffrig och 7 -segmentig display, med Arduino: 7 steg

Video: Med en 4 -siffrig och 7 -segmentig display, med Arduino: 7 steg
Video: How to Interface Industrial Sensors with Arduino Nano 2024, Juli
Anonim
Med en 4 -siffrig och 7 -segmentig display, med Arduino
Med en 4 -siffrig och 7 -segmentig display, med Arduino

I denna handledning kommer jag att visa dig hur du använder en 7 -segmentskärm med 4 siffror med arduino. Några grundläggande saker jag skulle vilja påpeka är att detta tar upp nästan alla digitala stift på arduino uno, leonardo, brädorna med 13 digitala stift. De flesta skärmar har 12 brytstift som ansluts antingen direkt till arduino eller genom ett motstånd. Jag vill också påpeka att dessa skärmar inte behöver jord, 5V eller 3.3V för att anslutas. Så, låt oss komma igång …

Steg 1: Material

Material
Material
Material
Material
Material
Material
Material
Material

Att använda en sådan skärm kräver nästan inget material.

- 4 x 330Ω motstånd

- 12 x tröjor från man till han

- 1 x Arduino

- 1 x brödbräda av valfri storlek (de behöver inte strömskenorna)

Inga verktyg krävs för att göra en prototyp av denna design. Ett lödkolv och ett kretskort skulle dock behövas för en mer permanent användning.

Steg 2: Layout för brödbräda

Brödbräda Layout
Brödbräda Layout

Bara för att ge dig lite sammanhang kommer jag att förklara användningen av varje pin. 8 av de 12 stiften på displayen används för de 8 segmenten. Det finns sju segment som används för att bilda valfri siffra medan en styr decimalpunkten. De andra 4 av de 12 stiften styr var och en av de 4 siffrorna på displayen. Alla stift som har ett motstånd på är en av de fyrsiffriga stiften, annars är de segmentstiften.

Ovanstående design skapade jag från fritzing för att visa sambandet mellan displayen och arduino. Observera placeringen av var motstånden är, för om du ansluter motståndet till fel stift på displayen kommer antingen inte den siffran att fungera eller så kommer segmentet inte att fungera, FOREVER …

***VIKTIG NOTERING***

När jag ställde in kretsomkopplaren de gula och de lila ledningarna (jag förstörde mitt kretsschema).

Steg 3: Installera biblioteket

Biblioteket som är länkat nedan är från arduino -webbplatsen för att enkelt styra en bildskärm. Länken går till github. Om du aldrig har varit på github, lyssna noga om du har läst nästa stycke. När du kommer in på webbplatsen, titta på höger sida av fönstret och titta ner tills du ser "Ladda ner zip". Klicka på den knappen och se den visas i dina nedladdningar.

Nu måste du ladda det tidigare installerade biblioteket i mappen bibliotek. Om du nu hur du gör det, hoppa till nästa steg, annars fortsätt läsa. Gå först in i sökaren och leta upp "dokument" -mappen och öppna den. Leta sedan upp "arduino" -mappen och öppna den. Leta sedan upp biblioteksmappen och öppna den. Slutligen dra och släpp det installerade biblioteket till den just öppnade biblioteksmappen.

VIKTIG. Om din arduino -applikation öppnades och kördes medan du placerade biblioteket i bibliotekets mapp, kommer arduino inte att känna igen biblioteket. Du måste bara avsluta programmet och öppna det igen.

github.com/DeanIsMe/SevSeg

Steg 4: Koden

Koden
Koden

Koden för att faktiskt visa något är listad nedan.

#inkludera "SevSeg.h"

SevSeg sevseg; // Starta en konfiguration av ett tomrum med sju segmentkontrollerobjekt () {byte numDigits = 4; byte digitPins = {2, 3, 4, 5}; bytesegmentPins = {6, 7, 8, 9, 10, 11, 12, 13}; bool resistorsOnSegments = 0; // variabel ovan indikerar att 4 motstånd placerades på siffrorna. // ställ in variabeln till 1 om du vill använda 8 motstånd på segmentpinnarna. sevseg.begin (COMMON_CATHODE, numDigits, digitPins, segmentPins, resistorsOnSegments); sevseg.setBrightness (90); } void loop () {sevseg.setNumber (3141, 3); sevseg.refreshDisplay (); // Måste köras upprepade gånger

Steg 5: Resultatet

Om du anslöt bildskärmen korrekt, laddade upp koden korrekt och kopierade den kodade precis så borde skärmen visa pi (endast 3.141).

Om inte då, läs steg sex för allt som händer fel.

Om du gjorde det rätt, föreslår jag att du går vidare i steg sju.

Steg 6: Felsökning

Här har jag listat två möjliga saker som kan ha hänt din skärm som kan ha trasslat till det. Tyvärr är bara en av de två fixbara.

- Din skärm visar 8888

Oroa dig inte, detta är problemet som kan åtgärdas, följ bara dessa steg

1. Leta reda på i koden "sevseg.begin (COMMON_CATHODE, numDigits, digitPins, segmentPins);"

2. Ändra "GEMENSAM KATOD" till "GEMENSAM ANOD"

3. Ladda upp koden igen

- Din display visar 3. 41 eller.141 eller 3.1 1 eller 3.14 utan den andra 1

Tyvärr kan detta problem antingen lösas eller inte:. (… (det är mitt gråtande ansikte)

1. Kontrollera dina anslutningar och se till att allt är inkopplat och inte hänger

2. Kontrollera schemat igen, eftersom du troligen har anslutit det fel

3. Leta upp raden i void loop där det står att visa (3.141, 3) och ändra 3.141 till 8888 och se om en av de 8 saknas

4. Om så är fallet kan en av trådarna inte ha haft ett motstånd när det borde ha haft en betydelse att en av siffrorna hade brunnit ut. Du kan kontrollera detta genom att titta på baksidan av displayen. Om du ser något svart nära en av stiften överväckte du en av siffrorna. Tyvärr går det INTE att fixa och du vill köpa en annan skärm.

5. Om du inte ser någon svart mark någonstans än du kopplade upp ledningar som inte kan bli övermäktiga så kolla schemat och anslut sedan korrekt och ändra koden från 8888 till 3.141.

Steg 7: Gå vidare

En metod för att använda några stift på arduino för att styra flera lysdioder som annars skulle kräva mycket stift är ett tri-state 8-stifts skiftregister. Så istället för att direkt ansluta de 8 segmentpinnarna till arduino kan du ansluta dem till skiftregistret och ta reda på hur du gör det.

Det är bara en idé som jag kom på men jag vet inte hur jag ska göra eller om det ens är möjligt med arduino och bildskärmens bibliotek, men hej, tänkvärda för nyfikna.

Ha kul med din display och jag hoppas att du gillade detta instruerbart eftersom det är det första som jag faktiskt har slutat med av de många jag har i mina utkast.

Rekommenderad: