.include "C:\VMLAB\include\m8def.i "C:\VMLAB\include\m8def.inc" nc" .CSEG .ORG $00 RJMP START START: LDI R16,24 MOV R20,R16 LDI R18,31 MOV R19,R18 LDI R21,2 RESTA: SUB R18,R21 CP R18,R21 BRLO SALTO ;SI R18
cp r16,r25 brlo encender
;R16
;incremento y retorno inc r25 rjmp espera_presionado encender: ldi r16,0b00001000 out portc,r16 fin: rjmp fin ;***********labo2previop1*****NIEL ; ************************ ************************************************ ****************************** ****** ; BASIC .ASM template file for AVR ; ************************ ************************************************ ****************************** ****** .include "C:\VMLAB\include\m8def.i "C:\VMLAB\include\m8def.inc" nc" .cseg .org 0 rjmp inicio inicio: ldi r16,$00 ldi r18,00 out ddrb,r16 out ddrc,r16 ldi r17,0b01111111 out ddrd,r17 habilitar: ; agregar en caso que el habilitador este en cero in r16,pind andi r16,0b10000000 cpi r16,0b10000000 breq sigue rjmp habilitar sigue: in r16,pinc andi r16,0b00001100 cpi r16,1 brsh prender in r16,pinb andi r16,0b00110000 cpi r16,1 brsh prender out portd,r18 rjmp sigue prender: ldi r16,6 out portd,r16 rjmp habilitar