Innehållsförteckning:
- Steg 1: Samla verktyg och komponenter
- Steg 2: Bygg kretsen på brödbräda
- Steg 3: Lödning
- Steg 4: Testa den färdiga första halvan av kretsen
- Steg 5: Bygga andra halvlek
- Steg 6: Resultatet
Video: 48 X 8 rullande LED -matrisdisplay med Arduino- och skiftregister: 6 steg (med bilder)
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:46
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
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
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
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
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
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
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:
Programmera en Arduino med en annan Arduino för att visa en rullande text utan bibliotek: 5 steg
Programmera en Arduino Använda en annan Arduino för att visa en rullande text utan bibliotek: Sony Spresense eller Arduino Uno är inte så dyra och kräver inte mycket ström. Men om ditt projekt har begränsning av kraft, utrymme eller till och med budget kan du överväga att använda Arduino Pro Mini. Till skillnad från Arduino Pro Micro, Arduino Pro Mi
VISUINO rullande tärningar med 0,96 tums 4 -stifts OLED -modul: 7 steg
VISUINO rullande tärningar med 0,96 tum 4 -stifts OLED -modul: I denna handledning kommer vi att använda OLED Lcd och Visuino för att göra en rullande tärning när vi trycker på en knapp på vårt brödbräda. Se en demonstrationsvideo
Gränssnitt 7-segmentskärm med skiftregister med CloudX Microcontroller: 5 steg
Gränssnitt med 7-segmentskärm med skiftregister med CloudX Microcontroller: I det här projektet publicerar vi en handledning om hur du gränssnittar sju segment LED-skärm med CloudX-mikrokontroller. Sju segmentdisplayer används i många inbyggda system- och industriella applikationer där utbudet av utgångar som visas är känt
16x64 P10 rullande LED -display med hjälp av PIC16F877 mikrokontroller: 5 steg (med bilder)
16x64 P10 -rullande LED -display med hjälp av PIC16F877 mikrokontroller: I denna instruktör beskrivs hur du gränssnittar 16 x 64 (p10) LED -matrisdisplay med PICI6F877A mikrokontroller. En data skickas till mikrokontrollen via UART som lagras i EEPROM och data kommer att ha visats på LED -matrisdisplayen. Den
LED -matris med skiftregister: 7 steg (med bilder)
LED -matris som använder skiftregister: Denna instruerbara är tänkt att vara en mer fullständig förklaring än andra tillgängliga online. I synnerhet kommer detta att ge mer hårdvaruförklaring än vad som finns tillgängligt i LED Marquee som kan instrueras av led555.Mål Den här instruktionsboken presenterar begreppen