Inhoudsopgave:
Video: Mastermind met een 8x8 RGB LED-matrix - Ajarnpa
2025 Auteur: John Day | [email protected]. Laatst gewijzigd: 2025-01-13 06:57
Benodigde onderdelen: Basys3 FPGA
8x8 RGB LED-matrix van GEEETECH
9V batterij
2N3904 transistoren (x32)
1K weerstand (x32)
100 Ohm weerstand (x1)
50 Ohm weerstand (x1)
De LED-matrix is een gemeenschappelijke anodematrix met in totaal 32 pinnen. De gemeenschappelijke anode betekent dat elke rij wordt bestuurd door slechts 1 pin, terwijl elke kolom wordt bestuurd door 3 - één voor elke kleur. De besturing hiervoor wordt gedaan met de 32 PMOD I/O-poorten aan elk uiteinde van het bord.
Stap 1: Stap 1: De transistoren aansluiten
Sluit de 32 1K-weerstanden aan op de middelste pin van de transistors. Dit is de "Base"-pin van de transistors en ontvangt het signaal van het basys-bord.
Stap 2: Stap 2: Verbinding maken met het bord
Sluit de uitgangen van het bord aan op het andere uiteinde van de weerstand, zoals weergegeven. JXADC => Rood, JA =>Groen, JB => Blauw, JC => Rij/Power. Dit is hoe het bord bepaalt welke rij/kolom/kleur is ingeschakeld. Elke pin schakelt de corresponderende transistor in of uit, waardoor stroom van de voeding of naar de aarde van die specifieke transistor kan vloeien.
Stap 3: Stap 3: Verbinding maken met de Matrix
Dit is waar de 8 anodezijdetransistors en 24 kathodezijdetransistors beginnen te verschillen.
Terwijl u naar de platte kant van de transistor kijkt, is de pinvolgorde emitter, basis, collector. De 24 kathodes van de matrix moeten worden aangesloten op de collectorpen van 24 transistors en de 8 anodes moeten worden aangesloten op de emitterpen van de andere 8 transistors.
Ik raad aan om elk van de draden die naar de matrix zelf gaan een kleurcodering te geven om het debuggen te vergemakkelijken. Deze specifieke matrix heeft 16 pinnen aan de "bovenkant" (de kant die ik als boven aanduidde was de kant met de letters erop) en 16 pinnen aan de "onderkant". Bovenaan volgen de 8 pinnen deze volgorde (van links naar rechts): Blue7:0 Read7:0
onder: Rij7:4 Groen7:0 Rij3:0
Mijn kleurcode - Blauw: blauw en paars
Rood: rood en oranje
Groen: groen en geel
Rij: zwart, wit, bruin en grijs
Stap 4: Stap 4: Stroom en aarde
Ik zal beginnen met het aarden van de kathodezijdetransistors. Elke emitterpin op deze wordt verbonden met de aarde van de batterij, maar de 8 rode aardes moeten een extra weerstand van 50 Ohm hebben tussen hen en de aarde van de batterij.
Ik heb deze gronden verbonden met de rijen langs de buitenkant van het broodplankje omdat het handig was (als je ervoor kiest om een broodplank te gebruiken)
De voeding moet echter worden aangesloten op de collectorpen van de 8 transistoren. Er moet een weerstand van 100 ohm tussen de voeding en de transistor worden geplaatst vanwege de LED's.
Stap 5: Stap 5: Programmering van het bord
Hier zijn alle VHDL-bestanden die je nodig hebt om het te programmeren! Veel geluk!
Zorg ervoor dat MAIN.vhd de bovenste module is
Speciale dank aan Bryan Mealy voor de klokverdeler en het eindige-toestandsmachinesjabloon.