Inhoudsopgave:

Mastermind met een 8x8 RGB LED-matrix - Ajarnpa
Mastermind met een 8x8 RGB LED-matrix - Ajarnpa

Video: Mastermind met een 8x8 RGB LED-matrix - Ajarnpa

Video: Mastermind met een 8x8 RGB LED-matrix - Ajarnpa
Video: Number Guessing Arduino 2024, November
Anonim
Mastermind met een 8x8 RGB LED-matrix
Mastermind met een 8x8 RGB LED-matrix
Mastermind met een 8x8 RGB LED-matrix
Mastermind met een 8x8 RGB LED-matrix
Mastermind met een 8x8 RGB LED-matrix
Mastermind met een 8x8 RGB LED-matrix

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

Stap 1: De transistoren aansluiten
Stap 1: De transistoren aansluiten
Stap 1: De transistoren aansluiten
Stap 1: De transistoren aansluiten
Stap 1: De transistoren aansluiten
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

Stap 2: Verbinding maken met het bord
Stap 2: Verbinding maken met het bord
Stap 2: Verbinding maken met het bord
Stap 2: Verbinding maken met het bord
Stap 2: Verbinding maken met het bord
Stap 2: Verbinding maken met het bord
Stap 2: Verbinding maken met het bord
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

Stap 3: Verbinding maken met de Matrix
Stap 3: Verbinding maken met de Matrix
Stap 3: Verbinding maken met de Matrix
Stap 3: Verbinding maken met de Matrix
Stap 3: Verbinding maken met de Matrix
Stap 3: Verbinding maken met de Matrix
Stap 3: Verbinding maken met de Matrix
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

Stap 4: Stroom en aarde
Stap 4: Stroom en aarde
Stap 4: Stroom en aarde
Stap 4: Stroom en aarde
Stap 4: Stroom en aarde
Stap 4: Stroom en aarde
Stap 4: Stroom en aarde
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

Stap 5: Programmering van het bord
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.

Aanbevolen: