Innholdsfortegnelse:

LED Cube Display: 9 trinn (med bilder)
LED Cube Display: 9 trinn (med bilder)

Video: LED Cube Display: 9 trinn (med bilder)

Video: LED Cube Display: 9 trinn (med bilder)
Video: ТАКОГО ЕЩЕ НИКТО НЕ ВИДЕЛ! Узнав это СЕКРЕТ, ты никогда не выбросишь пластиковую бутылку! 2024, November
Anonim
LED Cube Display
LED Cube Display

I dette prosjektet vil du bygge en 8x8x8 LED -terning som skjerm. Etter å ha bygd kuben og lært det grunnleggende om koden, vil du kunne skrive dine egne visningsanimasjoner. Det er en flott visuell for vitenskapelige formål, og det vil være et fint dekorativt tillegg til rommet ditt! Under kubebyggingsprosessen får du en hel rekke grunnleggende elektronikkferdigheter, som baner vei for mer komplekse prosjekter i fremtiden.

Dette er mitt individuelle prosjekt for elektronikk -kurset, og det tok omtrent fem uker. Jeg brukte 12 timer på dette prosjektet per uke, og jeg hadde tilgang til delene og verktøyene som vanligvis finnes i et elektronikklaboratorium. Det kan også være godt å vite at selv om arbeidsmengden ikke er et stykke kake, er det ikke nødvendig med praktisk kompetanse. I stedet får du mye erfaring og lærer av dine egne feil underveis.

Ansvarsfraskrivelse: Jeg lånte designet og koden fra Kevin Darrah (https://www.kevindarrah.com/?cat=99) som bygde en 8x8x8 RGB -kube (dermed tredoblet arbeidet!). Bølgeformskjermen er mitt eget verk. Jeg anbefaler på det sterkeste å se alle LED -videoene hans før du starter prosjektet! De er ekstremt hjelpsomme med å forstå hvordan alt fungerer, noe som er avgjørende for dette kompliserte prosjektet! Jeg ga korte forklaringer om kretsløpet og den generelle arkitekturen da jeg diskuterer kretsforbindelsene og koden, så hopp gjerne til den delen først for å få en teoretisk forståelse:)

Trinn 1: Delliste

  • ensfargede DIFFUSED LED x512 med ~ 30 reservedeler (Du vil kanskje legge merke til at jeg brukte tre farger selv. Dette er opprinnelig designet for å reflektere bølgeformamplituden (f.eks. rød betyr høyere amplitude), men jeg loddet ikke skivene riktig, så til slutt behandlet jeg dem bare som det samme. Hvis du fortsatt er interessert i å gjøre fargevariasjoner i vertikal retning, kan du lese notater om trinnet for vertikale skiver:))
  • PC -kort, middels x7 og små x2 (Dette er de som er tilgjengelige i laboratoriet mitt, men du kan gjerne justere størrelsen avhengig av hva som er lett tilgjengelig for deg! Les kretsdelen for din referanse. Jeg fant at for nybegynnere, PCB -er uten tilkoblede strimler er mer imøtekommende, hovedsakelig fordi du kan legge til og kutte tilkoblinger etter ønske. Avloding kan være vanskelig!)
  • NPN 2N3904 transistorer x72
  • 1k motstander x 150
  • 100 Ohm motstander x 72
  • P-kanal MOSFETs IRF9Z34 x8 pluss 8 klippekjøler
  • 100 mikro Farads kondensatorer x8
  • 74HC595 skiftregistre x9
  • Arduino Uno + skrueskjold (jeg brukte et proto-screwshield R3-sett)
  • Ledning med isolasjon på 8 farger (jeg anbefaler på det sterkeste å bruke forskjellige farger! Du vil ha mange ledninger ved siden av hverandre, og fargene hjelper virkelig når vi sjekker kretsen.)
  • 5V 2.8A strømforsyning (så lenge strømgrensen for strømforsyningen er høyere enn 64*(strøm gjennom 1 LED), bør det fungere fint:))
  • ledningsterminaler
  • Molex hoder med 8 pinner og 6 pinner.
  • Molex wirehus med 8-pins og 6-pins (mengden av disse vil variere avhengig av PCB-størrelsen og kretsens design, så les hele instruksjonsboken (spesielt kretsdelen) før du bestemmer deg for nummeret du trenger:))
  • Lodding
  • Bare kobbertråd (for å være på den sikre siden, forbered 50m av dette)
  • Stort trebord (omtrent 9 tommer på hver side)
  • 12 tommers trespyd (valgfritt; hvis du finner en måte å lage rette ledninger, trenger du ikke dette)
  • teip
  • lange negler x16

Verktøy

  • Loddejern
  • wire cutter
  • tang
  • limpistol (valgfritt; hvis du finner en måte å lage rette ledninger, trenger du ikke dette)
  • crimper
  • kjøleribbe klemmer x2 (krokodilleklemmer fungerer også)
  • wire stripper

Trinn 2: Lag LED -rekker

Lag LED -rekker
Lag LED -rekker
Lag LED -rekker
Lag LED -rekker
Lag LED -rekker
Lag LED -rekker
Lag LED -rekker
Lag LED -rekker

Test først og fremst alle lysdiodene! Jeg brødde opp en krets med en LED og en 100 Ohm motstand. Jeg testet deretter en LED om gangen og la det til parallelt med den andre LED -en. Vi ønsker å kaste 1) ødelagte lysdioder, 2) lysdioder med anoden og katoden bakover (du vil ikke bare "huske" hvilken som har fått den til å vende!) 3) dimmere lysdioder.

Deretter lagde vi trejiggen, som også er min siste montering for terningen. Bor et 8x8 rutenett med 1 tomme mellom midten av hullene. Velg bor med en diameter like over diameteren på lysdiodene dine, slik at de kan passe inn i hullene og fortsatt være rette. Vi spikret ekstra trelister til omkretsen, som holdt brettoverflaten flat (vi brukte kryssfiner til brettet, så det har en god del fleksibilitet til det). I tillegg forhøyet dette områdene med hullene slik at lysdiodene kan stikke gjennom hullene. Velg den ene siden og legg to lange negler på samme linje som hullene. Vi knytter ledningene på disse neglene.

Vi kan nå begynne å lage LED -rader! Jeg fant ikke en effektiv måte å lage rette ledninger på, så jeg fjernet bare ledningene med en treblokk. Plasser ledningen over kanten på blokken; hold ledningen nede med tommelen på den ene siden av blokken og trekk tråden gjennom; kanten av blokken vil løsne ledningen. Jeg anbefaler å ta på deg en hanske for å beskytte tommelen din:(Plasser 8 lysdioder i denne raden med det lange "benet", anoden, vendt i en retning. Vi skal lodde dem på ledningen. Vær oppmerksom på at planet dannet av anodebenet og katodebenet skal være vinkelrett på ledningen til ledningen, og katodebenet skal være vekk fra ledningen. Fest ledningen på en spiker og dra den for å gå over lysdiodene til den er rett og stram. Fest den på den andre spikeren. Juster ledningshøyden (jeg la merke til et lite flatt område på LED -beinet, og jeg justerte ledningen slik at den berører dette området for alle lysdioder). Denne høyden er vilkårlig, men vær konsekvent. Husk: 1) nivåhøydeforskjellen i terningen din kommer til å være omtrent 1 tomme (slik at ledningene ikke kan være for høye); 2) Lysdiodene kan gå i stykker under varmen i loddejernet (slik at ledningene ikke kan være for lave) (selv om jeg ikke personlig har opplevd noe problem med dette). Nå skal ledningen berøre det lange benet på alle lysdiodene og danne et kryss. Lodd ledningen og anodeledningene og trim ledningene etterpå.

I dette prosjektet eksperimenterte jeg med to forskjellige konfigurasjoner for loddeskjøter. Den ene er tverrkontakten beskrevet ovenfor, og den andre bøyer LED -benet slik at kontaktledningene er parallelle. Teoretisk sett er de parallelle kontaktleddene mer belastningsbestandige, men med tanke på hvor lette lysdiodene er, er tverrleddene sannsynligvis ikke så skadelige. Du vil få mye øvelse med å lodde ledningen og LED -bena, så eksperimenter gjerne med forskjellige teknikker! Jeg brukte et flatspissloddejern, og jeg tror personlig at det gir bedre kontroll over loddetappene og et større varmekontaktoverflateareal.

Etter at du har loddet, bruker du brødbrettet til LED-kontrollen for å kontrollere tilkoblingene (viktig). Fest den positive ledningen til ledningen og sveip den negative ledningen gjennom de korte LED -bena. De burde alle lyse opp! Etter at vi har kontrollert at de er fine, skyver du lysdiodene forsiktig ned under brettet for å fjerne dem og skyver ledningen oppover neglene. Du kan trimme bort de løkkede endene, men definitivt spare litt lengde!

Hva om lysdioden min ikke lyser?

Det første du kan sjekke er om du fikk katoden og anoden vendt. Prøv deretter å klippe den positive ledningen til LED -benet i stedet for hele ledningen. Hvis LED-lampen lyser på den måten, kan du lodde LED-en på nytt. Hvis LED -en fortsatt ikke lyser, bytt den ut med en annen.

Vi må lage 64 slike LED -rader:)

Trinn 3: Lodding loddrette skiver

Lodding loddrette skiver
Lodding loddrette skiver
Lodding loddrette skiver
Lodding loddrette skiver
Lodding loddrette skiver
Lodding loddrette skiver

Som en forhåndsvisning er alle anodene i hvert lag koblet til, og alle katodene i hver vertikal kolonne er koblet til. Nå må vi lage de vertikale skivene. Husker du de to neglene vi satte inn i brettet for å knytte ledninger? Legg nå inn 14 flere av dem på en lignende måte:) (Forsiktig: legg spikertuppene godt! Du kommer til å trykke fingrene rundt disse tipsene mye.)

Legg nå 8 LED -rader på brettet og sørg for at beina vender i samme retning. Vær oppmerksom på at ledningene skal være parallelle med spikeradene! Trykk ned lysdiodene slik at de alle er i samme høyde. Hvis noen av lysdiodene fortsetter å dukke opp (kanskje på grunn av krumningen i ledningen), må du tape tape ned endene til brettet. Nå, før ledninger over neglene som før. Jeg kunne bare øyebollet ledningene til å være omtrent på samme høyde, men det er ok fordi det du virkelig bryr deg om er at lysdiodene er i samme høyde.

Lodd katodeledningene på ledningene. Du vil legge merke til at her brukte jeg parallellkontaktloddingskonfigurasjonen, og jeg syntes det var mer solid og penere enn tverrleddene, men det var mer tidkrevende, fordi du må 1) bøye ledningene med tang; 2) sørg for at den bøyde delen berører hovedledningen; 3) bøy den delen for å være i riktig høyde, fordi loddejernet kommer inn på skrå og du trenger strykejernet for å berøre begge ledningene samtidig.

Hvis du vil bruke forskjellige farger på forskjellige lag …

Sørg for at hver av skivene dine gjenspeiler fargeskjemaet. For eksempel, hvis jeg ville at de tre øverste lagene skulle være gule lysdioder, de midterste to skulle være oransje lysdioder og de tre nederste å være røde lysdioder, plasserer jeg tre gule LED -kolonner, to oransje og tre røde i den rekkefølgen. Sørg for at fargerekkefølgen og LED -retningen er konsistent for alle åtte skiver!

Bruk breadboard -oppsettet til å teste alle lysdiodene i hver skive. Det er definitivt lettere å lodde her igjen når lysdiodene dine er sikret i stedet for midt i luften.

Hvis ledningene dine ikke er rette på seg selv, må du IKKE trekke skiven fra neglene ennå! Les neste trinn

Hvis du allerede har rette ledninger, skyver du lysdiodene forsiktig nedenfra og skyver skiven fra neglene. Ikke klipp endene ennå:)

Trinn 4: Støtter de vertikale skivene

Støtter de vertikale skivene
Støtter de vertikale skivene
Støtter de vertikale skivene
Støtter de vertikale skivene
Støtter de vertikale skivene
Støtter de vertikale skivene

Hvis ledningene dine har noen krumninger, som mine, kan vi fikse dem til å være på et flatt plan ved å legge til stiv støtte langs omkretsen. Jeg valgte 12 tommers trespyd fordi de er lett tilgjengelige på Amazon. Jeg limte spydene på omkretsen og la til små biter i hjørnene for å styrke rammen. Se bilder for detaljer. Vær oppmerksom på at bare to spyd er helt festet til ledningene, og de to andre spydene er over hele rutenettet. Jeg anbefaler å teste rammen uten hjørnestykkene først. Jeg fant ut at de ekstra korte pinnene kom i veien for lysdiodene da jeg stablet skivene opp, og limskjøtene er sannsynligvis sterke nok til å holde LED -rutenett uansett. Hvis rutenettet fortsatt buler litt, trykker du ned på de to ikke-limte sidene og limer ledningene til spydene på flere punkter. Ikke klipp bort de løse endene ennå! Spesielt må du beholde en god bit med spyd på siden som kommer til å være i bunnen av kuben, slik at vi kan holde lysdiodene utenfor gulvet.

Trinn 5: Montering av terningen

Montering av terningen
Montering av terningen
Montering av terningen
Montering av terningen

Nå som vi har skivene, kan vi lage terningen! Jeg syntes det var lettere å stable dem i stedet for å stikke vertikale skiver sammen, men hvis du har en samarbeidspartner, kan du improvisere! For å unngå feil, lim først skivene til et annet sett med spyd og legg til tilkoblingskabler senere. Som du ser på bildet, limte jeg fire spyd i hjørnene for å hjelpe til med å justere og støtte lagene. Husk at lagene er ideelt sett 1 tommers fra hverandre. Jeg fant ut at lysdiodene mine hvilte på trerammen fra forrige lag, så jeg trenger ikke å holde dem opp mens jeg limer dem, men hvis skivene dine hviler i en lavere høyde, ville en samarbeidspartner eller noen trelister (se bildet) hjelp. Sørg for at orienteringen er riktig før du limer skivene! Du vil at katoden og anodeendene skal peke i konsistente retninger. Sjekk også orienteringen til lysdiodene.

Det er VELDIG viktig å sørge for at lysdiodene lyser når du stabler hvert lag! Det ville være praktisk talt umulig å komme til midten av terningen når du har samlet alt.

Du vil kanskje legge merke til at trerammene mine ikke nødvendigvis stemmer overens med hverandre, men hvis du ser på lysdiodene, justeres de bedre! Siden vi kommer til å se denne terningen i et mørkt miljø, er feiljustering av rammen akseptabel.

Deretter bruker du flere ledninger til å lodde anodeledningene på samme nivå sammen. Hvis du synes det er vanskelig å holde ledningene der, kan du prøve å "veve" ledningen gjennom ledningene (vekslende måten ledningen krysser ledningene på, mellom ovenfra og nedenfra). Det er ok hvis disse ledningene ikke er helt rette, fordi hoved -LED -strukturen allerede er innstilt, og sideledningene ikke er veldig synlige når vi slår på lysdiodene.

Bare for å være trygg (vi vil heller ta feil på den forsiktige siden, ja?), Test alle lysdiodene igjen. På dette tidspunktet, hvis et av lysene i midten av kuben ikke lyser, er jeg ikke sikker på om det er en enkel måte å løse det på: (Men hvis du var nøye med å sjekke lysdiodene når du stabler opp lagene, bør lysdiodene fortsatt være fine.

Nå kan vi kutte bort overflødig ledning på alle unntatt undersiden. Nå kan vi midlertidig sette kuben unna! Gratulerer! Nå er vi mer enn halvveis:)

Trinn 6: Kretsforbindelser

Kretsforbindelser
Kretsforbindelser
Kretsforbindelser
Kretsforbindelser
Kretsforbindelser
Kretsforbindelser

Vennligst les pdf -skjemaene før du plasserer kretselementer på PC -kortene. Denne skjemaet er for RGB -kuben av Kevin Darrah, og siden kuben vår har enfargede lysdioder, er arbeidsmengden faktisk bare en tredjedel av den (vi har en tredjedel av katodekontrollene, spesielt). Jeg anbefaler på det sterkeste å sette alle kretselementene på kretskortene for å teste avstanden først. Gi deg selv mer plass til å jobbe med, spesielt for skiftregisterkortene og anodekontrollkortene. Dump deretter kretskomponentene og lodd bare noen få om gangen, siden det er mindre vanskelig å lodde uten at så mange kretskomponentben kommer i veien.

anode- og katodekretser

Vår kretsdesign er slik at når inngangene til anodekretsene og katodekretsene begge er 5V (eller HIGH), lyser LED -en. La oss først gå gjennom anodekretsene. Når inngangen er HØY, blir transistoren raskt mettet, og kollektorspenningen faller til nær 0, noe som betyr at porten til MOSFET trekkes til LAV. Siden MOSFET -kilden er koblet til 5V, betyr en LOW i porten at dreneringsspenningen er satt til HIGH. Kondensatoren på tvers av kilden bidrar til å holde systemet stabilt.

Når katodekontrollinngangen er HØY, blir transistoren igjen mettet og kollektorspenningen går til 0V. Kollektorterminalen kobles til LED -en gjennom en strømbegrensende motstand. Du kan velge gjeldende begrensningsmotstand basert på LED -egenskapene dine. Siden jeg bruker røde, oransje og gule lysdioder, brukte jeg 100 ohm. Vi ser at nå er den positive siden av LED -en hevet høyt og den negative siden trukket lavt, og LED -lampen lyser.

Siden vi har 64 katodeledninger (hver kolonne) og 8 anodeledninger (hvert lag), trenger vi 64 sett med katodestyring og 8 sett med anodestyring. Jeg anbefaler at komplette sett med 8 kontroller er på samme bord, siden hvert skiftregister kobles til 8 kontroller, og det virker mer organisert hvis de 8 tilkoblingskablene går til samme sted. Vær forsiktig så du ikke overbelaster brettene! Vi kommer til å kjøre mange ledninger, så sørg for å gi deg nok plass! Lodd alle komponentene til brettet. Et triks for å øke arbeidsflatestabiliteten er å lodde på komponenter med samme høyde (f.eks. Lodde transistorene etter lodding av alle motstandene for å unngå at motstandene faller ut). For hvert sett med 8 katodestyringskretser må du lodde en 8-pinners topptekst som sender ut data til LED-kuben.

Det fremgår ikke av skjemaene, men uansett hvor det er en transistor, må vi koble den til GND og 5V

skiftregisterkretser

Skiftregistrene er koblet til hverandre via 6 ledninger. De er parallellkoblet for 5V, GND, CLOCK, LATCH og BLANK, og i serie for DATA. Når du kobler ledningene, må du sørge for at katodeskiftregistrene er på slutten av sekvensen, fordi DATA alltid går helt til slutten av serien. I utgangspunktet sender Arduino ut en streng med binær kode som renner nedover DATA -linjeforbindelsen. Den binære koden pakkes deretter inn i 8 bits per skiftregister. De 8 skiftregisterterminalene er deretter koblet til et sett med 8 katode/anodestyringer. 5V driver hele kuben, og siden vi har maksimalt 64 lysdioder tent samtidig, må du kontrollere at den totale strømmen ikke overskrider grensen for strømkilden. De andre pinnene kontrollerer i utgangspunktet når dataene kommer inn i skiftregistrene og når dataene slippes til kretsstyringene fra skiftregistrene. Sørg for at hvert skiftregister har sitt eget 8-pinners topptekst og hvert skiftregisterkort (bortsett fra det siste) har et 6-pinners topptekst som 5V, GND, CLOCK, LATCH, BLANK og DATA ledningen kan gå til neste skiftregistertavle.

Arduino krets

Kretsløpet på Arduino er veldig enkelt. I utgangspunktet har vi 6 ledninger som kommer ut av Arduino (5V, GND, CLOCK, LATCH, BLANK og DATA). Sørg for at din GND -ledning er koblet til GND -en til Arduino (faktisk bør hele GND -en i dette prosjektet være tilkoblet), men at din 5V -avledning ikke er det! Vær oppmerksom på at Arduino i Darrahs skjematisk faktisk viser terminalene til ATMEGA -brikken. Se ett av bildene vedlagt for de tilsvarende terminalene mellom brikken og Arduino.

Vi brukte et skrueskjold for å unngå å føre ledninger direkte inn i Arduino. Delene du trenger for å lodde på skrueskjoldet er stablingshodestiftene for de digitale portene, 1 6-pinners topp og 1 2-ports rekkeklemme. Du kan legge til en annen rad med stablingsoverskriftsstifter på den andre siden for balanse. (Vær oppmerksom på at de blå rekkeklemmer som vises på bildene faktisk ikke gjør noe). Lodding i henhold til skjema. Viktig merknad: bare for å være trygg, koble 5V-terminalen på 6-pinners topptekst til 5V på strømkilden (som er den grønne rekkeklemmen), IKKE 5V på Arduino. På denne måten drives Arduino av datamaskinen din, og all 5V i kretsen din blir levert av strømkilden. Koble imidlertid alle GND -ene sammen. Du kan kanskje se på bildet at jeg lodder GND-pinnen på 6-pinners topptekst og GND-pinnen på rekkeklemmen på GND-stripen på skrueskjermen.

Selv om jeg ikke vet hvordan jeg kan kontrollere skiftregisterkretsene, kan og bør vi kontrollere anode- og katodestyringskretsen ved hjelp av et brødbrett. Se bildene for detaljer. I utgangspunktet kobler vi brettinngangene til alle 5V. Deretter kan vi bruke et multimeter for å kontrollere utgangsspenningene. Vi fant at utgangsspenningen fra anodestyringene bare er omtrent 4V, men det er en forventet konsekvens fra MOSFET.

Kabeltips:

  • Ikke spar på lengden på tilkoblingskablene mellom kortene! Du vil ha mange brett og mange ledninger, og det ville være tydeligere og lettere for feilsøking hvis brettene er godt atskilt.
  • Bruk forskjellige farger for å skille hvilken ledning som er hvilken. Dette er veldig viktig, spesielt gitt hvor mange ledninger du trenger. Vi satte deretter disse ledningene i trådhuset i en fast sekvens. Bruk en god crimper for å lage sikre wire -terminaler.
  • Vær konsekvent med bruken av overskrifter og trådhuset! I mitt prosjekt, for et bestemt brett, kommer alle inngangene fra trådhus og utgangene går ut gjennom topptekstene.
  • Fordi headerterminalene er ganske tett sammen, vær forsiktig så du ikke lodder ledningene sammen, spesielt hvis du er relativt uerfaren i lodding som meg! Et triks som jeg syntes var nyttig, var å skyve ned på ledningen med loddejernet for å smelte loddet, deretter bruke tang for å klemme trådene i ledningen sammen og skyve ledningen nærmere headerterminalen. Flytt bort loddejernet og loddeskjøtet skal avkjøles og beholde formen veldig snart.

Trinn 7: Montering av terningen

Montering av terningen
Montering av terningen
Montering av terningen
Montering av terningen

I stedet for å tre de stive katodeledningene gjennom de 64 hullene, noe som er ganske vanskelig i praksis, kan vi først lodde ledningene til ledningene og deretter trekke ledningene gjennom hullene. For å la ledningene komme ut under monteringsplattformen, bor 9 hull på siden av festet (8 for katoden og 1 for anoden).

Trim først spydene til omtrent samme lengde. Skjær katodeledningene slik at de er nesten i samme høyde som spydene. Bøy nå ledningen for å danne en liten krok ved hjelp av en tang. Fjern omtrent en halv tomme av ledningen og bøy ledningen også. Hekt ledningen og ledningen sammen og lukk krokene med en tang. Dette gir god kontakt mellom ledningen og ledningen, og det frigjør hendene dine for lodding. Sørg for å sette en varmeavlederklemme foran nærmeste LED -loddetinn, slik at loddetinn ikke løsner fra den nye varmen. Hvis du ikke har kjøleribberklemmer, fungerer alligatorklemmer også.

Det er god praksis å kontrollere tilkoblingene (jeg målte motstanden til loddetinnet) når du er ferdig med å lodde hvert lag, selv om jeg har funnet ut at "krok" -metoden gir virkelig sterke loddeskjøter.

Tre nå ledningene gjennom hullene. Ta forsiktig i ledningene og skyv monteringsplattformen for å komme i kontakt med spydene. Tre hvert sett med 8 ledninger gjennom ett hull på siden av monteringsplattformen og fest bunten med et stykke elektrisk tape. Siden de fire sidene av kuben er likeverdige, spiller det ingen rolle langs hvilken side du har ledningene. Jeg foreslår at du forhåndsleder ledningsterminalene på disse, slik at du raskt kan montere trådhuset.

For anodeforbindelsene lodder du en ledning på hvert nivå og leder ledningen ut fra et av hullene. Du trenger to varmeavlederklemmer for å forhindre at loddetinnet i naboen smelter.

Etter at du har montert kuben, test hver LED igjen for å sikre at de er ok.

Tips:

Ikke spar på ledningslengden! Jeg tror ledningene mine er lett 12 tommer lange, men de viser seg fortsatt å være litt kortere.

Nå er du klar til å koble til alt og kjøre terningen!

Trinn 8: Koden og multipleksing

På grunn av den korte prosjekttiden, lånte jeg Darrahs kode og gjorde bare mindre endringer i den. Jeg legger ved versjonen jeg brukte. Han kom med utmerkede kommentarer til koden sin, og jeg anbefaler å lese gjennom dem for å få en bedre forståelse av hvordan det faktisk fungerer. Her vil jeg beskrive to hovedtrekk ved koden hans, multiplexing og bitvinkelmodulering.

Multiplexing

Alle LED -terningprosjektene som jeg leser om, bruker multiplexing, og dette er teknikken som lar oss kontrollere individuelt lys. Med multipleksing lyser bare ett lag av lysdiodene om gangen. Siden lagene blir syklet gjennom med en veldig høy frekvens, "forblir" imidlertid bildet i synet vårt en stund, og vi tror at lyset fortsatt er der. I programvaren trekker vi ett lag til HIGH om gangen og alle de andre lagene til LOW, så bare LED -lampene i dette laget kan lyse. For å bestemme hvilke som lyser, brukte vi skiftregistrene til å kontrollere hvilke av de 64 katodene som ble trukket HØY. Før vi tenner opp det neste laget, setter vi anoden til dette laget til LOW slik at ingen lys i dette laget kan lyse. Deretter trekker vi anoden på neste lag til HIGH.

Bitvinkelmodulering

BAM -teknikken lar oss kontrollere lysstyrken til hver LED på en skala mellom 0 og 15. Hvis du ikke trenger lysstyrkeendringen, trenger du ikke å implementere dette. I utgangspunktet har vi en firebits kontroll, og denne kontrollen tilsvarer 15 sykluser med å gå fra det nederste laget til det øverste laget (husk at for multiplexing lyser vi opp hvert lag om gangen?). Hvis vi skriver 1 til den første biten, tennes denne ene LED -en når vi sykler gjennom lagene for første gang. Hvis vi skriver 1 til den andre biten, slås denne LED -lampen på i de to neste syklusene. Den tredje biten tilsvarer de neste 4 syklusene, og den fjerde tilsvarer de neste 8 syklusene (så vi har 15 sykluser i et komplett sett). Si, vi vil sette LED -en til 1/3 av full lysstyrke, som er 5/15. For å oppnå dette, skriver vi 1 til den første og den tredje biten og 0 til de to andre slik at LED -lampen slås på for den første syklusen, av for de to neste, på for de neste fire og av for de neste 8. Siden vi sykler gjennom dette så raskt, at synet vårt "gjennomsnitt" lysstyrken, og vi får 1/3 av full lysstyrke.

LED -terning som display for bølgefunksjoner?

En mulighet som vi tenkte på ved starten av dette prosjektet var å bruke denne skjermen til å vise bølgefunksjoner av partikler i en firkantet boks. Jeg skrev en metode i Arduino -koden som viser grunntilstanden og den første eksiterte tilstanden, men det viser seg at oppløsningen ikke er helt tilstrekkelig. Grunntilstanden virker fin, men den første eksiterte tilstanden krever litt tolkning. Men hvis du kisker, kan du fortelle at funksjonen ser ut som en bump når du ser på den fra en retning, og den ser ut som en full sinussyklus hvis du ser fra den andre retningen. Slik skal bølgefunksjonsamplituden se ut! Siden selv den første opphissede tilstanden krever litt etterpåklokskapstolkning, koder jeg ikke for andre mer kompliserte.

Trinn 9: Testkjøringer

Testkjøringer!
Testkjøringer!

Gratulerer med at du har fullført kuben! Prøv nå å skrive din egen skjermfunksjon og del arbeidet ditt med familier og venner:)

Etter at kuben din fungerer som den skal, tape baksiden av kretskortene med ikke-ledende tape, siden tilkoblingene alle er avslørt nå, og de kan kortslutte hverandre.

Anbefalt: