Innehållsförteckning:

48 X 8 rullande LED -matrisdisplay med Arduino- och skiftregister: 6 steg (med bilder)
48 X 8 rullande LED -matrisdisplay med Arduino- och skiftregister: 6 steg (med bilder)

Video: 48 X 8 rullande LED -matrisdisplay med Arduino- och skiftregister: 6 steg (med bilder)

Video: 48 X 8 rullande LED -matrisdisplay med Arduino- och skiftregister: 6 steg (med bilder)
Video: ELF/EMBARC Bronchiectasis conference 2023 with subtitles 2024, Juli
Anonim
48 X 8 Scrolling LED Matrix Display Using Arduino and Shift Registers
48 X 8 Scrolling LED Matrix Display Using Arduino and Shift Registers
48 X 8 Scrolling LED Matrix Display Using Arduino and Shift Registers
48 X 8 Scrolling LED Matrix Display Using Arduino and Shift Registers

Hej, allihop

Detta är min första instruerbara och det handlar om att göra en 48 x 8 programmerbar rullande LED -matris med hjälp av en Arduino Uno och 74HC595 skiftregister. Detta var mitt första projekt med en Arduino -utvecklingskort. Det var en utmaning som min lärare gav mig. Vid den tiden då jag antog denna utmaning visste jag inte ens hur jag skulle blinka en lysdiod med en arduino. Så jag tror att även en nybörjare kan göra detta med lite tålamod och förståelse. Jag började med lite forskning om skiftregister och multiplexing i arduino. Om du är ny på skiftregister rekommenderar jag att du lär dig grunderna i multiplex- och daisy-chaining-skiftregister innan du börjar med matriserna. Det hjälper dig mycket att förstå koden och funktionen i rullningsdisplayen.

Steg 1: Samla verktyg och komponenter

Samla verktyg och komponenter
Samla verktyg och komponenter

Komponenter

  • 1. Arduino Uno R3 - 1
  • 2. 74HC595 8 bitars seriell till parallell skiftregister. - 7
  • 3. BC 548/2N4401 -transistorer - 8
  • 4. 470 ohm motstånd - antal kolumner + 8
  • 5. Pref Bräda 6x4 tum - 4
  • 6. Färgkodade trådar - Efter behov
  • 7. IC -hållare - 7
  • 8. 5 mm eller 3 mm 8x8 gemensam katod mono färg LED Matrix - 6
  • 9. Manliga och kvinnliga rubriker - Efter behov.

Verktyg krävs

  • 1. Lödkit
  • 2. Multimeter
  • 3. Limpistol
  • 4. Avlödningspump
  • 5. 5V strömförsörjning

Steg 2: Bygg kretsen på brödbräda

Bygga kretsen på brödbräda
Bygga kretsen på brödbräda
Bygga kretsen på brödbräda
Bygga kretsen på brödbräda
Bygga kretsen på brödbräda
Bygga kretsen på brödbräda
Bygga kretsen på brödbräda
Bygga kretsen på brödbräda

Det första du måste göra innan du bygger prototypen är att få ett stiftdiagram över din 8x8 -matris och markera en referenspunkt för att identifiera stiften i alla dina matriser. Detta kan hjälpa dig när du monterar kretsen.

Jag har bifogat ett stiftdiagram över matrismodulen som jag har använt här. I min modul var raderna de negativa stiften. Detta stiftdiagram förblir detsamma för de flesta moduler på marknaden.

Det visas i kretsen att ett enda skiftregister används för att styra de 8 raderna och för att styra kolumnerna använder vi ett skiftregister för varje 8 kolumner.

Låt oss bygga en enkel 8 x 8 rullande display på panelen.

Kretsen är uppdelad i två delar - radstyrning och kolumnstyrning. Låt oss bygga kolumnkontrollen först.

Pin 4 från arduino är ansluten till Pin 14 (SER) i skiftregistret. (Detta är den seriella datainmatningsstiftet i skiftregistret. De logiska nivåer som krävs för att tända lysdioderna matas genom detta stift

Pin 3 från arduino är ansluten till Pin 12 (RCLK) i skiftregistret. (Låt oss benämna denna pin som utgångsklockans stift. Data i minnet i skiftregistren skjuts till utgången när den här klockan utlöses.)

Pin 2 från arduino är ansluten till Pin 11 (SRCLK) i skiftregistret. (Detta är ingångsklockans stift som överför data till minnet.)

VCC +5V ges till skiftregistret genom sin Pin 16 och samma är ansluten till Pin 10. (Varför? Pin 10 är SRCLR Pin, som rensar data i skiftregistret när det utlöses. Det är en aktiv låg pin, så för att behålla data i minnet i skiftregistret måste denna pin levereras med +5V hela tiden.)

Marken är ansluten till både GND -stiftet (stift 8 i skiftregistret) och OE -stiftet (stift 13 i skiftregistret). (Varför? Utgångsaktiveringsstiftet måste utlösas för att ge utgångar enligt klocksignalen. Det är en aktiv låg stift precis som SRCLR-stiftet, så den måste hållas i markläget hela tiden för att aktivera utgångar.)

Matrisens kolumnstift är anslutna till skiftregistret som visas i kretsschemat med ett motstånd på 470 ohm mellan matrisen och skiftregistret

Nu, för radstyrkretsen.

Pin 7 från arduino är ansluten till Pin 14 (SER) i skiftregistret

Pin 5 från arduino är ansluten till Pin 11 (SRCLK) i skiftregistret

Pin 6 från arduino är ansluten till Pin 12 (RCLK) i skiftregistret

VCC +5V ges till stift 16 och stift 10 enligt beskrivningen ovan

Marken är ansluten till stift 8 och stift 13

Som jag har nämnt ovan var raderna de negativa stiften i mitt fall. Det är bättre att betrakta de negativa stiften i din matris som raderna på din skärm. Jordanslutningen måste bytas till dessa negativa stift med hjälp av BC548/2N4401 -transistorer som styrs av utmatningslogiknivåerna i skiftregistret. Så ju fler negativa stift, desto fler transistorer behöver vi

Ge radanslutningarna som visas i kretsschemat

Om du har lyckats göra prototypen för 8 x 8 -matrisdisplayen kan du helt enkelt replikera delen av kretsen för kolumnkontrollen och utöka matrisen till valfritt antal kolumner. Du behöver bara lägga till en 74HC595 för var 8: e kolumn (en 8 x 8 modul) och kedja den med den föregående.

Daisy kedjar skiftregistren för att lägga till fler kolumner

Daisy chain in elektroteknik är ett kopplingsschema där flera enheter kopplas ihop i en sekvens.

Mekanismen är enkel: SRCLK (ingångsklocka. Pin 11) och RCLK (utgångsklocka. Pin 12) stift delas mellan alla tusenskakade skiftregister medan varje QH-PIN (Pin 9) i föregående skiftregister i kedja används som seriell ingång för följande skiftregister genom SER PIN (PIN 14).

Med enkla ord, genom att koppla ihop skiftregistren, kan de styras som ett enda skiftregister med ett större minne. Till exempel, om du seriekopplar två 8 -bitars skiftregister, fungerar de som ett enda 16 -bitars skiftregister.

Koden

I koden matar vi kolumnerna med respektive logiska nivåer enligt inmatningen medan vi skannar längs raderna. Tecknen från A till Z definieras i koden som logiska nivåer i en byte -array. Varje tecken är 5 pixlar brett och 7 pixlar högt. Jag har gett en mer detaljerad förklaring om hur koden fungerar som kommentarer i själva koden.

Arduino -koden bifogas här.

Steg 3: Lödning

Lödning
Lödning
Lödning
Lödning
Lödning
Lödning

För att göra den lödda kretsen lättare att förstå har jag gjort den så stor som möjligt och gett separata kort för rad- och kolumnstyrenheterna och kopplat ihop dem med hjälp av rubriker och trådar. Du kan göra det mycket mindre genom att lödda komponenterna närmare varandra eller om du är bra på PCB -design kan du också göra ett mindre anpassat kretskort.

Var noga med att sätta ett 470 ohm motstånd till varje stift som leder till matrisen. Använd alltid rubriker för att ansluta LED -matriserna till kortet. Det är bättre att inte lödda dem direkt på brädet eftersom långvarig exponering för värme kan skada dem permanent.

Eftersom jag har gjort separata brädor för rad- och kolumnkontrollerna, förlängde jag trådarna från det ena kortet till det andra för att ansluta kolumnerna. Här är tavlan på toppen för att styra raderna och tavlan längst ner är för att styra kolumnerna.

den behöver bara en enda 74HC595 för att köra alla de 8 raderna. Men baserat på antalet kolumner bör fler skiftregister läggas till, det finns ingen teoretisk gräns för antalet kolumner du kan lägga till i denna matris. Hur stor kan du göra det? Låt mig veta när du kommer dit!;)

Steg 4: Testa den färdiga första halvan av kretsen

Testar den färdiga första halvan av kretsen
Testar den färdiga första halvan av kretsen

Testa det alltid halvvägs för att hitta möjliga fel som lösa anslutningar, fel stiftanslutning etc: Många människor som bad mig om hjälp med att hitta felet i deras matris hade gjort sina misstag med rad-kolumnstiftet på matrismodulen. Kontrollera det två gånger före lödning och använd färgkodade trådar för att enkelt skilja stiften.

Steg 5: Bygga andra halvlek

Bygga andra halvan
Bygga andra halvan
Bygga andra halvan
Bygga andra halvan
Bygga andra halvan
Bygga andra halvan

Förläng samma kolumnstyrkrets. Raderna är seriekopplade till den föregående.

SRCLK- och RCLK -stiften tas parallellt och QH (Serial data out. Pin 9) i det sista skiftregistret för den färdiga kretsen är ansluten till SER (Serial Data in. Pin 14) i nästa skiftregister. VCC- och GND -kraften delas också mellan alla IC: er.

Steg 6: Resultatet

Image
Image

När du är klar med lödningen är nästa steg att göra ett fodral för din skärm. Det är alltid bättre att designa ett anpassat fodral med Fusion 360 eller något annat 3D -designverktyg och 3D -utskrift av fodralet. Eftersom jag inte hade tillgång till 3D -utskrift på den tiden, gjorde jag ett träfodral med hjälp av en vän som är duktig på träbearbetning.

Hoppas du tyckte om att läsa detta instruerbart. Lägg upp bilderna på din version av detta projekt i kommentarfältet nedan och om du har några frågor är du välkommen att ställa det här eller skicka ett mail till [email protected]. Jag hjälper dig gärna.

Rekommenderad: