Innehållsförteckning:
- Steg 1: Material
- Steg 2: Layout för brödbräda
- Steg 3: Installera biblioteket
- Steg 4: Koden
- Steg 5: Resultatet
- Steg 6: Felsökning
- Steg 7: Gå vidare
Video: Med en 4 -siffrig och 7 -segmentig display, med Arduino: 7 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:38
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
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
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 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:
Arduino Control DC -motorhastighet och riktning med hjälp av en potentiometer, OLED -display och knappar: 6 steg
Arduino Control DC -motorhastighet och riktning med hjälp av en potentiometer, OLED -display och knappar: I denna handledning lär vi oss hur man använder en L298N DC MOTOR CONTROL -drivrutin och en potentiometer för att styra en DC -motorhastighet och riktning med två knappar och visa potentiometervärdet på OLED -skärmen. Se en demonstrationsvideo
DC -motor Smidig start, hastighet och riktning med hjälp av en potentiometer, OLED -display och knappar: 6 steg
DC -motor smidig start, hastighet och riktning med hjälp av en potentiometer, OLED -skärm och knappar: I denna handledning lär vi oss hur man använder en L298N DC MOTOR CONTROL -drivrutin och en potentiometer för att styra en likströmsmotor, mjuk start, hastighet och riktning med två knappar och visa potentiometervärdet på OLED -skärmen. Se en demonstrationsvideo
Nextion Display - Gränssnitt och protokoll förklaras med PIC och Arduino: 10 steg
Nextion Display | Gränssnitt och protokoll förklaras med PIC och Arduino: Nextion Display är mycket lätt att använda och enkelt gränssnitt med mikrokontroller. Med hjälp av Nextion -editor kan vi konfigurera displayen och vi kan designa UI på displayen. Så baserat på händelser eller kommandon Nextion display kommer att verka för att visa
8 Reläkontroll med NodeMCU och IR -mottagare med WiFi och IR -fjärrkontroll och Android -app: 5 steg (med bilder)
8 Reläkontroll med NodeMCU och IR -mottagare med WiFi och IR -fjärrkontroll och Android -app: Styrning av 8 reläväxlar med nodemcu och IR -mottagare via wifi och IR -fjärrkontroll och Android -app. Fjärrkontrollen fungerar oberoende av wifi -anslutning. HÄR ÄR EN UPPDATERAD VERSIONKLICK HÄR
Temperatur och fuktighet Display och datainsamling med Arduino och bearbetning: 13 steg (med bilder)
Temperatur- och luftfuktighetsvisning och datainsamling med Arduino och bearbetning: Intro: Detta är ett projekt som använder ett Arduino -kort, en sensor (DHT11), en Windows -dator och ett bearbetningsprogram (ett gratis nedladdningsbart) för att visa temperatur, luftfuktighetsdata i digital och stapeldiagramform, visa tid och datum och kör en räkningstid