Você está na página 1de 2

/*

* AssemblerApplication1.asm
*
* Created: 09/08/2016 9:50:43
* Author: RICHARD
*/

.include "m164pdef.inc"
.def tempo=r16
.dseg
binariol: .byte 1
binarioh: .byte 1
.cseg
.org 0x00
ldi tempo,0
out ddra,tempo
out ddrd,tempo
out ddrc,tempo
out ddrb,tempo
com tempo
out portc,tempo
out portd,tempo
out portb,tempo
ldi tempo,0b11111000
out porta,tempo
in tempo,mcucr
andi tempo,0b11101111
out mcucr,tempo
ldi tempo,high(ramend)
out sph,tempo
ldi tempo,low(ramend)
out spl,tempo
ldi tempo,0b00000111
sts didr0,tempo
ldi tempo,0
sts adcsra,tempo
sei
lazo:
ADC1:
ldi tempo,0b01000000
sts admux,tempo
ldi tempo,0b11000000
sts adcsra,tempo
lazo1:
lds tempo,adcsra
sbrc tempo,6
rjmp lazo1
lds r18,adcl
lds r19,adch
ADC2:
ldi tempo,0b01000001
sts admux,tempo
ldi tempo,0b11000000
sts adcsra,tempo
lazo2:
lds tempo,adcsra

sbrc tempo,6
rjmp lazo2
lds r20,adcl
lds r21,adch
ADC3:
ldi tempo,0b01000010
sts admux,tempo
ldi tempo,0b11000000
sts adcsra,tempo
lazo3:
lds tempo,adcsra
sbrc tempo,6
rjmp lazo3
lds r22,adcl
lds r23,adch
COMPARACION:
cp r21,r19
breq comparar
cp r21,r23
breq comparar
rjmp poner111
comparar:
cp r20,r18
breq poner000
cp r20,r22
breq poner000
poner111:
ldi tempo,0b00000011
sts binarioh,tempo
ldi tempo,255
sts binariol,tempo
poner000:
ldi tempo,0
sts binarioh,tempo
sts binariol,tempo
rjmp lazo

Você também pode gostar