Sei sulla pagina 1di 6

ESCUELA POLITCNICA NACIONAL

FACULTAD DE INGENIERA ELCTRICA Y ELECTRNICA


LABORATORIO DE SISTEMAS MICROPROCESADOS.

SIMULACIONES.
Programa a implementarse en el Laboratorio.
/*
* Prepa6.asm
*
* Created: 10/12/2015 12:04:14
* Author: Edison Apupalo Naranjo.
*/
.include "m164pdef.inc"
.def temp=r16
.def aux=r17
.def contador=r18
.dseg
num1: .byte 1
num2: .byte 1
num3: .byte 1
num4: .byte 1
nmayor: .byte 1
nmenor:.byte 1
dato1: .byte 1
dato2: .byte 1
.cseg
.org 0x00
rjmp inicio
//Configuracion de Puertos.
inicio:
clr temp
ser aux
out ddrb,temp
out ddrd,temp
out portb,aux
out portd,aux
//Configuro puertos A y C como salidas.
out ddra,aux
out porta,temp
ldi temp,0b0111_1111
out ddrc,temp
ldi temp,0b1000_0000
out portc,temp
//Configuracion de PUD.
in r16,mcucr
andi r16,0b1110_1111
out mcucr,r16
// Configuracion del Stack Pointer.
ldi r16,low(ramend)
out spl,r16
ldi r16,high(ramend)
out sph,r16

ESCUELA POLITCNICA NACIONAL


FACULTAD DE INGENIERA ELCTRICA Y ELECTRNICA
LABORATORIO DE SISTEMAS MICROPROCESADOS.
clr temp
clr aux
//Lectura de Datos ingresados.
Lectura:
in r16,pinB
mov aux,r16
andi r16,0b0000_1111
swap aux
andi aux,0b0000_1111
sts num1,temp
sts num2,aux
in r16,pinD
mov aux,r16
andi temp,0b0000_1111
swap aux
andi aux,0b0000_1111
sts num3,temp
sts num4,aux
clr temp
clr aux
//Comparacion del Selector.
Comparacion:
sbis pinc,7
rjmp of
rjmp on
rjmp lectura
//Modo Of en el selector.
Of:
lds r20,num1
lds r21,num2
lds r22,num3
lds r23,num4
mayorR20:
cp r20,r21
brcs mayorR21
mayorR20_1:
cp r20,r22
brcs mayorR22
mayorR20_2:
cp r20,r23
brcs mayorR23
mayorR20_3:
sts nmayor,r20
rjmp menor
mayorR21:
cp r21,r22
brcs mayorR22

ESCUELA POLITCNICA NACIONAL


FACULTAD DE INGENIERA ELCTRICA Y ELECTRNICA
LABORATORIO DE SISTEMAS MICROPROCESADOS.
mayorR21_2:

MayorR21_3:

mayorR22:

mayorR22_1:

cp r21,r23
brcs mayorR23
sts nmayor,r21
rjmp menor
cp r22,r23
brcs mayorR23
sts nmayor,r22
rjmp menor

mayorR23:
sts nmayor,r23
rjmp menor
menor:
menorR20:

menorR20_1:
menorR20_2:

cp r20,r21
brcc menorR21
cp r20,r22
brcc menorR22
cp r20,r23
brcc menorR23

menorR20_3:
sts nmenor,r20
rjmp fin
menorR21:
cp r21,r22
brcc menorR22
menorR21_2:
cp r21,r23
brcc menorR23
menorR21_3:
sts nmenor,r21
rjmp fin
menorR22:
cp r22,r23
brcc menorR23
menorR22_1:
sts nmenor,r22
rjmp fin

ESCUELA POLITCNICA NACIONAL


FACULTAD DE INGENIERA ELCTRICA Y ELECTRNICA
LABORATORIO DE SISTEMAS MICROPROCESADOS.
menorR23:
sts nmenor,r23
rjmp fin
fin:
call bin_7seg
call mostrar
rjmp lectura
//Conversion de binario a 7 segmentos.
bin_7seg:
ldi contador,2
ldi xl,low(nmayor)
ldi xh,high(nmayor)
ldi yl,low(dato1)
ldi yh,high(dato1)
Extraer:
ldi zl,low(tabla*2)
ldi zh,high(tabla*2)
ld temp,x+
add zl,temp
lpm r19,z
st y+,r19
dec contador
brne extraer
ret
Mostrar:

lds temp,dato1
lds aux,dato2
out porta,temp
out portc,aux
ret

//Modo On en el Selector
On:
lds r20,num1
lds r21,num2
lds r22,num3
lds r23,num4
add r20,r21
adc r20,r22
adc r20,r23
mov temp,r20
andi r20,0b0000_1111
swap temp
andi temp,0b0000_1111
sts nmenor,r20
sts nmayor,temp
call bin_7seg
call mostrar
rjmp lectura
TABLA: ;codificacion de los numeros a displays de 7 segmentos
.db 0b11000000,0b11111001 ;0,1
.db 0b10100100,0b10110000 ;2,3

ESCUELA POLITCNICA NACIONAL


FACULTAD DE INGENIERA ELCTRICA Y ELECTRNICA
LABORATORIO DE SISTEMAS MICROPROCESADOS.
.db
.db
.db
.db
.db
.db

0b10011001,0b10010010
0b10000010,0b11111000
0b10000000,0b10010000
0b10001000,0b10000011
0b11000110,0b10100001
0b10000110,0b10001110

;4,5
;6,7
;8,9
;10 (A),11 (b)
;12 (C),13 (d)
;14 (E),15 (F)

SIMULACION.

ESCUELA POLITCNICA NACIONAL


FACULTAD DE INGENIERA ELCTRICA Y ELECTRNICA
LABORATORIO DE SISTEMAS MICROPROCESADOS.

Potrebbero piacerti anche