Informe Previo de Microcontroladores
-
Upload
junior-olivares-gomez -
Category
Documents
-
view
32 -
download
7
Transcript of Informe Previo de Microcontroladores
INFORME PREVIO DE MICROCONTROLADORES
PREG1.
Un microprocesador AVR de 8 bits ha detectado 3 datos en R20,R21,R22 que le entrega un sensor de temperatura en grados centígrados. Se pide escribir un programa para hallar el menos y la suma de los datos captados.
El menor se muestra en R25 y la suma de los 3 valores en R26.
SOLUCION:
.include "C:\VMLAB\include\m8def.inc"
.cseg
.org $0
rjmp inicio
inicio:
ldi r20,0b00001100 ;almacenamos 8 en r20
ldi r21,0b00000100 ;almacenamos 4 en r21
ldi r22,0b00000010 ;almacenamos 3 en r22
cpc r20,r21 ;comparamos r20 con r21
brmi lazo ;salta a lazo si r20<r21
mov r0,r20 ;movemos r20 a r0
mov r1,r21 ;movemos r21 a r1
rjmp data ;salta a la etiquera data
lazo:
mov r0,r21 ;movemos r21 a r0
mov r1,r20 ;movemos r20 a r1
data:
cpc r20,r22 ;comparamos r20 con r22
brmi lazo1 ;salta si r20<r22
mov r2,r20 ;movemos r20 a r2
mov r3,r22 ;movemos r22 a r3
rjmp data2
lazo1:
mov r2,r22 ;movemos r22 a r2
mov r3,r21 ;movemos r21 a r3
data2:
cpc r21,r22 ;comparamos r21 con r22
brmi data3 ;salta si r21<r22
mov r4,r21 ;movemos r21 a r4
mov r5,r22 ;movemos r22 a r5
rjmp salida
data3:
mov r4,r22
mov r5,r21
rjmp salida
salida:
cpc r4,r5
rjmp data4
data4:
mov r25,r5 ;nos muesrra el menor
add r20,r21 ;sumamos r20 con r21 y se almacena en r20
add r22,r20 ;sumamos r22 con r20 y se almacena en r22
mov r26,r22 ;guardamos la suma en r26
fin: rjmp fin