Você está na página 1de 4

ESCUELA POLITECNICA NACIO NAL SISTEMAS MICROPROCESADOS NOMBRES: Wil mer Villegas Cristian Ayala FECHA: 16 04 2012 Realizar

ar un programa utilizando las interrupciones de cambi o de estado de los prticos (otras interrupciones externas), el programa es un contador que por PINA6 sea para decrementar un contador y por el PINA7 sea para incrementar mi contador. PROGRAMA EN AVR: .include" m164pdef.inc" ; declaramos las variables que vamos a usar en el programa .def tempo=r17 .def conta=r18 .def aux=r19 .def ant=r20 .def act=r21 ; pongo los interrupciones .org 0x00 j mp main .org 0x08 j mp chequear main: ; declaro el prtico b c omo salida ser tempo out ddrb,tempo ; declaro el prtico a como entrada clr tempo out ddra,tempo ; pongo mis entradas como p ull -up ldi tempo,0b11000000 out porta,tempo vectores de ; garanti zo pull -up in tempo,mcucr andi tempo,0b11101111 out mcucr,tempo ; activo el stack point er ldi r16,hi gh(ramend) out sph,r16 ldi r16,low(ramend) out spl,r16 ; habilitacin de las interrupciones en cada prtico ldi tempo,0b00000001 sts PCICR,tempo ; habilitacin las interrupciones por cada pin del prtico ldi tempo,0b11000000 sts PCMSK0,tempo ; habilitacion global de interrupciones Sei ; cargo el estado anterior del prtico de entrada para el uso de las interrupciones in ant,pina clr conta lazo: out portb,conta rj mp lazo

; subrutina de interrupcion d onde chequeo que pin va a ser usado chequear: ; salvo el estado de la bandera push tempo in tempo,sreg push tempo ; guardo el estado act ual d el prtico de entrada a in act,pina ; realizo la or exclusiva para saber que pin a cambiado de estado eor act,ant ; compare los pines que v oy a usar cpi act,0b01000000 breq subir cpi act,0b10000000 breq baj ar rj mp salir subir: ;inc aux ;sbrs aux,0

;rj mp salir inc conta ldi r22,255 cp conta,r22 brlo salir ldi conta,255 rj mp salir

baj ar: ;inc aux ;sbrs aux,0 ;rj mp salir dec conta brne salir clr conta rj mp salir salir: pop tempo out sreg,tempo pop tempo reti

SIMULACION EN PROTEUS:

DIAGRAMA DE FUJO:

Você também pode gostar