Professional Documents
Culture Documents
1 ciclo=
1
=0.125useg
8 MHz
;
; 1 ciclo
;
;
;
1 ciclo
5 ciclos
1 ciclo
2 ciclos
; 1 ciclo
; 1 ciclo
; 1 ciclo
;
;
;
;
;
;
1
1
1
1
1
1
ciclo
ciclo
ciclo
ciclo
ciclo
ciclo
BRNE delay1
Ret
; 1 ciclo
; 5 ciclos
x 4106 ciclos
Obtenindose:
x=0.5 seg
2) Modificar el programa para que alternativamente sea un contador
ascendente y luego descendente. Simular el diseo y capturar la pantalla
del Analizador Lgico con las 8 seales individuales, en la que se pueda
ver las secuencias ascendente y descendente en forma alternada.
Entregar el listado del programa incluyendo comentarios y justificaciones.
.include "m164pdef.inc"
.def contador = R16
.def tempo = R17
.cseg
.org 0x0000
asc:
; Etiqueta asc controla el contado ascendente
clr contador
; inicio la cuenta en cero
ldi tempo,0b11111111
; para definir al Puerto A como salida se debe
out ddra,tempo
; poner 1L en cada uno de los bits del DDR
lazo2:
out porta,contador
; envo del contenido de contador al Puerto A
ldi tempo,0xf
; se inicia una rutina de retardo
call delay4
inc contador
; incremento del contador en una unidad
; si llega al mximo 255, al incrementar vuelve a 0
breq desc
; si el contador llega a cero salta a la etiqueta desc
rjmp lazo2
; repitir el proceso indefinidamente
delay4:
ldi R17,10
delay5:
LDI R18,40
delay6:
ldi R19,250
delay7:
dec R19
NOP
BRNE delay7
dec R18
BRNE delay6
dec R17
BRNE delay5
ret
desc:
; Etiqueta desc indica el contador descendente
ser contador
; inicio la cuenta en FF
ldi tempo,0b11111111
; para definir al Puerto A como salida se debe
out ddra,tempo
; poner 1L en cada uno de los bits del DDR
lazo:
out porta,contador
; envo del contenido de contador al Puerto A
ldi tempo,0xf
; se inicia una rutina de retardo
call delay
dec contador
; decremento del contador en una unidad
; si llega al mnimo 0, al decrementar vuelve a 255
breq asc
; si el contador llega a cero salta a desc
rjmp lazo
; repitir el proceso indefinidamente
delay:
ldi R17,10
delay1:
LDI R18,40
delay2:
ldi R19,250
delay3:
dec R19
NOP
BRNE delay3
dec R18
BRNE delay2
dec R17
BRNE delay1
ret
Conclusiones:
Gabriela Gamboa
Viviana Lagua
Se pudo visualizar el funcionamiento de microprocesados en tiempo real, es
decir, de forma grfica mediante las herramientas de simulacin de Proteus
por lo cual concluimos, que en este caso el ATmega 164p puede trabajar con
otros programas para su mejor utilizacin y de esta manera poder imprimir
su pista si es necesario.
Para una mejor visualizacin de programa en el simulador de Proteus es
necesario crear un lazo de retardo en el microprocesador ya que este trabaja
en un tiempo menor.
Mediante el set de instrucciones podemos realizar varias codificaciones de un
programa, este puede ser de diferentes maneras
con diferentes
instrucciones pero siempre debemos llegar al fin deseado considerando que
se debe realizar un algoritmo optimo y rpido, adems de entendible para el
usuario.
Miguel Calle
que son de gran utilidad para poder verificar los resultados, de una manera
visual.
Recomendaciones:
Ajustar el tiempo de retardo cuanto sea necesario para poder observar los
resultados de los mismos en los displays creados en PROTEUS.
Verificar
las
caractersticas
predeterminadas
en
PROTEUS
del
microprocesador como la divisin del reloj.
Bibliografa: