Autor Tema: GIROLED EN ENSAMBLADOR con ATMEGA16 totalmente probado : p  (Leído 3925 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado arrugas

  • PIC10
  • *
  • Mensajes: 5
GIROLED EN ENSAMBLADOR con ATMEGA16 totalmente probado : p
« en: 19 de Junio de 2011, 19:48:24 »
 :-/saludos   comparto el codigo para un giroled   el cual mustra  texto   a traves de una fila de led, a medida  q gira sobre un motor  


 :-/     :lol:

Código: [Seleccionar]
;**********************************************************************
;*********proyecto GIROLED  *******************************************




.nolist
.include"m16def.inc"
.list


.def tempo=r16
.def aux=r17
.def val=r18
.def cont=r19
.def cont1=r20
.def cont3=r21
.def msj=r22


.org 0x00
rjmp inicio1
.org 0x2
rjmp reset


inicio1:
ldi tempo,0b00000000
out ddra,tempo
out ddrc,tempo
ldi tempo,0b11111111
out ddrb,tempo
out portc,tempo
out porta,tempo
ldi tempo,0b00000000
out ddrd,tempo
ldi tempo,0b11111111
out portd,tempo

ldi tempo,high(ramend)
out sph,tempo
ldi tempo,low(ramend)
out spl,tempo
;************interrupcion**************
ldi tempo,0b00000010
out mcucr,tempo
ldi tempo,0b01000000
out gicr,tempo
sei
;**************************************
ldi msj,0b00000001

inicio:
call delay
call delay
call delay
call delay
call delay
call delay
call delay
call delay

lazo1:

sbid pind,6
rjmp lazo1

;*******************************[b][/b]
sbrc msj,0
call uno
sbrc msj,1
call dos
sbrc msj,2
call tres
sbrc msj,3
call cuatro
sbrc msj,4
call cinco
sbrc msj,5
call seis
sbrc msj,6
call siete
sbrc msj,7
call ocho

;*******************************


lazo:

lpm val,z+
cpi val,'$'
breq inicio
  ; The beginning of the SWITCH statement
cpi val,0x41 ;
    breq a1
cpi val,0x42 ; Compare val to 1
    breq b1
cpi val,0x43 ; Compare val to 1
    breq c1
cpi val,0x44; Compare val to 1
    breq d1
cpi val,0x45; Compare val to 1
    breq e1
cpi val,0x46 ; Compare val to 1
    breq f1
cpi val,0x47 ; Compare val to 1
    breq g1
cpi val,0x48 ; Compare val to 1
    breq h1
cpi val,0x49 ;
    breq i1
cpi val,0x4A ;
    breq j1
cpi val,0x4B ; Compare val to 1
    breq k1
cpi val,0x4C ; Compare val to 1
    breq l1
cpi val,0x4D   ; Compare val to 1
    breq m1
cpi val,0x4E   ; Compare val to 1
    breq n1
cpi val,0x4F ; Compare val to 1
    breq o1
cpi val,0x50 ; Compare val to 1
    breq p1
cpi val,0x51 ; Compare val to 1
    breq q1
cpi val,0x52 ;
    breq re1
cpi val,0x53 ; Compare val to 1
    breq s1
cpi val,0x54 ; Compare val to 1
    breq t1
cpi val,0x55 ;
    breq u1
cpi val,0x56 ; Compare val to 1
    breq v1
cpi val,0x57 ; Compare val to 1
    breq w1
cpi val,0x58 ;
    breq ex1
cpi val,0x59 ; Compare val to 1
    breq ye1
cpi val,0x5A ; Compare val to 1
    breq ze1
call delay1

rjmp lazo


a1:rjmp A
b1:rjmp B
c1:rjmp C
d1:rjmp D
e1:rjmp E
f1:rjmp F
g1:rjmp G
h1:rjmp H
i1:rjmp I
j1:rjmp J
k1:rjmp K
l1:rjmp L
m1:rjmp M
n1:rjmp N
o1:rjmp O
p1:rjmp P
q1:rjmp Q
re1:rjmp R
s1:rjmp S
t1:rjmp T
u1:rjmp U
v1:rjmp V
w1:rjmp W
ex1:rjmp EX
ye1:rjmp YE
ze1:rjmp ZE



A:

ldi aux,0b11000000
out portb,aux
call delay
ldi aux,0b00110000
out portb,aux
call delay
ldi aux,0b00101110
out portb,aux
call delay
ldi aux,0b00100001
out portb,aux
call delay
ldi aux,0b00101110
out portb,aux
call delay
ldi aux,0b00110000
out portb,aux
call delay
ldi aux,0b11000000
out portb,aux
call delay
ldi aux,0b00000000
out portb,aux
call delay
call delay

jmp lazo


B:

ldi aux,0b11111111
out portb,aux
call delay
ldi aux,0b10001001
out portb,aux
call delay
call delay
call delay
call delay
ldi aux,0b01110110
out portb,aux
call delay
ldi aux,0b11000000
out portb,aux
call delay
ldi aux,0b00000000
out portb,aux
call delay
call delay

rjmp lazo



C:

ldi aux,0b00111100
out portb,aux
call delay
ldi aux,0b01000010
out portb,aux
call delay
ldi aux,0b10000001
out portb,aux
call delay
ldi aux,0b10000001
out portb,aux
call delay
ldi aux,0b10000001
out portb,aux
call delay
ldi aux,0b01000010
out portb,aux
call delay
ldi aux,0b00000000
out portb,aux
call delay
call delay

rjmp lazo


D:

ldi aux,0b11111111
out portb,aux
call delay
ldi aux,0b10000001
out portb,aux
call delay
call delay
call delay
ldi aux,0b01000010
out portb,aux
call delay
ldi aux,0b00111100
out portb,aux
call delay
ldi aux,0b00000000
out portb,aux
call delay
call delay

rjmp lazo


E:

ldi aux,0b11111111
out portb,aux
call delay
ldi aux,0b10001001
out portb,aux
call delay
call delay
call delay
call delay
ldi aux,0b00000000
out portb,aux
call delay
call delay

rjmp lazo



F:

ldi aux,0b11111111
out portb,aux
call delay
ldi aux,0b00001001
out portb,aux
call delay
call delay
call delay
ldi aux,0b00000001
out portb,aux
call delay
ldi aux,0b00000000
out portb,aux
call delay
call delay

rjmp lazo



G:

ldi aux,0b00111100
out portb,aux
call delay
ldi aux,0b01000010
out portb,aux
call delay
ldi aux,0b10000001
out portb,aux
call delay
call delay
ldi aux,0b10010001
out portb,aux
call delay
ldi aux,0b01010010
out portb,aux
call delay
ldi aux,0b00110100
out portb,aux
call delay
ldi aux,0b00000000
out portb,aux
call delay
call delay

rjmp lazo



H:

ldi aux,0b11111111
out portb,aux
call delay
ldi aux,0b00001000
out portb,aux
call delay
ldi aux,0b00001000
out portb,aux
call delay
ldi aux,0b00001000
out portb,aux
call delay
ldi aux,0b00001000
out portb,aux
call delay
ldi aux,0b11111111
out portb,aux
call delay
ldi aux,0b00000000
out portb,aux
call delay
call delay

rjmp lazo



I:

ldi aux,0b11111111
out portb,aux
call delay
ldi aux,0b00000000
out portb,aux
call delay
call delay

rjmp lazo



J:

ldi aux,0b01100000
out portb,aux
call delay
ldi aux,0b10000000
out portb,aux
call delay
call delay
ldi aux,0b01111111
out portb,aux
call delay
ldi aux,0b00000000
out portb,aux
call delay
call delay

rjmp lazo



K:

ldi aux,0b11111111
out portb,aux
call delay
ldi aux,0b00010000
out portb,aux
call delay
ldi aux,0b00001000
out portb,aux
call delay
ldi aux,0b00011100
out portb,aux
call delay
ldi aux,0b01100010
out portb,aux
call delay
ldi aux,0b10000001
out portb,aux
call delay
ldi aux,0b00000000
out portb,aux
call delay
call delay

rjmp lazo



L:

ldi aux,0b11111111
out portb,aux
call delay
ldi aux,0b10000000
out portb,aux
call delay
call delay
call delay
call delay
ldi aux,0b00000000
out portb,aux
call delay
call delay

rjmp lazo



M:

ldi aux,0b11111111
out portb,aux
call delay
ldi aux,0b00000110
out portb,aux
call delay
ldi aux,0b00111000
out portb,aux
call delay
ldi aux,0b11000000
out portb,aux
call delay
ldi aux,0b00111000
out portb,aux
call delay
ldi aux,0b00000110
out portb,aux
call delay
ldi aux,0b11111111
out portb,aux
call delay
ldi aux,0b00000000
out portb,aux
call delay
call delay

rjmp lazo



N:

ldi aux,0b11111111
out portb,aux
call delay
ldi aux,0b00000010
out portb,aux
call delay
ldi aux,0b00001100
out portb,aux
call delay
ldi aux,0b00110000
out portb,aux
call delay
ldi aux,0b01000000
out portb,aux
call delay
ldi aux,0b11111111
out portb,aux
call delay
ldi aux,0b00000000
out portb,aux
call delay
call delay

rjmp lazo



;Ñ:

;ldi aux,0b11000000
;out portb,aux
;call delay
;ldi aux,0b00110000
;out portb,aux
;call delay
;ldi aux,0b00101110
;out portb,aux
;call delay
;ldi aux,0b00100001
;out portb,aux
;call delay
;ldi aux,0b00101110
;out portb,aux
;call delay
;ldi aux,0b00110000
;out portb,aux
;call delay
;ldi aux,0b11000000
;out portb,aux
;call delay
;ldi aux,0b00000000
;out portb,aux
;call delay
;call delay

;ret



O:

ldi aux,0b00111100
out portb,aux
call delay
ldi aux,0b01000010
out portb,aux
call delay
ldi aux,0b10000001
out portb,aux
call delay
call delay
call delay
ldi aux,0b01000010
out portb,aux
call delay
ldi aux,0b00111100
out portb,aux
call delay
ldi aux,0b00000000
out portb,aux
call delay
call delay

rjmp lazo




P:

ldi aux,0b11111111
out portb,aux
call delay
ldi aux,0b00010001
out portb,aux
call delay
call delay
call delay
ldi aux,0b00001110
out portb,aux
call delay
ldi aux,0b00000000
out portb,aux
call delay
call delay

rjmp lazo




Q:

ldi aux,0b00111100
out portb,aux
call delay
ldi aux,0b01000010
out portb,aux
call delay
ldi aux,0b10000001
out portb,aux
call delay
ldi aux,0b10100001
out portb,aux
call delay
call delay
ldi aux,0b01000010
out portb,aux
call delay
ldi aux,0b10111100
out portb,aux
call delay
ldi aux,0b00000000
out portb,aux
call delay
call delay

rjmp lazo





R:

ldi aux,0b11111111
out portb,aux
call delay
ldi aux,0b00001001
out portb,aux
call delay
call delay
ldi aux,0b00011001
out portb,aux
call delay
ldi aux,0b01101001
out portb,aux
call delay
ldi aux,0b10000110
out portb,aux
call delay
ldi aux,0b00000000
out portb,aux
call delay
call delay

rjmp lazo




S:

ldi aux,0b01000110
out portb,aux
call delay
ldi aux,0b10001001
out portb,aux
call delay
call delay
ldi aux,0b10010001
out portb,aux
call delay
call delay
ldi aux,0b01100010
out portb,aux
call delay
ldi aux,0b00000000
out portb,aux
call delay
call delay

rjmp lazo




T:

ldi aux,0b00000001
out portb,aux
call delay
call delay
ldi aux,0b11111111
out portb,aux
call delay
ldi aux,0b00000001
out portb,aux
call delay
call delay
ldi aux,0b00000000
out portb,aux
call delay
call delay

rjmp lazo




U:

ldi aux,0b01111111
out portb,aux
call delay
ldi aux,0b10000000
out portb,aux
call delay
call delay
call delay
call delay
ldi aux,0b01111111
out portb,aux
call delay
ldi aux,0b00000000
out portb,aux
call delay
call delay

rjmp lazo



V:

ldi aux,0b00000011
out portb,aux
call delay
ldi aux,0b00001100
out portb,aux
call delay
ldi aux,0b00110000
out portb,aux
call delay
ldi aux,0b11000000
out portb,aux
call delay
ldi aux,0b00110000
out portb,aux
call delay
ldi aux,0b00001100
out portb,aux
call delay
ldi aux,0b00000011
out portb,aux
call delay
ldi aux,0b00000000
out portb,aux
call delay
call delay

rjmp lazo



W:

ldi aux,0b00000011
out portb,aux
call delay
ldi aux,0b00111100
out portb,aux
call delay
ldi aux,0b11000000
out portb,aux
call delay
ldi aux,0b00110000
out portb,aux
call delay
ldi aux,0b00001110
out portb,aux
call delay
ldi aux,0b00000001
out portb,aux
call delay
ldi aux,0b00001110
out portb,aux
call delay
ldi aux,0b00110000
out portb,aux
call delay
ldi aux,0b11000000
out portb,aux
call delay
ldi aux,0b00111100
out portb,aux
call delay
ldi aux,0b00000011
out portb,aux
call delay
ldi aux,0b00000000
out portb,aux
call delay
call delay

rjmp lazo



EX:

ldi aux,0b10000001
out portb,aux
call delay
ldi aux,0b01100110
out portb,aux
call delay
ldi aux,0b00011000
out portb,aux
call delay
ldi aux,0b01100110
out portb,aux
call delay
ldi aux,0b10000001
out portb,aux
call delay
ldi aux,0b00000000
out portb,aux
call delay
call delay

rjmp lazo




YE:

ldi aux,0b00000001
out portb,aux
call delay
ldi aux,0b00000110
out portb,aux
call delay
ldi aux,0b00001000
out portb,aux
call delay
ldi aux,0b11110000
out portb,aux
call delay
ldi aux,0b00001000
out portb,aux
call delay
ldi aux,0b00000110
out portb,aux
call delay
ldi aux,0b00000001
out portb,aux
call delay
ldi aux,0b00000000
out portb,aux
call delay
call delay

rjmp lazo


ZE:

ldi aux,0b10000001
out portb,aux
call delay
ldi aux,0b11000001
out portb,aux
call delay
ldi aux,0b10110001
out portb,aux
call delay
ldi aux,0b10001101
out portb,aux
call delay
ldi aux,0b10000011
out portb,aux
call delay
ldi aux,0b10000001
out portb,aux
call delay
ldi aux,0b00000000
out portb,aux
call delay
call delay

rjmp lazo



delay:

ldi cont,60
lazo_retardo: nop
dec cont
brne lazo_retardo

ret

reset:
push tempo
in tempo,sreg
push tempo

lsl msj
brne salir_1
ldi msj,0b000000001
salir_1:
pop tempo
out sreg,tempo
pop tempo
reti

uno:
ldi zh,high(uno_tex<<1)
ldi zl,low(uno_tex<<1)
ret
dos:
ldi zh,high(dos_tex<<1)
ldi zl,low(dos_tex<<1)
ret
tres:
ldi zh,high(tres_tex<<1)
ldi zl,low(tres_tex<<1)
ret
cuatro:
ldi zh,high(cuatro_tex<<1)
ldi zl,low(cuatro_tex<<1)
ret
cinco:
ldi zh,high(cinco_tex<<1)
ldi zl,low(cinco_tex<<1)
ret
seis:
ldi zh,high(seis_tex<<1)
ldi zl,low(seis_tex<<1)
ret
siete:
ldi zh,high(siete_tex<<1)
ldi zl,low(siete_tex<<1)
ret
ocho:
ldi zh,high(ocho_tex<<1)
ldi zl,low(ocho_tex<<1)
ret

delay1:nop
ret

uno_tex:
.DB"EPN $ "
dos_tex:
.DB"MICROPROCESADORES$"
tres_tex:
.DB"POR M.H.C.C   $"
cuatro_tex:
.DB"PROYECTO GIROLED CON  ATMEGA$"
cinco_tex:
.DB"EN LOS TIEMPODS DE FLOJERA$"
seis_tex:
.DB"SE ALQUIL A BORRACHOS$"
siete_tex:
.DB" PARA TODO EVENTO SOCIAL$"
ocho_tex:
.DB"ARRIBA ABAJO AL CENTRO Y PA DENTRO $"
 
« Última modificación: 20 de Junio de 2011, 01:38:04 por stk500 »

Desconectado rivale

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1707
Re: GIROLED EN ENSAMBLADOR con ATMEGA16 totalmente probado : p
« Respuesta #1 en: 19 de Junio de 2011, 23:19:32 »
tienes algun video? para ver como funciona
"Nada es imposible, no si puedes imaginarlo"

Desconectado arrugas

  • PIC10
  • *
  • Mensajes: 5
Re: GIROLED EN ENSAMBLADOR con ATMEGA16 totalmente probado : p
« Respuesta #2 en: 20 de Junio de 2011, 00:49:26 »
 :shock:

bueno el video no pertenece a mi proyecto ....pero la idea es esa   :lol:.    No disponia de una  de una filmadora  para hacerlo :oops:



feature=related


 

anything