INHOUDSOPGAWE:

LED -matriks met skofregisters: 7 stappe (met foto's)
LED -matriks met skofregisters: 7 stappe (met foto's)

Video: LED -matriks met skofregisters: 7 stappe (met foto's)

Video: LED -matriks met skofregisters: 7 stappe (met foto's)
Video: Узнав это СЕКРЕТ, ты никогда не выбросишь пластиковую бутылку! ТАКОГО ЕЩЕ НИКТО НЕ ВИДЕЛ! 2024, November
Anonim
LED -matriks met behulp van skuifregisters
LED -matriks met behulp van skuifregisters
LED -matriks met behulp van skuifregisters
LED -matriks met behulp van skuifregisters
LED -matriks met behulp van skofregisters
LED -matriks met behulp van skofregisters

Hierdie instruksies is bedoel om 'n meer volledige verduideliking te wees as ander wat aanlyn beskikbaar is. Dit bied veral meer hardeware -verduideliking as wat beskikbaar is in die LED Marquee wat deur led555 voorgeskryf kan word.

Doelwitte

Hierdie instruksies bied die konsepte aan wat verband hou met skofregisters en hoë kantbestuurders. Deur hierdie konsepte te illustreer met 'n 8x8 LED -matriks, hoop ek om u die nodige gereedskap te gee om aan te pas en uit te brei na die grootte en uitleg wat u projek benodig.

Ervaring en vaardighede

Ek beoordeel dat hierdie projek van medium moeilikheid is:

  • As u reeds ervaring het met die programmering van mikrobeheerders en om met LED's te werk, behoort hierdie projek vir u redelik maklik te wees om te voltooi en na groter ligreeks te skaal.
  • As u eers met mikrobeheerders begin en 'n LED of twee flikker, moet u hierdie projek kan voltooi met hulp van ons vriend google.
  • As u min of geen ervaring met mikrobeheerders of programmering het nie, is dit waarskynlik verder as wat u sou wou onderneem. Probeer 'n paar ander beginnersprojekte en kom terug as u meer ervaring het met die skryf van programme vir mikrobeheerders.

Vrywaring en krediet

Eerstens is ek nie 'n elektriese ingenieur nie. As u iets sien wat verkeerd is, of nie 'n goeie praktyk is nie, laat weet my dan, dan sal ek dit regstel, op eie risiko! U moet weet wat u doen, of u kan u rekenaar, u mikrobeheerder en selfs uself beskadig. Ek het baie geleer van die internet, veral van die forums op: https://www.avrfreaks.net 'n lettertipe wat by die ks0108 universele C -biblioteek gekom het. Kyk hier:

Stap 1: Onderdele

Onderdele lys

Algemene onderdele

Om 'n 8x8 rooster van LED's te maak en dit te beheer, benodig u:

  • 64 LED's van u keuse
  • 8 Weerstands vir die LED's
  • 1 Skuifregister vir die kolomme
  • 1 Bestuurderreeks vir die rye
  • 8 Weerstands om die bestuurderreeks oor te skakel
  • 1 mikrobeheerder
  • 1 klokbron vir mikrobeheerder
  • 1 prototipe bord
  • 1 kragtoevoer
  • Aansluitdraad

Spesifieke onderdele wat hier gebruik word

Vir hierdie instruksies het ek die volgende gebruik:

  • 64 groen LED's (Mouser-onderdeelnr. 604-WP7113GD)
  • 8 220ohm 1/4 watt weerstande vir die LED's (Mouser-onderdeelnr. 660-CFS1/4CT52R221J)
  • 1 HEF4794 LED-bestuurder met skofregister (Mouser-onderdeelnr. 771-HEF4794BPN)
  • 1 mikrofoon 2981 hoëspanning hoëstroombronbestuurder-reeks (Digikey-onderdeelnr. 576-1158-ND)
  • 8 3.3kohm 1/4 watt weerstande om die bestuurderreeks te skakel (Radio Shack-deel #271-1328)
  • 1 Atmel ATmega8 mikrokontroller (Mouser-onderdeelnr. 556-ATMEGA8-16PU)
  • 1 kristal van 12 MHz vir die bron van die mikrokontroleur (Mouser-onderdeelnr. 815-AB-12-B2)
  • 1 prototipe bord van 2200 gate (Radio Shack-deel #276-147)
  • Omskakelde ATX -kragtoevoer: sien hierdie instruksies
  • Soliede kern 22-awg-aansluitdraad (Radio Shack-deel #278-1221)
  • Soldeerlose broodbord (Radio Shack-deel #276-169 (nie meer beskikbaar nie, probeer: 276-002)
  • AVR Dragon (Mouser-onderdeelnr. 556-ATAVRDRAGON)
  • Dragon Rider 500 deur Ecros Technologies: sien hierdie instruksies

Aantekeninge aangaande onderdele

Ry- en kolombestuurders: Dit is waarskynlik die moeilikste deel van hierdie projek om die ry- en kolombestuurders te kies. Eerstens dink ek nie dat 'n standaard 74HC595 -skofregister hier 'n goeie idee is nie, omdat dit nie die tipe stroom wat ons deur die LED's wil stuur, kan hanteer nie. Dit is die rede waarom ek die HEF4794 -bestuurder gekies het, aangesien dit die huidige huidige maklik kan laat sak as al 8 LED's in een ry aangeskakel is. Die skofregister is aan die onderkant (die grondpen van die leds). Ons benodig 'n rybestuurder wat genoeg stroom kan verskaf om verskeie kolomme saam te snoer. Die mic2981 kan tot 500mA lewer. Die enigste ander deel wat ek gevind het wat hierdie taak verrig, is die UDN2981 (digikey-onderdeelnr. 620-1120-ND), wat dieselfde deel van 'n ander vervaardiger is. Stuur vir my 'n boodskap as u weet van ander bestuurders aan die hoë kant wat goed in hierdie toepassing sou werk. LED-matriks: hierdie matriks is 8x8 omdat die ry- en kolombestuurders elk 8 penne het. 'N Groter LED -skikking kan gebou word deur verskeie matrikse saam te snoer en sal in die stap "modulêre konsepte" bespreek word. As u 'n groot verskeidenheid wil hê, moet u al die benodigde dele tegelyk bestel. Daar is 8x8, 5x7 en 5x8 LED -matrikse in 'n gerieflike pakket. Dit moet maklik wees om 'n selfmatriks te vervang. Ebay is 'n goeie bron hiervan. Mouser het ongeveer 5x7 eenhede beskikbaar, soos onderdeelnr. 604-TA12-11GWA. Ek het goedkoop groen LED's gebruik, want ek speel net en geniet dit. Deur meer te spandeer op hoë helderheid, kan LED's met 'n hoë doeltreffendheid 'n baie skouspelagtiger vertoning lewer … dit is egter goed genoeg vir my! Beheer hardeware: Die matriks word beheer deur 'n Atmel AVR-mikrobeheerder. Hiervoor benodig u 'n programmeerder. Omdat ek prototipeer, gebruik ek die Dragon Rider 500, waarvoor ek die instruksies vir montering en gebruik geskryf het. Dit is 'n maklike instrument vir prototipering, en ek beveel dit sterk aan.

Stap 2: Die matriks

Die matriks
Die matriks
Die matriks
Die matriks
Die matriks
Die matriks

Ek sal my eie LED -matriks vir hierdie projek bou met behulp van 5 mm -LED's en 'n prototipe bord van Radio Shack. Daar moet op gelet word dat u 8x8 dot matrix led modules uit verskillende bronne kan koop, insluitend ebay. Hulle moet baie goed werk met hierdie instruksies.

Konstruksie oorwegings

Belyning Die LED's moet in lyn gebring word sodat hulle in dieselfde hoek in dieselfde rigting wys. Ek het gevind dat die maklikste opsie vir my was om die liggaam van die LED teen die bord vas te hou en dit daar vas te hou met 'n klein stukkie plexiglas en 'n klem. Ek het 'n paar LED's 'n paar sentimeter van die ry waaraan ek gewerk het, aangebring om seker te maak dat die plexiglas parallel is met die prototipe bord. Rye en kolomme Ons moet 'n gemeenskaplike verbinding vir elke ry sowel as elke kolom hê. As gevolg van ons ry- en kolombestuurderkeuse, moet ons die anode (positiewe leiding van die LED) deur ry verbind en die katode (negatiewe leiding van die LED) met kolom verbind. Control Wires Vir hierdie prototipe gebruik ek 'n soliede kern (enkelgeleier) aansluitdraad. Dit sal baie maklik wees om met 'n soldeerlose broodbord te koppel. Gebruik gerus 'n ander aansluitingstipe wat by u projek pas.

Die bou van die matriks

1. Plaas die eerste kolom LED's in die prototipe bord. Kontroleer of u polariteit vir elke LED korrek is; dit sal baie moeilik wees om op te los as u dit later besef. Soldeer albei die LED's na die bord. Kontroleer of hulle korrek in lyn is (nie in vreemde hoeke nie) en knip die katodeleiers af. Maak seker dat u nie die anodekabel knip nie; ons sal dit later nodig hê, sodat u dit net kan wys. Verwyder die isolasie van 'n stuk soliede kerndraad. Soldeer hierdie stuk draad aan elke katode reg op boordvlak.

  • Ek het dit aan elke kant aangepak en daarna teruggegaan en 'n bietjie soldeer by elke aansluiting bygevoeg.
  • Hierdie draad moet verby u laaste LED loop om 'n maklike koppelvlak te verseker wanneer ons beheerdrade byvoeg.

5. Herhaal dele 1-4 totdat u alle LED's in plek het en alle kolombusse gesoldeer is. Om 'n rybus te skep, buig verskeie van die anodeleiers in 'n hoek van 90 grade sodat hulle die ander anode -leidings in dieselfde ry raak.

  • Hieronder is gedetailleerde foto's hiervan.
  • Pas op dat hierdie nie in aanraking kom met die kolombusse nie, wat 'n kortsluiting veroorsaak.

7. Soldeer die leidings by elke aansluiting en knip die oortollige anodedrade af.

Laat die laaste anode verby die laaste LED steek. Dit sal gebruik word om die rybestuurder se drade aan te sluit

8. Herhaal dele 6 en 7 totdat alle rye se busse gesoldeer is. Heg beheer drade.

  • Ek gebruik rooi soliede kerndraad vir die rye en swart vir die kolomme.
  • Verbind een draad vir elke kolom en een vir elke ry. Dit kan maklik aan die einde van elke bus gedoen word.

Belangrik

Hierdie LED -matriks het geen stroombeperkende weerstande nie. As u dit sonder weerstande toets, verbrand u waarskynlik u LED's, en al hierdie werk is verniet.

Stap 3: Die beheermateriaal

Die beheer hardeware
Die beheer hardeware
Die beheer hardeware
Die beheer hardeware

Ons moet die kolomme en die rye van ons LED -matriks beheer. Die matriks is so saamgestel dat die anodes (spanningkant van die LED) die rye vorm, en die katodes (grondkant van die LED) die kolomme vorm. Dit beteken dat ons rybestuurder stroom moet kry en ons kolombestuurder dit moet sink. Om op penne te spaar, gebruik ek 'n skofregister om die kolomme te beheer. Op hierdie manier kan ek 'n byna onbeperkte aantal kolomme met net vier mikrobeheerspennetjies beheer. Dit is moontlik om slegs drie te gebruik as die Enable Output -pen direk aan spanning gekoppel is. Ek het die HEF4794 LED -bestuurder met skofregister gekies. Dit is 'n beter opsie as 'n standaard 74HC595, aangesien dit die huidige huidige maklik kan laat sak as al 8 LED's tegelyk aan is. Op die hoë kant (huidige bron vir die rye) gebruik ek 'n mic2981. Die skematiese toon 'n UDN2981, ek glo dat hierdie twee uitruilbaar is. Hierdie bestuurder kan tot 500mA se stroom voorsien. Omdat ons slegs 1 ry op 'n slag ry, bied dit baie geleenthede vir uitbreiding, tot 33 kolomme vir hierdie chip (meer hieroor in die stap "modulêre konsepte").

Die bou van die beheerhardeware

Vir hierdie instruksies het ek pas hierdie kringbord aangebring. Vir 'n meer permanente oplossing, wil u u eie printplaat ets of prototipe bord gebruik. Rybestuurder

  • Plaas die mic2981 (of UDN2981) in die broodbord
  • Koppel pen 9 aan spanning (dit is verwarrend in die skema)
  • Koppel pen 10 aan die grond (dit is verwarrend in die skema)
  • plaas 3k3-weerstande wat met penne 1-8 verbind word
  • Koppel vanaf poort D van die ATmega8 (PD0-PD8) aan die 8 weerstande
  • Koppel die 8 ry-beheerdrade van die LED-matriks aan penne 11-18 (let op dat ek die laagste ry LED's aan pen 18 en die hoogste ry aan pen 11 gekoppel het).

2. Kolombestuurder

  • Plaas die hef4794 in die broodbord
  • Koppel pen 16 aan die spanning
  • Verbind pen 8 met die grond
  • Koppel 220 ohm weerstande aan penne 4-7 en 11-14.
  • Koppel die 8 kolom -beheerdrade van die LED -matriks aan die 8 weerstande wat u pas gekoppel het.
  • Koppel Pin1 (grendel) aan PC0 van die ATmega8
  • Koppel Pin2 (data) aan PC1 van die ATmega8
  • Koppel Pin3 (klok) aan PC2 van die ATmega8
  • Koppel Pin15 (Enable Output) aan op PC3 van die ATmega8

3. Klok Crystal

Koppel 'n kristal van 12 MHz en laai kapasitors soos in die skema aangedui

4. ISP

Koppel die programmeerkop soos aangedui in die skema

5. Filtreringskondensator en optrekweerstand

  • Dit is die beste om die spanning wat aan die ATmega8 verskaf word, te filter. Gebruik 'n 0.1uf -kondensator tussen pen 7 en 8 van die ATmega8
  • Die resetpen moet nie dryf nie, aangesien dit ewekansige herstellings kan veroorsaak. Gebruik 'n weerstand om dit aan spanning te koppel; enigiets van ongeveer 1k behoort goed te wees. Ek het 'n 10k -weerstand in die skema gebruik.

6. Maak seker dat u +5v gereguleerde krag gebruik. Dit is aan u om die reguleerder te ontwerp.

Stap 4: sagteware

Die truuk

Ja, soos alles, is daar 'n truuk. Die truuk is dat daar nooit meer as 8 LED's tegelyk verlig is nie. Om dit goed te laat werk, is 'n bietjie slim programmering nodig. Die konsep wat ek gekies het, is om 'n timeronderbreking te gebruik. Hier is hoe die skermonderbreking in eenvoudige Engels werk:

  • Die tydteller tel tot op 'n sekere punt, wanneer die onderbrekingsdiensroetine bereik word.
  • Hierdie roetine besluit watter ry die volgende een is wat vertoon moet word.
  • Die inligting vir die volgende ry word uit 'n buffer opgesoek en in die kolombestuurder ingeskuif (hierdie inligting word nie "vasgemaak" nie, sodat dit nog nie vertoon word nie).
  • Die rybestuurder is afgeskakel, geen LED's brand tans nie.
  • Die kolombestuurder is "vasgemaak", en in die inligting wat ons in twee stappe gelede verskuif het, word die huidige inligting vertoon.
  • Die rybestuurder verskaf dan stroom aan die nuwe ry wat ons vertoon.
  • Die onderbreekdiensroetine eindig en die program keer terug na normale vloei tot die volgende onderbreking.

Dit gebeur baie vinnig. Die onderbreking word elke 1 mSek. Dit beteken dat ons die hele skerm ongeveer elke 8 mSek. Dit beteken 'n vertoningsnelheid van ongeveer 125Hz. Daar is 'n mate van kommer oor die helderheid, want ons gebruik die LED's in werklikheid op 'n 1/8 -siklus (hulle is 7/8 van die tyd af). In my geval kry ek 'n voldoende helder skerm sonder dat dit sigbaar flikker. Die volledige LED -skerm word in 'n skikking uiteengesit. Tussen die onderbrekings kan die skikking verander word (let op atomisiteit) en sal tydens die volgende onderbreking op die skerm verskyn. hiervan instruerbaar. Ek het die bronkode (geskryf in C en saamgestel met AVR-GCC) sowel as die hex-lêer ingesluit om direk te programmeer. Ek het kommentaar gelewer op al die kode, sodat u hierdie kan gebruik om vrae op te los oor hoe om data in die skofregister te kry en hoe die ryverversing werk. Let daarop dat ek 'n lettertipe -lêer gebruik ks0108 universele C -biblioteek. Die biblioteek kan hier gevind word:

Skuifregisters: hoe

Ek het besluit om 'n bietjie by te voeg oor hoe om met skofregisters te programmeer. Ek hoop dat dit dinge duidelik maak vir diegene wat nog nie saam met hulle gewerk het nie. Wat hulle doen Skuifregisters neem 'n sein van een draad af en stuur die inligting na baie verskillende penne. In hierdie geval is daar een datadraad wat die data opneem en 8 penne wat beheer word, afhangende van watter data ontvang is. Om dinge beter te maak, is daar 'n uitgangspunt vir elke skofregister wat aan die invoerpen van 'n ander skofregister gekoppel kan word. Dit word 'cascading' genoem en maak die uitbreidingspotensiaal 'n byna onbeperkte vooruitsig.

  • Grendel - Hierdie pen vertel die skofregister wanneer dit tyd is om oor te skakel na nuut ingevoerde data
  • Data - Die 1's en 0's wat die skofregister vertel, watter penne om te aktiveer, op hierdie pen ontvang word.
  • Klok - Dit is 'n pols wat van die mikrobeheerder gestuur word, wat die skofregister vertel om 'n data -lesing te neem en na die volgende stap in die kommunikasieproses te gaan
  • Aktiveer uitvoer - Dit is 'n aan/uit -skakelaar, Hoog = Aan, Laag = Uit

Laat u dit doen: Hier is 'n ongelukskursus in die werking van die bogenoemde bedieningspenne: Stap 1: Stel grendel, data en klok laag

Deur die grendel laag te stel, word die skofregister wat ons op die punt staan om dit te skryf, vertel

Stap 2: Stel die datapennet in op die logiese waarde wat u na die verskuiwingsregister wil stuur

Alle ander waardes wat tans in die verskuiwingsregister is, sal met 1 plek oorgaan, wat ruimte maak vir die huidige logiese waarde van die datapennetjie

Stap 4: Stel die klokpen laag en herhaal stap 2 en 3 totdat alle data na die skofregister gestuur is.

Die klokpen moet laag gestel word voordat u na die volgende datawaarde kan verander. Deur hierdie pen tussen hoog en laag te wissel, is dit die 'klokpuls' wat die skofregister moet weet wanneer dit na die volgende stap in die proses moet gaan

Stap 5: Stel grendel hoog

Dit vertel die skofregister om al die data wat ingeskuif is, op te neem en dit te gebruik om die uitsetpenne te aktiveer. Dit beteken dat u nie data sal sien terwyl dit inskuif nie; geen verandering in die uitsetpenne sal plaasvind totdat die grendel hoog is nie

Stap 6: Stel Aktiveer uitvoer hoog

  • Daar sal geen penuitset wees totdat die Enable Output op hoog gestel is nie, ongeag wat met die ander drie bedieningspenne gebeur.
  • Hierdie pen kan altyd hoog gelaat word as u wil

Daar is twee penne wat u vir waterval kan gebruik, Os en Os1. Os is vir vinnig stygende horlosies en Os1 is vir stadige stygende horlosies. Haak hierdie pen aan die data -pen van die volgende skofregister, en die oorloop van hierdie chip sal in die volgende ingeskryf word.

Die aanspreek van die skerm

In die voorbeeldprogram het ek 'n skikking van 8 grepe geskep met die naam row_buffer . Elke greep stem ooreen met een ry van die 8x8 -skerm, ry 0 is die onderkant en ry 7 is die bokant. Die minste belangrike stuk van elke ry is aan die regterkant, die belangrikste bietjie aan die linkerkant. Dit is net so maklik om die skerm te verander as om 'n nuwe waarde vir die data -skikking te skryf; die onderbrekingsdiensroetine sorg vir die opdatering van die skerm.

Programmering

Die programmering sal nie hier in detail bespreek word nie. Ek sal u waarsku om nie 'n DAPA -programmeringskabel te gebruik nie, aangesien ek glo dat u nie die chip kan programmeer sodra dit op 12MHz werk nie. Alle ander standaard programmeerders moet werk (STK500, MKII, Dragon, Parallel/Serial programmeerders, ens.).

In aksie

Sodra u die chip geprogrammeer het, moet die skerm 'Hallo wêreld' blaai. Hier is 'n video van die LED -matriks in aksies. Die videokwaliteit is redelik laag, want ek het dit gemaak met die videofunksie van my digitale kamera en nie die regte video of webkamera nie.

Stap 5: Modulêre konsepte

Modulêre konsepte
Modulêre konsepte
Modulêre konsepte
Modulêre konsepte
Modulêre konsepte
Modulêre konsepte
Modulêre konsepte
Modulêre konsepte

Hierdie projek is skaalbaar. Die enigste ware beperkende faktor is hoeveel stroom u kragtoevoer kan lewer. (Die ander realiteit is hoeveel LED's en registerverskuiwers u beskikbaar het).

Wiskunde

Ek bestuur die LED's teen ongeveer 15mA (5V-1.8vDrop/220ohms = 14.5mA). Dit beteken dat ek tot 33 kolomme kan bestuur met die mic2981 -bestuurder (500mA/15mA = 33,3). Verdeel deur 8 kan ons sien dat dit ons toelaat om 4 skofregisters saam te snoer. Hou ook in gedagte dat u nie al 32 kolomme van links na regs hoef te laat rek nie. U kan eerder 'n 16x16 -skikking skep wat op dieselfde manier bedraad is as 'n 8x32 -skikking. Dit sal aangespreek word deur in 4 grepe in te skuif …. die eerste twee sou in die 9de ry tot by die LED's skuif, die tweede twee grepe sou in die eerste ry inskuif. Beide rye word verkry deur een pen op die rybestuurder.

Cascading Shift Registers

Die skofregisters wat gebruik word, is watervalende skofregisters. Dit beteken dat wanneer die data verander, die oorloop op die Os -pen verskyn. Dit word baie handig, aangesien 'n stel skofregisters met mekaar verbind kan word, Os -pen na dataspeld, en 8 kolomme by elke nuwe chip kan voeg. die mikrobeheerder. Die "watervalende" effek word geskep wanneer die Os van die eerste skofregister gekoppel is aan die Data -pen van die tweede. Die programmering moet verander word om die groter aantal kolomme te weerspieël. Beide die buffer wat die inligting stoor en die funksie wat inligting vir elke kolom inskuif, moet opgedateer word om die werklike aantal kolomme weer te gee.

Veelvuldige rybestuurders

Die rybestuurder (mic2981) kan genoeg stroom kry om 32 kolomme te dryf. Wat as u meer as 32 kolomme wil hê? Dit behoort moontlik te wees om veelvuldige rybestuurders te gebruik sonder om meer mikrokontrole -penne te gebruik. Ons benodig die rybestuurders om genoeg stroom te kry om die LED's aan te steek. As u meer kolomme gebruik as wat u op een slag kan aansteek, kan addisionele rybestuurders die benodigde stroom voorsien. Dieselfde invoerpenne van die mikrobeheerder word gebruik, sodat die skandering van die rye nie hoef te verander nie. Met ander woorde, elke bestuurder beheer die rye vir 'n 8x32 -blok. Alhoewel 64 kolomme dieselfde FISIESE ryplasing kan hê, verdeel ons die rybusse in twee, met behulp van een bestuurder vir die 8 rye van die eerste 32 kolomme, en 'n tweede bestuurder vir die 8 rye van die tweede 32 kolomme en so meer. 'N Skematiese weergawe hiervan word hieronder as 'n voorbeeld gegee. Potensiële foutstappe: 1. Moenie veelvuldige rybestuurders met dieselfde aantal kolomme gebruik nie. As u dit doen, beteken dit dat elke skakelregisterpen meer as een LED op 'n slag sal bestuur. U moet 'n stel van 8 weerstande (3k3) vir elke rybestuurder hê, een stel vir meerrybestuurders sal nie werk nie, aangesien dit nie die nodige stroom sal bied om die hekke te skakel nie.

Byvoorbeeld

Ek het besluit om uit te brei op die matriks wat ek vroeër gebou het. Ek het nog 7 rye bygevoeg vir 'n totaal van 15, want dit is al wat ek op hierdie protobord kan pas. Hier is 'n video van my mening daaroor. Weereens doen die digitale kamera waarmee ek die video geneem het, dit nie reg nie. Dit lyk baie goed vir die menslike oog, veral waar al die LED's flikker, maar lyk nie naastenby so goed in die video nie. Geniet: Bronkode vir hierdie groter skerm is hieronder ingesluit.

Stap 6: Gevolgtrekking

Moontlike toevoegings

I2CI het die twee draadinterface (I2C) penne ongebruik in hierdie ontwerp gelaat. Daar is verskeie interessante vooruitsigte wat hierdie twee penne kan gebruik. Deur 'n I2C EEPROM by te voeg, kan u baie groter boodskappe stoor. Daar is ook die vooruitsig om programme te ontwerp om die mega8 in 'n I2C -versoenbare skermbestuurder te verander. Dit maak die moontlikheid oop om 'n USB -toestel te hê om data op u LED -skikking te vertoon deur dit oor die I2C -bus te plaas. Input Daar is baie penne oor wat gebruik kan word vir knoppies of 'n IR -ontvanger. Hierdeur kan boodskappe via 'n spyskaartstelsel geprogrammeer word. Display Vir hierdie instruksies het ek slegs 'n paar vertoningsfunksies geïmplementeer. Die een skryf net karakters na die skerm, die ander rol karakters na die skerm. Die belangrikste ding om te onthou is dat wat u in die ligte sien, in 'n data -skikking voorgestel word. As u met maniere om die data -skikking te werk kom, sal die ligte op dieselfde manier verander. Dit kan gebruik word as 'n seinontleder met 'n stereo. Blaai kan van bo na onder of van onder na bo, selfs van links na regs, geïmplementeer word. Sterkte, geniet dit!

Stap 7: Opvolg

Volg op
Volg op
Volg op
Volg op
Volg op
Volg op
Volg op
Volg op

Nadat ek die beheerkring vir maande in die broodbord laat sit het, het ek uiteindelik 'n paar stroombane ontwerp en geëts om hierdie prototipe aanmekaar te sit. Alles het goed afgeloop, ek dink nie daar is iets wat ek anders sou gedoen het nie.

Kringbordfunksies

  • Skuifregisters is op aparte borde wat daisy aan mekaar vasgeketting kan word om die skerm groter te maak.
  • Die beheerbord het sy eie kragreguleerder, sodat dit bestuur kan word deur enige kragbron wat 7v-30v voorsien (9v battery of 12v bankvoeding werk vir my net so goed).
  • 6 -pen ISP -kop ingesluit sodat die mikrobeheerder herprogrammeer kan word sonder om dit van die bord te verwyder.
  • 4-pins kop beskikbaar vir toekomstige gebruik van die I2C-bus. Dit kan vir 'n eeprom gebruik word om meer boodskappe te stoor of selfs om dit 'n slawe -toestel te maak wat deur 'n ander mikrobeheerder beheer word (RSS -teken vir iemand?)
  • 3 kort drukknoppies is by die ontwerp ingesluit. Ek kan die firmware in die toekoms aanpas om die gebruik van hierdie knoppies in te sluit.

Vergadering

Gee my plexiglas, hoekhakies, 6x32 masjienskroewe, moere en ringe, sowel as 'n kraan om gate te dra, en ek kan enigiets skep.

Tweede prys in die Let It Glow!

Aanbeveel: