Indholdsfortegnelse:

LED -matrix ved hjælp af skiftregistre: 7 trin (med billeder)
LED -matrix ved hjælp af skiftregistre: 7 trin (med billeder)

Video: LED -matrix ved hjælp af skiftregistre: 7 trin (med billeder)

Video: LED -matrix ved hjælp af skiftregistre: 7 trin (med billeder)
Video: DVD LED Display og Arduino Nano (Seven Segment LED Display basics) 2024, November
Anonim
LED -matrix ved hjælp af skiftregistre
LED -matrix ved hjælp af skiftregistre
LED -matrix ved hjælp af skiftregistre
LED -matrix ved hjælp af skiftregistre
LED -matrix ved hjælp af skiftregistre
LED -matrix ved hjælp af skiftregistre

Denne instruerbare er beregnet til at være en mere komplet forklaring end andre tilgængelige online. Dette vil især give mere hardware forklaring end der er tilgængelig i LED Marquee, der kan instrueres af led555.

Mål

Denne instruktive præsenterer de begreber, der er involveret i skifteregistre og førere på høje sider. Ved at illustrere disse begreber med en 8x8 LED matrix håber jeg at give dig de nødvendige værktøjer til at tilpasse og udvide til den størrelse og layout, dit projekt kræver.

Erfaring og færdigheder

Jeg vil vurdere dette projekt til at være af medium vanskelighed:

  • Hvis du allerede har erfaring med at programmere mikrokontrollere og arbejde med lysdioder, bør dette projekt være ret let for dig at gennemføre og skalere til større lysfelter.
  • Hvis du lige er begyndt med mikrokontrollere og har blinket en eller to LED'er, bør du være i stand til at fuldføre dette projekt med hjælp fra vores ven google.
  • Hvis du har ringe eller ingen erfaring med mikrokontrollere eller programmering, er dette sandsynligvis ud over, hvad du burde sætte dig ind i. Prøv et par andre nybegynderprojekter, og kom tilbage, når du har mere erfaring med at skrive programmer til mikrokontrollere.

Ansvarsfraskrivelse og kredit

For det første er jeg ikke elektriker. Hvis du ser noget, der er forkert eller ikke er en god praksis, så lad mig det vide, så foretager jeg rettelsen. Gør dette på egen risiko! Du bør vide, hvad du laver, eller du kan forårsage skade på din computer, din mikrokontroller og endda dig selv. Jeg har lært meget af internettet, især fra fora på: https://www.avrfreaks.netJeg bruger et skriftsæt, der fulgte med ks0108 universal C -biblioteket. Se det her:

Trin 1: Dele

Liste over dele

Generelle dele

For at lave et 8x8 gitter med lysdioder og styre dem skal du bruge:

  • 64 lysdioder efter eget valg
  • 8 modstande til lysdioderne
  • 1 Skift register for kolonnerne
  • 1 Driver array til rækkerne
  • 8 Modstande til at skifte driver array
  • 1 mikrokontroller
  • 1 urkilde til mikrokontroller
  • 1 prototypebord
  • 1 strømforsyning
  • Tilslutningstråd

Specifikke dele brugt her

Til denne instruerbare brugte jeg følgende:

  • 64 grønne lysdioder (Mouser-del #604-WP7113GD)
  • 8 220ohm 1/4 watt modstande til lysdioderne (Mouser-del #660-CFS1/4CT52R221J)
  • 1 HEF4794 LED-driver med skifteregister (Mouser-del #771-HEF4794BPN)
  • 1 mic2981 High-Voltage High-Current Source Driver Array (Digikey-del #576-1158-ND)
  • 8 3.3kohm 1/4 watt modstande til at skifte driver array (Radio Shack del #271-1328)
  • 1 Atmel ATmega8 mikrokontroller (Mouser-del #556-ATMEGA8-16PU)
  • 1 12MHz krystal til mikrokontrollerurets kilde (Mouser-del #815-AB-12-B2)
  • 1 2200-hullers prototypebord (Radio Shack-del #276-147)
  • Konverteret ATX -strømforsyning: Se denne instruks
  • Solid-core 22-awg tilslutningstråd (Radio Shack-del #278-1221)
  • Loddefri brødbræt (Radio Shack-del #276-169 (ikke længere tilgængelig, prøv: 276-002)
  • AVR Dragon (Mouser-del #556-ATAVRDRAGON)
  • Dragon Rider 500 af Ecros Technologies: Se denne vejledning

Bemærkninger vedrørende dele

Række- og kolonnedrivere: Sandsynligvis den sværeste del af dette projekt er at vælge række- og kolonnedrivere. For det første tror jeg ikke, at et standard 74HC595 skiftregister er en god idé her, fordi de ikke kan håndtere den slags strøm, vi vil sende gennem lysdioderne. Dette er grunden til, at jeg valgte HEF4794 driveren, da den let kan synke den nuværende strøm, når alle 8 leds er i en række, er tændt. Skiftregistret er til stede på den lave side (ledsens jordstift). Vi skal bruge en række driver, der kan kilde nok strøm til at snøre flere kolonner sammen. Mic2981 kan levere op til 500mA. Den eneste anden del, jeg har fundet, der udfører denne opgave, er UDN2981 (digikey-del #620-1120-ND), som er den samme del af en anden producent. Send mig en besked, hvis du kender til andre high-side drivere, der ville fungere godt i denne applikation. LED Matrix: Denne matrix er 8x8, fordi række- og kolonnedrivere hver har 8 ben. Et større LED -array kan bygges ved at snøre flere matricer sammen og vil blive diskuteret i trinnet "modulære koncepter". Hvis du vil have et stort udvalg, skal du bestille alle de nødvendige dele på én gang. Der er 8x8, 5x7 og 5x8 LED -matricer tilgængelige i en praktisk pakke. Disse skal være lette at erstatte med en diy matrix. Ebay er en god kilde til disse. Mouser har nogle 5x7 enheder til rådighed, f.eks. Art.nr. 604-TA12-11GWA. Jeg brugte billige grønne lysdioder, fordi jeg bare leger og har det sjovt. At bruge mere på højlysstyrke, højeffektive LED'er kan give dig mulighed for at producere et meget mere spektakulært udseende … dette er dog godt nok for mig! Kontrolhardware: Matrixen styres af en Atmel AVR-mikrokontroller. Du skal bruge en programmør til dette. Fordi jeg prototyper, bruger jeg Dragon Rider 500, som jeg har skrevet både monterings- og brugsinstruktioner til. Dette er et let værktøj til prototyper, og jeg kan varmt anbefale det.

Trin 2: Matrixen

Matrixen
Matrixen
Matrixen
Matrixen
Matrixen
Matrixen

Jeg vil bygge min egen LED -matrix til dette projekt ved hjælp af 5 mm lysdioder og et prototypebord fra Radio Shack. Det skal bemærkes, at du kan købe 8x8 dot matrix led -moduler fra flere kilder, herunder ebay. De burde fungere fint med dette instruerbare.

Konstruktion Overvejelser

Justering LED'erne skal justeres, så de vender i samme retning i samme vinkel. Jeg fandt den nemmeste mulighed for mig, at lægge LED -lampens krop flush til brættet og holde det der med et lille stykke plexiglas og en klemme. Jeg satte et par lysdioder på plads et par centimeter væk fra den række, jeg arbejdede på for at sikre, at plexiglasset var parallelt med prototypebordet. Rækker og kolonner Vi skal have en fælles forbindelse for hver række samt hver kolonne. På grund af vores valg af række og kolonne driver, skal vi have anoden (positiv ledning af LED) forbundet med række og katoden (negativ ledning af LED) forbundet med kolonne. Til denne prototype bruger jeg fast kerne (enkeltleder) tilslutningstråd. Dette vil være meget let at interface med et loddefrit brødbræt. Brug gerne en anden stik type, der passer til dit projekt.

Bygger Matrix

1. Placer den første kolonne med LED'er i prototypebordet. Dobbelttjek, at din polaritet for hver LED er korrekt, dette vil være meget svært at rette, hvis du indser det senere. Lodde begge ledninger af LED'en til brættet. Kontroller, at de er justeret korrekt (ikke i underlige vinkler), og klip katodeledningerne af. Sørg for, at du ikke klipper anodeledningen, vi får brug for det senere, så lad det bare pege op.4. Fjern isoleringen fra et stykke solid kernetråd. Lod dette stykke tråd til hver katode lige på tavleniveau.

  • Jeg tackede dette i hver ende og gik derefter tilbage og tilføjede en smule loddetin ved hvert kryds.
  • Denne ledning bør løbe forbi din sidste LED for at skabe en let grænseflade, når vi tilføjer styrekabler.

5. Gentag del 1-4, indtil du har alle lysdioder på plads og alle søjlebusser loddet.6. For at oprette en rækkebus skal du bøje flere af anodeledningerne i en 90 graders vinkel, så de berører de andre anodeledninger i samme række.

  • Der er detaljerede billeder af dette herunder.
  • Pas på ikke at lade disse komme i kontakt med kolonnebusserne, hvilket skaber en kortslutning.

7. Lod lodningerne ved hvert kryds, og klip de overskydende anodeledninger af.

Lad den sidste anode stikke forbi den sidste LED. Dette vil blive brugt til at forbinde ledningerne til rækkeførerdistribution

8. Gentag del 6 & 7, indtil alle rækker busser er loddet.9. Fastgør styrekabler.

  • Jeg brugte rød solid kernetråd til rækkerne og sort til kolonnerne.
  • Tilslut en ledning for hver kolonne og en for hver række. Dette kan let gøres i slutningen af hver bus.

Vigtig

Denne LED -matrix har ingen strømbegrænsende modstande. Hvis du tester dette uden modstande, vil du sandsynligvis brænde dine lysdioder ud, og alt dette arbejde er for ingenting.

Trin 3: Kontrolhardwaren

Kontrolhardwaren
Kontrolhardwaren
Kontrolhardware
Kontrolhardware

Vi skal styre kolonnerne og rækkerne i vores LED -matrix. Matricen er konstrueret således, at anoderne (spændingssiden af LED'en) udgør rækkerne, og katoderne (grundsiden af LED'en) udgør søjlerne. Dette betyder, at vores række driver har brug for at kilde strøm, og vores kolonne driver skal synke den. For at spare på pins benytter jeg et skiftregister til at styre kolonnerne. På denne måde kan jeg styre et næsten ubegrænset antal kolonner med kun fire mikrokontrollerpinde. Det er kun muligt at bruge tre, hvis Enable Output -stiften er bundet direkte til spænding. Jeg har valgt HEF4794 LED driver med skiftregister. Dette er en bedre mulighed end en standard 74HC595, da den let kan synke den nuværende strøm, når alle 8 lysdioder er tændt ad gangen. På den høje side (strømkilde til rækkerne) bruger jeg en mic2981. Skematisk viser en UDN2981, jeg tror, at disse to er udskiftelige. Denne driver kan levere op til 500mA strøm. Fordi vi kun kører 1 række ad gangen, giver dette mange muligheder for ekspansion, op til 33 kolonner for denne chip (mere om det i "modulære koncepter" -trinnet).

Opbygning af kontrolhardware

For denne instruerbare har jeg lige brødboardet dette kredsløb. For en mere permanent løsning vil du enten ætse dit eget printkort eller bruge prototyper. Rækkefører

  • Læg mic2981 (eller UDN2981) i brødbrættet
  • Tilslut pin 9 til spænding (dette er forvirrende i skematisk)
  • Tilslut pin 10 til jord (Dette er forvirrende i skematisk)
  • indsæt 3k3 modstande, der forbinder til ben 1-8
  • Tilslut fra Port D på ATmega8 (PD0-PD8) til de 8 modstande
  • Tilslut LED-matrixens 8 leders ledninger til ben 11-18 (bemærk, at jeg har forbundet den laveste række LED'er til pin 18 og den højeste række til pin 11).

2. Spaltefører

  • Læg hef4794 i brødbrættet
  • Tilslut pin 16 til spænding
  • Tilslut pin 8 til jorden
  • Tilslut 220 ohm modstande til ben 4-7 og 11-14.
  • Tilslut de 8 søjles styrekabler fra LED -matrixen til de 8 modstande, du lige har tilsluttet.
  • Tilslut Pin1 (lås) til PC0 på ATmega8
  • Tilslut Pin2 (data) til PC1 på ATmega8
  • Tilslut Pin3 (ur) til PC2 på ATmega8
  • Tilslut Pin15 (Enable Output) til PC3 på ATmega8

3. Ur Crystal

Tilslut en 12MHz krystal og belastningskondensatorer som vist i skematisk

4. ISP

Tilslut programmeringsoverskriften som vist i skematisk

5. Filtrering af kondensator og pull-up modstand

  • Det er bedst at filtrere spændingen, der leveres til ATmega8. Brug en 0.1uf kondensator mellem pin 7 og 8 på ATmega8
  • Nulstillingstappen bør ikke efterlades flydende, da det kan forårsage tilfældige nulstillinger. Brug en modstand til at slutte den til spænding, alt omkring 1k burde være godt. Jeg har brugt en 10k modstand i skematisk.

6. Sørg for, at du bruger +5v reguleret strøm. Det er op til dig at designe regulatoren.

Trin 4: Software

Tricket

Ja, ligesom alt andet, er der et trick. Tricket er, at der aldrig er mere end 8 lysdioder tændt ad gangen. For at dette kan fungere godt, er der brug for lidt snedig programmering. Det koncept, jeg har valgt, er at bruge en timer -afbrydelse. Sådan fungerer displayafbrydelsen på almindeligt engelsk:

  • Timeren tæller op til et bestemt punkt, når den er nået, afbrydes servicerutinen.
  • Denne rutine bestemmer, hvilken række der er den næste, der skal vises.
  • Oplysningerne for den næste række slås op fra en buffer og flyttes ind i kolonnedriveren (disse oplysninger er ikke "låst", så de endnu ikke vises).
  • Rækkedriveren er slukket, ingen lysdioder lyser i øjeblikket.
  • Kolonnedriveren er "låst" gør i de oplysninger, vi flyttede for to trin siden, de aktuelle oplysninger, der skal vises.
  • Rækkedriveren giver derefter strøm til den nye række, vi viser.
  • Afbrydelsesrutinen slutter, og programmet vender tilbage til normal strøm indtil næste afbrydelse.

Dette sker meget meget hurtigt. Afbrydelsen kastes hver 1 mSek. Det betyder, at vi opdaterer hele skærmen cirka hver 8. mSek. Dette betyder en visningshastighed på omkring 125Hz. Der er en vis bekymring med hensyn til lysstyrke, fordi vi i det væsentlige kører LED'erne i en 1/8 driftscyklus (de er slukket 7/8 af tiden). I mit tilfælde får jeg et tilstrækkeligt lyst display uden synligt blinkende. Det fulde LED -display er kortlagt i et array. Mellem afbrydelser kan matrixen ændres (vær opmærksom på atomicitet) og vil blive vist på displayet under den næste afbrydelse. Specifikationerne ved at skrive kode til AVR -mikrokontrolleren og hvordan man skriver kode for at tale med skifteregistrene er uden for omfanget af dette instruerbare. Jeg har inkluderet kildekoden (skrevet i C og kompileret med AVR-GCC) samt hex-filen til at programmere direkte. Jeg har kommenteret hele koden, så du skal kunne bruge denne til at opklare eventuelle spørgsmål om, hvordan du får data ind i skiftregistret, og hvordan opdateringen af rækken fungerer. Bemærk, at jeg bruger en skrifttypefil, der fulgte med ks0108 universal C bibliotek. Det bibliotek kan findes her:

Skiftregistre: Sådan gør du

Jeg har besluttet at tilføje lidt om, hvordan man programmerer med skiftregistre. Jeg håber, at dette opklarer tingene for dem, der ikke har arbejdet med dem før. Hvad de gør Skiftregistre tager et signal fra en ledning og sender disse oplysninger til mange forskellige pins. I dette tilfælde er der en datatråd, der tager dataene ind og 8 ben, der styres, afhængigt af hvilke data der er modtaget. For at gøre tingene bedre er der en outpin for hvert skiftregister, der kan tilsluttes input -pin i et andet skiftregister. Dette kaldes cascading og gør udvidelsespotentialet til et næsten ubegrænset perspektiv. Control PinsShift -registre har 4 kontrolnåle:

  • Latch - Denne pin fortæller skifteregistret, når det er tid til at skifte til nyligt indtastede data
  • Data - 1'erne og 0'erne, der fortæller skiftregistret, hvilke ben der skal aktiveres, modtages på denne pin.
  • Ur - Dette er en puls sendt fra mikrokontrolleren, der fortæller skiftregistret at tage en datalæsning og gå til det næste trin i kommunikationsprocessen
  • Aktiver output - Dette er en tænd/sluk -kontakt, Høj = Til, Lav = Fra

Få det til at byde: Her er et crashkursus i driften af ovenstående kontrolnåle: Trin 1: Indstil lås, data og ur lavt

Indstilling af låsen lav fortæller det skiftregister, vi er ved at skrive til det

Trin 2: Indstil datapind til den logiske værdi, du vil sende til skiftregistret Trin 3: Indstil urpind højt, og fortæl skifteskiftet at læse den aktuelle datapindværdi

Alle andre værdier, der aktuelt er i skiftregistret, flyttes over med 1 sted, hvilket giver plads til datapinnens aktuelle logiske værdi

Trin 4: Indstil urpinden lav, og gentag trin 2 og 3, indtil alle data er blevet sendt til skiftregistret.

Urstiften skal indstilles lav, før der skiftes til den næste dataværdi. Ved at skifte denne pin mellem høj og lav er det, der skaber den "urpuls", som skiftregistret skal vide, når man skal gå videre til det næste trin i processen

Trin 5: Sæt låsen højt

Dette fortæller skiftregistret at tage alle de data, der er blevet flyttet ind, og bruge det til at aktivere output -benene. Det betyder, at du ikke vil se data, da de rykker ind; ingen ændring i udgangsstifterne vil ske, før låsen er sat højt

Trin 6: Indstil Aktiver output højt

  • Der vil ikke være nogen pinoutput, før Enable Output er indstillet til høj, uanset hvad der sker med de andre tre styrepinde.
  • Denne pin kan altid stå højt, hvis du ønsker det

Der er to pins, du kan bruge til cascading, Os og Os1. Os er for hurtigt stigende ure og Os1 er for langsomt stigende ure. Sæt denne pin fast i datapinden i det næste skiftregister, og overløbet fra denne chip vil blive indtastet i den næste.

Adressering af displayet

I eksempelprogrammet har jeg oprettet en matrix på 8 bytes kaldet row_buffer . Hver byte svarer til en række i 8x8 displayet, række 0 er den nederste og række 7 er den øverste. Den mindst betydende bit af hver række er til højre, den mest betydningsfulde bit til venstre. Ændring af displayet er lige så let som at skrive en ny værdi til det datamatrix, afbrydelsesrutinen sørger for at opdatere displayet.

Programmering

Programmering vil ikke blive diskuteret i detaljer her. Jeg vil advare dig om ikke at bruge et DAPA -programmeringskabel, da jeg tror, du ikke vil være i stand til at programmere chippen, når den kører ved 12MHz. Alle andre standardprogrammører skal fungere (STK500, MKII, Dragon, Parallel/Serial programmerere osv.). Sikringer: Sørg for at programmere sikringerne til at bruge 12MHz crystalhfuse: 0xC9lfuse: 0xEF

I aktion

Når du har programmeret chippen, skal displayet rulle et "Hej verden!". Her er en video af LED -matrixen i handlinger. Videokvaliteten er temmelig lav, da jeg lavede dette med mit digitale kameras videofunktion og ikke en ordentlig video eller webcam.

Trin 5: Modulære koncepter

Modulære koncepter
Modulære koncepter
Modulære koncepter
Modulære koncepter
Modulære koncepter
Modulære koncepter
Modulære koncepter
Modulære koncepter

Dette projekt er skalerbart. Den eneste sande begrænsende faktor er, hvor meget strøm din strømforsyning kan levere. (Den anden virkelighed er, hvor mange lysdioder og registerskiftere du har til rådighed).

Matematik

Jeg kører LED'erne ved omkring 15mA (5V-1.8vDrop/220ohms = 14.5mA). Det betyder, at jeg kan køre op til 33 kolonner med mic2981 -driveren (500mA/15mA = 33,3). Delt med 8 kan vi se, at dette giver os mulighed for at sammenstille 4 skiftregistre. Overvej også, at du ikke behøver at have alle 32 kolonner strakt fra venstre mod højre. Du kan i stedet oprette et 16x16 array, der er kablet på samme måde som et 8x32 array. Dette ville blive løst ved at flytte i 4 bytes …. de to første ville skifte helt til lysdioderne i den 9. række, de to andre bytes ville skifte til den første række. Begge rækker ville blive hentet med en nål på rækkeføreren.

Kaskaderegistreringsregistre

De anvendte skifteregistre er kaskaderegistreringsregister. Det betyder, at når du skifter i data, vises overløbet på Os -pin. Det bliver meget nyttigt, da et sæt skiftregistre kan forbindes til hinanden, Os pin til Data pin, tilføjelse af 8 kolonner med hver ny chip. mikrokontrolleren. "Kaskade" -effekten oprettes, når Os i det første skiftregister er forbundet til datapinden i den anden. Programmeringen skal ændres for at afspejle det øgede antal kolonner. Både bufferen, der gemmer informationen, og den funktion, der flytter oplysninger ind for hver kolonne, skal opdateres for at afspejle det faktiske antal kolonner. En skematisk af dette er givet nedenfor som et eksempel.

Flere række drivere

Rækkedriveren (mic2981) kan levere strøm nok til at køre 32 kolonner. Hvad hvis du vil have mere end 32 kolonner? Det bør være muligt at bruge flere række drivere uden at bruge flere mikrokontroller pins. Vi har brug for række drivere til at få nok strøm til at tænde lysdioderne. Hvis du bruger flere kolonner, end det er muligt at tænde ad gangen, kan tilføjelsesrækkedrivere levere den nødvendige strøm. De samme inputstifter fra mikrokontrolleren bruges, så det er ikke nødvendigt at ændre scanningen af rækkerne. Med andre ord kontrollerer hver driver rækkerne for en 8x32 blok. Selvom 64 kolonner kan have den samme FYSISKE rækkeplacering, deler vi rækkebusserne i to ved hjælp af en driver til de 8 rækker i de første 32 kolonner og en anden driver til de 8 rækker i de anden 32 kolonner og så videre. En skematisk af dette er givet nedenfor som et eksempel. Potentielle fejltrin: 1. Brug ikke flere række -drivere med samme antal kolonner. Hvis du gør det, ville det betyde, at hver skiftregistreringsstift ville køre mere end én LED ad gangen. Du skal have et sæt med 8 modstande (3k3) for hver række driver, et sæt til flere række drivere virker ikke, da det ikke giver den nødvendige strøm til at skifte portene.

For eksempel

Jeg besluttede at udvide den matrix, jeg byggede tidligere. Jeg har tilføjet yderligere 7 rækker til i alt 15, da det er alt, hvad jeg kan passe på dette protoboard. Jeg fandt også lige ud om en konkurrence, som Instructables laver kaldet "Let it Glow". Her er en video af mit syn på det. Endnu en gang gør det digitale kamera, jeg plejede at tage videoen, det ikke retfærdighed. Dette ser godt ud for det menneskelige øje, især hvor alle lysdioder blinker, men ser ikke nær så godt ud i videoen. Nyd: Kildekode til denne større skærm er inkluderet nedenfor.

Trin 6: Konklusion

Mulige tilføjelser

I2CI har efterladt stikkene Two Wire Interface (I2C) ubrugte i dette design. Der er flere interessante udsigter, der kan bruge disse to pins. Tilføjelse af en I2C EEPROM giver mulighed for lagring af meget større meddelelser. Der er også udsigt til at designe programmering til at gøre mega8 til en I2C -kompatibel skærmdriver. Dette ville åbne op for muligheden for at have en USB -aktiveringsenhed til at vise data på din LED -array ved at føre den over I2C -bussen. Der er mange pins tilbage, der kan bruges til knapper eller en IR -modtager. Dette ville gøre det muligt for programmer at blive programmeret ind via et menusystem. Display Til denne instruktive implementerede jeg kun et par displayfunktioner. Den ene skriver bare tegn til displayet, den anden ruller tegn ind på displayet. Den vigtige ting at huske er, at det, du ser i lysene, er repræsenteret i et dataserie. Hvis du finder på spaltemåder til at ændre data array, vil lysene ændre sig på samme måde. Nogle fristende muligheder inkluderer at oprette en grafmåler ud af kolonnerne. Dette kan bruges som en signalanalysator med et stereoanlæg. Rulning kan implementeres oppefra og ned eller nedefter, selv fra venstre mod højre. Held og lykke hav det sjovt!

Trin 7: Opfølgning

Opfølgning
Opfølgning
Opfølgning
Opfølgning
Opfølgning
Opfølgning
Opfølgning
Opfølgning

Efter at have ladet controller -kredsløbet sidde i brødbrættet i flere måneder, designede og ætsede jeg endelig et par printkort for at sætte denne prototype sammen. Alt fungerede fantastisk, jeg tror ikke, der var noget, jeg ville have gjort anderledes.

Kretskort funktioner

  • Skiftregistre er på separate tavler, der kan kobles sammen med daisy for at øge skærmens størrelse.
  • Controller board har sin egen strømregulator, så dette kan drives af enhver strømkilde, der giver 7v-30v (9v batteri eller 12v bænkforsyning fungerer begge fint for mig).
  • 6 -benet ISP -header inkluderet, så mikrokontrolleren kan omprogrammeres uden at fjerne den fra kortet.
  • 4-benet header tilgængelig til fremtidig brug af I2C-bussen. Dette kan bruges til en eeprom til at gemme flere meddelelser eller endda gøre dette til en slaveenhed, der styres af en anden mikrokontroller (RSS -ticker nogen?)
  • 3 øjeblikkelige trykknapper er inkluderet i designet. Jeg kan justere firmwaren i fremtiden for at inkludere brugen af disse knapper.

montage

Giv mig plexiglas, vinkelbeslag, 6x32 maskinskruer, møtrikker og skiver, samt et hanesæt til gevindhuller, og jeg kan skabe hvad som helst.

Anden pris i Let It Glow!

Anbefalede: