Beruflich Dokumente
Kultur Dokumente
MatrizdeLED8X8(ParteII)Neoteo
MatrizdeLED8X8(ParteII)
35
35
TOP
EnlaentregaanteriorvimostodoelhardwarenecesarioparacrearunapequeamatrizdeLEDsquepudiera
ofrecercaracteresosmbolosfijosy,enunavancemsdediseo,mostrarunmensajeendesplazamiento,
dndotelaoportunidaddeutilizarloparamltiplesaplicaciones.LainclusindeunconectorICSPserfundamental
paragrabarrpidamenteelmicrocontroladorydisponeralinstantedemensajesdiferentesconsloorganizar
algunaslneasdelsoftwarenecesarioparasufuncionamiento.Desdevenderunvehculo,pasandoporlosclsicos
cartelesutilizadosenlosaeropuertosconelapellidodeunapersonaalaqueseesperayterminandoenundivertido
gadgetparaanunciarlasofertasdefindetemporada,loscartelespasamensajesestnenelABCconstructivo
detodoelectrnicoexperimentador.Todavanohicisteeltuyo?
Comomencionamosanteriormente,laconstruccindelhardwarequedarsometidaatueleccin,gustoyposibilidad
econmica.Comopudisteapreciarenlasimgenes,nosotrosoptamosporLEDsindividualesymontamosnuestro
desarrolloendosplacasbiendefinidas:unaexclusivaparalosLEDsyotraparaelrestodeloscomponentes
necesariosparaelcircuito.Laconstruccinnosquedcualsifueseunlibroquesepuedeabriralmedioydejaraldescubiertotodaslasconexiones.Estemtodo
nospermiteaccederrpidamenteacualquiersectordelhardwarepararealizarcorreccionesdeltimomomentoyreformasqueconeltiemposenosocurrarealizar
sobrelaconstruccininicial.Adems,lafabricacinrealizadasobreplacasuniversalespreagujereadasfacilitaanmslatareademodificacin,ampliaciny
correccindeldiseo.
MatrizdeLED8X8(ParteII)
http://www.neoteo.com/matrizdeled8x8parteii#prettyPhoto
1/8
18/2/2016
MatrizdeLED8X8(ParteII)Neoteo
Enlaimagenpuedesverclaramentelaspartesfundamentalesquecomponenelhardwarequehemosdecididomontar,consuscomponentesmsdestacados.Por
supuestoquelasconexionesdelladosoldadurasepresentanentodosestoscasosconvisiblessignosdeunaaparentefaltadeprolijidad.Esonodebeserun
condicionantealahoradelaconstruccinyaquenoestsfabricandouninstrumentodeelectromedicinanielmduloprincipaldeunsatlitedeaplicacionesmilitares.
No.Estamosaprendiendo,practicando,ensayando,transitandoelcaminodelaexperimentacinyeldesarrolloamateur.Serfantsticoymuybienvenidoquepuedas
construirtuspropioscircuitosimpresosdedoblefazenFR4,conmscaraantisoldanteyagujerosmetalizados,perodebesconsiderartambinquehaypersonasque
recinestnaprendiendoasoldaryseentusiasmanconestosproyectosoestnaquelloscasosenquelosrecursoseconmicosylosconocimientossonescasospara
llevarabuentrminounaplacadoblefazcomodebieraemplearestedesarrollo.
Losgruposdecablesestnmuybiendefinidoseindicadosenlaimagensuperior,dondesepuedenidentificarloscorrespondientesalascolumnas,lasfilas,laconexin
desdeelpuertoCdelPIChaciaelULN2803A,loscablesdealimentacinylosquellevanlainformacindelasfilasdesdeelpuertoBhacialostransistores.Deforma
menosvisible,pordetrsdelasconexionesdelasfilas,seencuentralalneadeconexindelaalimentacinconel7805,loscapacitoresdefiltrado(electrolticos)y
desacoplo(cermicos),lallaveinterruptoradealimentacinylosdiodosdeproteccincontralainversindepolaridad.Estoestantoparalaalimentacindesdela
bateracomoparalaentradadeenergadesdealgunaalimentacingeneral(12Voltsdelcoche)odesdeunafuenteconectadaalareddomiciliaria.
Comodatofinal,antesdededicarnosdellenoaexperimentarconelsoftware,terecomendamosinstalarelmicrocontroladorsobreunzcalodemodotalquepuedas
extraerlofcilmenteparasuprogramacin,encasodenodisponerdeunsistemagrabadordePICsquetrabajeconelmodoICSP(InCircuitSerialProgramming).En
nuestrocaso,conelgrabadorGTPUSB,loutilizamosenmodoICSP,cambiamoslneasdecomandosyhacemosmuchosensayossinmovilizarelPICdesuzcalo.
Recuerdaquesinorealizaslatareadeextraccinycolocacindemaneracuidadosa,puedesromperfcilmenteelzcalooarrancarunpindelPIC,hechoque
lamentarsmucho.Finalmente,unprecintoplsticoparasujetarlabateraalaplacaylisto!Aprogramarsehadicho!
Planteandoelsoftware
Unbuenplanteopreviodelprograma(esdecir,analizaryllevaraunpapellasideas)esunatareaobligadacuandovamosadesarrollarunsoftware,pormssencillo
queesteparezca.Porotrolado,debemosanalizarycontabilizardeantemanoelhardwarequedisponemosyloquepretendemosdel.Enelejemploquenos
http://www.neoteo.com/matrizdeled8x8parteii#prettyPhoto
2/8
18/2/2016
MatrizdeLED8X8(ParteII)Neoteo
queesteparezca.Porotrolado,debemosanalizarycontabilizardeantemanoelhardwarequedisponemosyloquepretendemosdel.Enelejemploquenos
convoca,podemosdeducirdemaneramuyclaraqueelpuertoBdelPICseencargardeentregarnoslosdatosqueveremosencadacolumnay,porsuparte,el
puertoCseencargardemoverydesplazarestosdatosaloanchodelapantallahastaellugarcorrectodondedebanserpresentados.
Utilizandolamismaimagendeejemplodelartculoanterior,nosencontramosquepararepresentarlaletraRdebemosactivaruncontadorquevayadesdeelborde
izquierdodelamatrizhaciaelbordederechoyqueenlaposicinN3(RC2)nosentregueelvalordecimal127,quesaldrdesdeelpuertoBeingresaratravsde
lasfilas.Luego,elcontadordelpuertoCavanzaralasiguienteposicinydesdeelpuertoBllegarelsiguientedato:elvalordecimal72.Deestaforma,elcontadordel
puertoCavanzarunaposicinaladerechayelpuertoBentregarotrodato,unoaunohastacompletarlasochoposiciones.Estemecanismo,ejecutadomuchas
vecesenunsegundo,nospermitirpercibirquelaletraRestquietaallyqueseformatodajuntaydeunasolavez.Sinembargo,elanlisisnosmuestra
quelohacecolumnaacolumnaamedidaqueelcontador(delpuertoC)avanzaunaposicin.
Enelsiguientevideopodemosvercmoseformalaletraocaracter,pasoapaso,concadaincrementodelasalidadelpuertoC.Enelcasodelasposicionesenqueno
existenLEDsencendidos(segnelejemplomostradohastaaqu),dentrodelarutinapreparadaespecialmenteparacrearelvideo,sehancolocadodatosenla
posicin128delpuertoB,esdecir,enelLEDsuperiorcorrespondienteacadacolumnanoutilizada(0,1y7).Elpropsitoessaberentodomomentolaactividad
delpuertoC.Conocerquvalorestomaacadapasoylascolumnasqueatraviesamientrasnopresentadatostilesenlamatriz.CuandoelpuertoBentregadatos,
estossemuestranenlacolumnacorrespondiente.Lavariacindevelocidadmostradaserfundamentalparadescubrirloqueannohabascomprendidoacercadel
funcionamientodeestamatriz.
Matriz 8X8 3
http://www.neoteo.com/matrizdeled8x8parteii#prettyPhoto
3/8
18/2/2016
MatrizdeLED8X8(ParteII)Neoteo
Elprograma
Loelemental,entonces,esdividireltrabajoentresbloquesquedebenestarperfectamentesincronizados:crearuncontadorparaqueelpuertoCavancedesde
elinicio(alaizquierdadelamatriz)hastaelfinal(aladerechadelamatriz),acadapasodelcontadordelpuertoCentregarporelpuertoBlosdatoscorrespondientes
acadacolumnayporltimo,ajustarlostiemposdelprogramaparaobtenerunfuncionamientocorrectosinparpadeosmolestosysimulandotenerunaimagenesttica
yfija.AlcontadordecolumnasloresolveremosmedianteunlazoFORNEXTde8ciclos,mientrasquealaobtencindelosdatosaentregarporelpuertoBser
medianteelconjuntodeinstruccionesDATA,RESTOREyREAD.
Naturalmente,aliniciodefiniremoselPICautilizarconlafrecuenciadeloscilador.Sideseasutilizarotrosmodeloscomoel16F877Aoel16F873A,debescorregiresta
primeralnea,aligualquesioptasporotrafrecuenciadecristal.Youtilicestoscomponentesporquelostenaamanotpuedesutilizaryexperimentarconotros
mientrasserespeteelcircuitoyelprincipiodefuncionamiento.Luegodeclaramoslasvariables,comosiempreentodoprograma,yllegamosallazoprincipalenla
etiquetaInicio,queesdondecomienzalaparteinteresantedelsistema.
LoprimeroesiniciarellazoFORNEXTparasaberqudatodeberemosirabuscaralainstruccinDATAencadavueltadelciclo.Observaquelamencionada
instruccinposeelosochovaloresqueutilizaremosparaformarelcarcterseleccionado(laletraR).Entonces,paraunvalorinicialdeceroenlavariableCONTADOR,
elpunteroRESTOREnosindicarquedebemostomarelprimervalorencontradoenDATA.EstevalorsecargarenlavariableLETRAmediantelainstruccinREAD.
Unavezobtenidoeldato,yasabemosquelavariableAtieneunvalorinicialiguala1yesosecargaralasalidadelpuertoC.Comocadatransistordarlingtondel
ULN2803Aseactivaconunestadoalto,seactivardirectamentelasalidaPORTC.0enestadoalto.RecordemosqueenBASICescribir1y%00000001enelpuerto
esexactamentelomismounaformaesdecimalylaotrabinariaperoambasseejecutarndelamismaforma.
ParaelcasodelpuertoB,encontramoselcaracter~antesdelavariableLETRA.EstecaracterespecialnosindicaquecargaremossobreFILA(lasalidadelpuerto
B)elcomplementodelosdatosquecontengalavariableLETRA.Porquhacemosesto?PorquealasalidadelpuertoBtenemostransistoresPNPyestosse
consideranactivosenestadobajo.Porlotanto,eldatodecimal127,quesera%011111111,saldrporelpuertoBcomo%100000000paradeestaformaactivarlos
7transistoresPNPcorrespondientesaRB0RB6.
Luegodeesto,incrementamoslavariableAmultiplicndolapor2ycontrolandoelmomentoenquelleguealfinaldelamatriz(bordederecho)conelcondicionanteIF
THEN.Aplicamosunretardoquenospermitaunavisinsinparpadeosylisto!Yatenemosnuestramatrizfuncionandoymostrandouncaracter(laletraR).
Comienzaeljuego
Loprimeroserhacerintermitenteeneltiempoelcarcterexhibido.Esdecir,podemoscrearundibujoconelsmbolodeSTOPoPAREquefuncionedeforma
intermitenteparautilizarlocomobalizaenelcoche,otambinpuedescrearungrficoconformadecoraznyhacerquefuncioneenformaintermitentebajounacamisa
semitraslcidaparademostrarleatuchicaqueelcorazntelateporella.Esdecir,paraentretenersehaymilesdeideasposibles,veamoscmolograrlo.
http://www.neoteo.com/matrizdeled8x8parteii#prettyPhoto
4/8
18/2/2016
MatrizdeLED8X8(ParteII)Neoteo
semitraslcidaparademostrarleatuchicaqueelcorazntelateporella.Esdecir,paraentretenersehaymilesdeideasposibles,veamoscmolograrlo.
LarealizacindetodoloquequierasmostrarsebasafundamentalmenteenlaconstruccindelosmapasdebitsqueseaplicarnenlainstruccinDATA.Luego,
haremosunasecuenciaFORNEXTparamostrarelsmboloyotramsparanomostrarnadaenlasalidadelpuertoB.Tambinpuedeserunabuenaideadiagramar
uncoraznmspequeoparasimularunavariacindetamaosentrecicloyciclo.Telijes,ellasserindenatuspies.
Matriz 8x8 4
0:07 / 0:07
Demaneramuysencilla,hemosagregadoalprogramaotrasecuenciadedatosenlainstruccinDATAyademsahoraapareceuncontadordetiempodeencendido
delsmboloyotrosegmentodeprogramadondeseapaganlospuertosysecolocaunretardodetiempoequivalentealqueduraelsmbolovisiblepero,enestecaso,
apagado.Volvemosadestacarlaimportanciadelaimaginacinalahoradedisearlossmbolosycaracteresautilizarenestetipodecarteles.Unaaplicacin
inteligenteesgarantadexitoaseguradoyporqunounaposiblefuentedeingresosextrascuandoalguienseacerqueaconsultartecuntolecobrasporconstruirle
uno.
http://www.neoteo.com/matrizdeled8x8parteii#prettyPhoto
5/8
18/2/2016
MatrizdeLED8X8(ParteII)Neoteo
Moviendoeltexto
Aqucomienzaloqueestabasesperando,aqucomienzalaaccindeverdad.Paradesplazaruntextodentrodeunamatrizdebemosaplicartodolovistohastaaquy
slomoverlo.Cmoserealizaesto?Muysencillo.PrimerocargasenlaseccindelainstruccinDATAtodoslosdatoscorrespondientesalasfilasquemostrars.
LuegogenerasunincrementodelavariableCONTADORacadacicloy,deestemodo,forzarsalpunteroRESTOREaqueleaunnuevodatoparaenviaralpuertoB.
Deestesencillomodo,habrscreadoelmovimientoentumatriz.
Matriz 8X8_5.avi
0:09 / 0:09
ObservaquelainstruccinREADsiempresedebecolocarenlapartemsinicialdelprograma.Podemosentoncescolocarunasolainstruccinovariasque
correspondanacadacaracterparamantenerordenadoelprograma.Adems,cadacaracterterminarenundatoigualaceroqueserelequivalenteadejarun
espacioentreletrayletra.Agregaremoscerosparagenerarespaciosentreelfinyeliniciodeunapalabrayelresultadoserelsiguientelistadodeprogramaque
correspondealvideoanterior:
http://www.neoteo.com/matrizdeled8x8parteii#prettyPhoto
6/8
18/2/2016
MatrizdeLED8X8(ParteII)Neoteo
Conclusin
AltextoquehemosgeneradolepuedesagregartodoloquelamemoriadelPICalcance.Tepuedoasegurarquetevasacansardeescribirtextoysmbolosynunca
lollenars.Almenosal16F876A.Puedesutilizarlocomopasamensajesparapublicidad,paravenderproductos,parasaludaramigosenestasfiestas,enfinparalo
quequierastransmitir,alltendrsunnuevomedioparahacerlo.Recuerdalosencilloquees:moviendoelpuertoC,cargasenformasincronizadalosdatosporel
puertoB.Esoestodo.Intuyoquenocreasquefueratansencillo.Divirtete,juega,experimenta,aprendey,comosiempre,esperamosvertuslogrosenvideo.
Tedejamoslosprogramasdelosejemplosvistosenelartculoyun.TXTconunlistadodeletrasysmbolosprearmadosparaquenopierdastiempoycomiences
cargartumatrizhoymismo.Felicidades!
Domingo,17deEnerode2010:UnavezmselamigoYesbondnoshonrayenorgulleceatodoslosquehacemosNeoTeomostrndonossuslogrosapartirdelos
artculos.GraciasYesbond!Tutrabajoylosresultadosmostradoshacenquevalgalapenaofrecerlomejordenosotros.AquesteltrabajodeYesbond,ojalt
tambinencuentresinteresanteslosmontajesqueaqucompartimosynosenvestusvideos.
Matriz 8x8_Neoteo.wmv
1:45 / 1:45
Descarga: Letra"R"formndose
http://www.neoteo.com/matrizdeled8x8parteii#prettyPhoto
7/8
18/2/2016
MatrizdeLED8X8(ParteII)Neoteo
Descarga: Coraznganador
Descarga: ScrollTextNeoTeo
Descarga: ArchivoTXTconunalfabetoycaracteresprearmados
2Comentarios
Recomendar
NeoTeo
Compartir
Acceder
Ordenarporlosmejores
netealadiscusin...
octavio haceunao
holadisculpaquecompiladorusasycomolousas,yaqueyoheinstaladoelpicbasicyalgunaspalabrasmelasreconocecomoerroressintcticos.agradeceranos
proporcionarasesedato.
Responder Compartir
Armando hace2aos
Podranactualizarlasimgenes,yaquehaymuchasquenoseven,aligualqueenlaparteunodeestetutorial,gracias.
Suscrbete
Responder Compartir
AadeDisqusatusitiowebAddDisqusAadir
http://www.neoteo.com/matrizdeled8x8parteii#prettyPhoto
Privacidad
8/8