You are on page 1of 4

ESCUELA POLITECNICA NACIO NAL SISTEMAS MICROPROCESADOS NOMBRES: Wil mer Villegas FECHA: 24 04 2012 Realizar un contador que

ue se muestre en dos registros, para lo cual vamos a usar int0 para iniciar e int1 para encerar, utilizar el contador timer0 para realizar el contador interno. PROGRAMA EN AVR: .include" m164pdef.inc" .def aux=r17 .def conta=r18 .def tiempol=r19 .def tiempoh=r20 .def valor=r21 .def aux1=r22 ;coloco mis interrupciones .org 0x00 rj mp inicio .org 0x02 rj mp comenzar .org 0x04 rj mp encerar .org 0x20 rj mp incrementar inicio: out portd,aux in aux,mcucr andi aux,0b11101111 out mcucr,aux

vectores

de

ldi r16,hi gh(ramend) out sph,r16 ldi r16,low(ramend) out spl,r16 ldi aux,0b00000011 out ei msk,aux ldi aux,0b00001010 sts eicra,aux ldi conta,50 ;cargo el valor en el cual quiero que haya la coincidencia ldi aux1,249 out ocr0a,aux1 ;habilitacion del modo ldi aux1,0b00000010 out tccr0a,aux1 ;habilitacion del prescaler ldi aux1,0b00000010 out tccr0b,aux1 ldi aux1,0b0 0000010 sts timsk0,aux1

ser aux out ddra,aux out ddrc,aux clr aux out ddrd,aux ldi aux,0b00001100

sei lazo: out porta,tiempol out portc,tiempoh rj mp lazo comenzar:

brne salir ; incremento el contador y reali zo mi operacin para mostrar en dos registros inc valor add tiempol,valor clr valor adc tiempoh,valor ldi conta,50 rj mp salir encerar:

push aux in aux,sreg push aux

rj mp salir incrementar: push aux in aux,sreg push aux dec conta salir:

push aux in aux,sreg push aux clr tiempol clr tiempoh

pop aux out sreg,aux pop aux reti

SIMULACION EN PROTEUS:

DIAGRAMA DE FUJO:

You might also like