;Ademas tiene un retardo de 500ms entre cada número
.include “m16def.inc”
.def aux1= r17
.def aux = r16
.equ cont1=0×60
.equ cont2=0×62
.equ cont3=0×63
.org 0×00
ldi aux,low(ramend)
out spl,aux
ldi aux,high(ramend)
out sph,aux
ldi aux1,0xff
out ddrb,aux1
ldi aux1,0×01
out ddrd,aux1
;config pueto b
inicio:
clr aux1
clr aux
main:
ldi zl,low(tabla<<1)
ldi zh,high(tabla<<1)
add zl,aux1
clr aux
adc zh,aux
lpm aux,z
out portb,aux
out portd,aux1
inc aux1
call retardo
cpi aux1,10
brlo main
rjmp inicio
; iniciando el stack pointer
retardo:
ldi aux,25
sts cont1,aux
carga_cont2:
ldi aux,47
sts cont2,aux
lds aux,cont1
dec aux
sts cont1,aux
brne paso1
rjmp final
paso1:
ldi aux,255
sts cont3,aux
lds aux,cont2
dec aux
sts cont2,aux
brne paso2
rjmp carga_cont2
paso2:
lds aux,cont3
dec aux
sts cont3,aux
brne paso2
rjmp paso1
final:
ret
tabla:; display anodo común
.dw 0×7940;1,0
.dw 0×3024;3,2
.dw 0×1219;5,4
.dw 0×7802;7,6
.dw 0×1000;9,8
No response to “Contador modulo 10 muestra su resultado en un display 7 segmentos”
Publicar un comentario