FAQ FAQ  •  Buscar Buscar  •  Registrarse Registrarse  •  Entre para ver sus mensajes privados Entre para ver sus mensajes privados  • Login Login

MATRIZ DE DIODOS (LETRERO LUMINOSO)

Índice de los Foros Electronica Facil » FOROS ELECTRONICA » Electronica analogica
Publicar nuevo tema   Responder al tema
Ver tema anteriorEntre para ver sus mensajes privadosVer tema siguiente
AutorMensaje
MIKAEL7
Asunto: MATRIZ DE DIODOS (LETRERO LUMINOSO) MensajePublicado: 13 Ene, 2006 - 03:16
Nuevo en el Foro
Nuevo en el Foro


Registrado: 13 Ene, 2006
Mensajes: 2

HOLA AMIGOS . SOY ESTUDIANTE DE LA CARRERA DE TELEMATICA Y NECESITO
REALIZAR UN PROYECTO DE ELECTRONICA SOBRE UNA MATRIZ DE DIODOS PARA
PROGRAMARLA EN UN MICROPROCESADOR.
POR VAVOR SI ALGUIEN SABE COMO HACERLO ESCRIBANME A EL CORREO
WWW.LESHAT7.@YAHOO.ES
 
 Ver perfil de usuario Enviar mensaje privado  
Responder citando Volver arriba
gsh19
Asunto: hola MensajePublicado: 16 Ene, 2006 - 03:28
Nuevo en el Foro
Nuevo en el Foro


Registrado: 16 Ene, 2006
Mensajes: 6

antes que nada hola... me acabo de inscribir y me da gusto saludar a todos....
sobre tu problema??? necesitas hacer una matriz de leds....??? sabes como se diseña?? solo quieres el programa??? o necesitas ayuda en las dos cosas....?

mira yo hice una matriz de 4x4 en una clase... donde mostrabamos una serie de luces (alguna figurita) y usamos el micro atmega8 de la familia atmel...

es eso lo que necesitas????

te adjunto un dibujito.... cada triangulo representa cada led... segun como polarices cada pista sera el led que se prenda... o la ilera de leds que se prendan.... ya solo queda meter una secuencia al micro.... si es lo que buscas puedo buscar el programa.....

espero te sirva...[/img]



dibujo4.JPG

dibujo4.JPG


 
 Ver perfil de usuario Enviar mensaje privado  
Responder citando Volver arriba
MIKAEL7
Asunto: RE: hola MensajePublicado: 24 Ene, 2006 - 03:03
Nuevo en el Foro
Nuevo en el Foro


Registrado: 13 Ene, 2006
Mensajes: 2

SI FUERAS TAN AMABLE DE BUSCAR EL PROGRAMA
 
 Ver perfil de usuario Enviar mensaje privado  
Responder citando Volver arriba
gsh19
Asunto: RE: hola MensajePublicado: 27 Ene, 2006 - 07:10
Nuevo en el Foro
Nuevo en el Foro


Registrado: 16 Ene, 2006
Mensajes: 6

; Taller de Sistemas Digitales 3, usamos el micro atmega8
;Sanchez Herrera Gerardo
; Practica: Matriz de leds usando tablas.
;En esta prcatica usamos tablas para presentar diferentes juegos de luces seleccionables
; con un selector activado con ceros

;#######################################################################################################
.include "m8def.inc" ; libreria que se va usar
.cseg
.org 0

.def segu=r18 ;define r18 como seg
.def min=r19 ;define el r19 como min
.def hrs=r20 ;define el r20 como hrs
.def temp=r16 ;define el r16 como temp
.def cuenta=r17 ;define el r21 como mover
.def ent=r21
.set ndatos=12 ;La palabra ndatos es igual al 12 decimal, que sera la
;cantidad de constantes en la tabla. numero de datos

rjmp reset ;es un salto relativo e incondicional a reset

reset: ldi temp, low(ramend) ;carga en la parte baja de la memria ram, temp
out spl,temp ;lo manda a la parte baja del Stack Pointer
ldi temp,high(ramend) ;carga al parte superior de la memoria ram
out sph,temp ;lo manda a la parte alta del stack pointer

ser temp ;le asignamos el dato ff al r16.
out ddrd,temp ;configuramos el puerto d como salidas (ff).
clr temp ;configuramos el puerto b como entradas
out ddrb,temp


;######################################################################################################
;Se lee lo que se tiene en el puerto de entrada, para saber que juego de luces mostrar


leer: in ent,pinb;configuro los pin del puerto b como entrada
sbrs ent,0 ;verifico el estado del pin b0 (0 o 1),si es o da un brinco
rjmp t1 ;brinca a la etiqueta
sbrs ent,1 ;verifico el estado del pin b1 (0 o 1),si es o da un brinco
rjmp t2 ;brinca a la etiqueta
sbrs ent,2 ;verifico el estado del pin b2 (0 o 1),si es o da un brinco
rjmp t3 ;brinca a la etiqueta
sbrs ent,3 ;verifico el estado del pin b3 (0 o 1),si es o da un brinco
rjmp t4 ;brinca a t4
rjmp leer

;########################################TABLA # 1#######################################################
;Se carga y muestra la primera tabla, tambien se lee el puerto de entrada para saber si se ha seleccionado
;otra tabla.

t1: ldi r30,low(tabla1*2) ;cargamos la parte baja de la tabla 1, en el registro 30
ldi r31,high(tabla1*2) ;cargamso la parte alta de la tabla 1, en el registro 31

clr cuenta ;limpia el registro cuenta

inicio: mov temp, cuenta ;mueve el contenido de cuenta a temp

rcall decodi ; llamamos a la rutina decodi
out portd,r1 ; sacamos por el puerto d lo que tenemos en el registro1
rcall tiempo ;llamamos a la rutina tiempo

in ent,pinb ;leemos lo que se tiene en el puerto b
sbrs ent,1 ;verifico el estado del pin b1 (0 o 1),si es o da un brinco
rjmp t2 ;brinca a la etiqueta
sbrs ent,2 ;verifico el estado del pin b2 (0 o 1),si es o da un brinco
leer1: rjmp t3 ;brinca a la etiqueta
sbrs ent,3 ;verifico el estado del pin b3 (0 o 1),si es o da un brinco
rjmp t4

inc cuenta ;incrementamos cuenta
cpi cuenta,ndatos ;comparamos cuenta con ndatos
brne inicio ; si no son iguales brinca a inicio
clr cuenta ;se limpia el registro cuenta
rjmp inicio ; salto a inicio

decodi: add r30,temp ;suma r30 con temp
lpm ;Carga un byte apuntado por el registro z dentro del destino
;del registro rd.
mov r1,r0
sub r30,temp ;resta a r30 lo del temp
ret





;################################TABLA # 2 ############################################################
;Se carga y muestra la segunda tabla, tambien se lee el puerto de entrada para saber si se ha seleccionado
;otra tabla.


t2: ldi r30,low(tabla2*2) ;se carga la parte baja de la tabla 2 en el regitro 30
ldi r31,high(tabla2*2) ;se carga la parte alta de la tabla 2 en el registro 31

clr cuenta ;limpia el registro cuenta

inicio2:mov temp, cuenta ;mueve el contenido de cuenta a temp

rcall decodi2 ;se llama a la rutina decodi2
out portd,r1 ;se muestra por el puerto d el registro 1
rcall tiempo ;se llama a la rutina tiempo


in ent,pinb ;se lee lo que ahi en el puerto b
sbrs ent,0 ;verifico el estado del pin b1 (0 o 1),si es o da un brinco
rjmp t1 ;brinca a la etiqueta
sbrs ent,2 ;verifico el estado del pin b2 (0 o 1),si es o da un brinco
leer2: rjmp t3 ;brinca a la etiqueta
sbrs ent,3 ;verifico el estado del pin b3 (0 o 1),si es o da un brinco
rjmp t4 ;salto a t4



inc cuenta ;se incremente el registro cuenta
cpi cuenta,ndatos ;se compara cuenta con ndatos
brne inicio2 ;si no es igual se brinca a inicio2
clr cuenta ; se limpia el registro cuenta
rjmp inicio2 ; salto a inicio2


decodi2: add r30,temp ;suma r30 con temp

lpm ;Carga un byte apuntado por el registro z dentro del destino
;del registro rd.
mov r1,r0
sub r30,temp ;resta a r30 lo del temp
ret


;###########################TABLA #3####################################################################
;Se carga y muestra la tercera tabla, tambien se lee el puerto de entrada para saber si se ha seleccionado
;otra tabla.


t3: ldi r30,low(tabla3*2) ;se carga la parte baja de la tabla 3 en el registro 30
ldi r31,high(tabla3*2) ;se carga la parte alta de la tabla 3 en el registro 31

clr cuenta ;limpia el registro cuenta

inicio3: mov temp, cuenta ;mueve el contenido de cuenta a temp

rcall decodi3 ;se llama a la rutina decodi3
out portd,r1 ;se muestra por el puerto d lo que tenemos en le registro 1
rcall tiempo ; se llama a la rutina tiempo



in ent,pinb ;se lee lo que tenemos en el puerto b
sbrs ent,0 ;verifico el estado del pin b1 (0 o 1),si es o da un brinco
rjmp t1 ;brinca a la etiqueta
sbrs ent,1 ;verifico el estado del pin b2 (0 o 1),si es o da un brinco
leer3: rjmp t2 ;brinca a la etiqueta
sbrs ent,3 ;verifico el estado del pin b3 (0 o 1),si es o da un brinco
rjmp t4



inc cuenta ;incrementa cuenta
cpi cuenta,ndatos ;se compara cuenta con ndatos
brne inicio3 ;si no es igual brinca a inicio3
clr cuenta ;se limpia el registro cuenta
rjmp inicio3 ;salto a inicio3

decodi3: add r30,temp ;suma r30 con temp
lpm ;Carga un byte apuntado por el registro z dentro del destino
;del registro rd.
mov r1,r0
sub r30,temp ;resta a r30 lo del temp
ret


;############################TABLA #4###################################################################
;Se carga y muestra la cuarta tabla, tambien se lee el puerto de entrada para saber si se ha seleccionado
;otra tabla.


t4: ldi r30,low(tabla4*2) ;se carga la parte baja de la tabla 4 en el registro 30
ldi r31,high(tabla4*2) ;se carga la parte alta de la tabla 4 en el registro 31

clr cuenta ;limpia el registro cuenta

inicio4: mov temp, cuenta ;mueve el contenido de cuenta a temp

rcall decodi4 ; se llama a la rutina decodi4
out portd,r1 ;se muestra por el pueto d lo que s e tiene en el registro1
rcall tiempo ; se llama a la rutina tiempo


in ent,pinb ;se lee lo que tenemos en el puerto b
sbrs ent,0 ;verifico el estado del pin b1 (0 o 1),si es o da un brinco
rjmp t1 ;brinca a la etiqueta
sbrs ent,1 ;verifico el estado del pin b2 (0 o 1),si es o da un brinco
leer4: rjmp t2 ;brinca a la etiqueta
sbrs ent,2 ;verifico el estado del pin b3 (0 o 1),si es o da un brinco
rjmp t3 ;brinca a t3





inc cuenta ;incrementa cuenta
cpi cuenta,ndatos ;compara cuenta con ndatos
brne inicio4 ; si no son iguales brinca a inicio4
clr cuenta ;limpia el registro cuenta
rjmp inicio4 ;brinca a inicio4

decodi4: add r30,temp ;suma r30 con temp
lpm ;Carga un byte apuntado por el registro z dentro del destino
;del registro rd.
mov r1,r0
sub r30,temp ;resta a r30 lo del temp
ret


;##################################RUTINA TIEMPO##########################################################


tiempo: ldi segu, $ff ;se carga el registro segu
ldi min, $ff ;se carga el registro min
ldi hrs, $02 ;se carga el registro hrs

rsegu: dec segu ;decrementa a segu una vez
brne rsegu ;brinca a rsegu mientras segu dif 00
dec min ;decremente min una vez
brne rsegu ;brinca a rsegu mientras min dif 00
dec hrs ;decrementa hrs una vez
brne rsegu ;brinca a rsegu mientras hrs dif 00
ret





;###################################TABLAS################################################################


tabla1: .db $86,$49,$29,$16,$29,$49,$86,$49,$29,$16,$29,$49
tabla2: .db $87,$47,$27,$17,$1b,$1d,$1e,$2e,$4e,$8e,$8d,$8b
tabla3: .db $89,$49,$29,$19,$29,$49,$89,$49,$29,$19,$29,$49
tabla4: .db $33,$cc,$c3,$3c,$33,$cc,$c3,$3c,$33,$cc,$c3,$3c
 
 Ver perfil de usuario Enviar mensaje privado  
Responder citando Volver arriba
Mostrar mensajes anteriores:     
Cambiar a:  
Todas las horas son GMT
Publicar nuevo tema   Responder al tema
Ver tema anteriorEntre para ver sus mensajes privadosVer tema siguiente
 Índice de los Foros Electronica Facil » FOROS ELECTRONICA »  Electronica analogica
powered by phppowered by MySQLPOWERED BY APACHEPOWERED BY CentOS© 2004 - 2025Información Legalpoliticas de cookiesipv6 ready