Está en la página 1de 7

UNIVERSIDAD DE LAS FUERZAS ARMADAS “ESPE”

Nombre: Vilaña Adriana

Nivel: 6º “A”

Deber N.º2
1.-Compruebe el funcionamiento en el simulador de todos los circuitos y programas
presentados. Escriba los comentarios correspondientes en todas las instrucciones.

Compruebe el funcionamiento en el simulador de los circuitos y programas: contador
ascendente y descente sin decodificador, multiplexado 00-99. Escriba los comentarios
correspondientes en todas las instrucciones.

CMCON = 7

TRISA = 0” indica que todos los pines del puerto A son de salida

TRISB = 0 indica que todos los pines del puerto b son de salida

N VAR BYTE “N nombre de la subrutina

D VAR BYTE “D nombre de la subrutina

DATO VAR BYTE “DATO nombre de la subrutina

DATO1 VAR BYTE “DATO 1 nombre de la subrutina

PORTB=0 “asigna el puerto B la variable unidad

PORTA=0 “asigna el puerto A la variable unidad

INICIO “nombre de la variable inicio

FOR N=0 TO 9 para repeticiones de 0 a 9 veces

LOOKUP N,[64,121,36,48,25,18,2,120,0,16], DATO Obtiene un valor constante de una
tabla

PORTB=DATO “asigna el puerto B la variable DATO

GOSUB UNIDADES “Llama a una subrutina UNIDADES en la línea especificada

NEXT N “siguiente repetición hasta N

GOTO INICIO “continua la ejecucion

END “fin

UNIDADES: declare la variable unidades

0.80.1 0 “encender el puerto B1 .16]. DATO1 Obtiene un valor constante de una tabla PORTA=DATO1 “asigna el puerto B la variable DATO1 PAUSE 120 pusa de 12 segundos NEXT D siguiente RETURN retorna MULTIPLEXADO 00-99 TRISA=0 “asigna el puerto A la variable unidad TRISB=0 “asigna el puerto B la variable unidad CMCON=7 N VAR BYTE “N nombre de la subrutina UNIDAD VAR BYTE “UNIDAD nombre de la subrutina DECENA VAR BYTE “DECENA nombre de la subrutina UNIDAD=0 “asigna ala Unidad=0 DECENA=0 “asigna a la Decena=0 CONTADOR: FOR DECENA=0 TO 9 “repite decena de 0 a 9 FOR UNIDAD=0 TO 9 ” repite unidad de 0 a 9 GOSUB DISPLAY “Llama a una subrutina DISPLAY en la línea especificada NEXT UNIDAD “siguiente NEXT DECENA “ siguiente GOTO CONTADOR” Continua la ejecución en la línea contador DISPLAY: “nombre de la variable FOR N=1 TO 10 cuenta de 1 a 10 PORTA=UNIDAD “asigna el puerto ala variable UNIDAD HIGH PORTB.217.216.68.25.FOR D=0 TO 9 para repeticiones de 0 a 9 veces LOOKUP d.2.18.[128.

para controlar los displays conectados en el mismo puerto como se ve en la figura.1” apagar el Puerto B PAUSE 180 pausa de 18 segundos NEXT N siguiente RETURN retorna END final de la programaciòn 2.-Realice un contador módulo 100 (00-99).00 “apagar el puerto B0 PAUSE 180 pausa de 18 segundos PORTA=DECENA “asigana el Puerto A la variable DECENA HIGH PORTB. PROGRAMACIÓN: Dato var byte 'Declaro la variable dato M var byte 'Declaro la variable M para el for trisb=0 'Modifico el puerto B como salida .0 “encender el puerto B1 LOW PORTB. LOW PORTB.

dato=0 'inicializo la variable dato en cero CONTADOR: ' nombre CONTADOR al programa for m=0 to 9 'Inicio en 0 y termina en 9 PORTB=dato+m 'Asigno al puerto B la variable dato mas M pause 250 'Realizo una pausa de 25 ms next m 'Aumento el valor de M dato=dato+16 'A la variable dato le sumo 16 para obtener las decenas if dato=36 then 'Pongo un límite de 99 al contador dato=0 endif 'fin del if goto contador 'Regreso a Contador END fin de la programaciòn Realice un contador ascendente módulo 23. es decir conectados en el mismo puerto. sin decodificador. con los displays multiplexados. Programación : .

0 “ apagar el puerto B0 PAUSE 20 “ pausa de 2 segundos PORTA=DECENA asigna el puerto A la variable DECENA .1 “encender el puerto B1 LOW PORTB.CMCON = 7 TRISA = 0 “indica que todos los pines del puerto A son de salida TRISB = 0 “indica que todos los pines del puerto A son de salida N VAR BYTE “N nombre de la subrutina M VAR BYTE “M nombre de la subrutina UNIDAD VAR BYTE “crea la variable UNIDAD y le asigna un espacio de memoria DECENA VAR BYTE “crea la variable DECENA y le asigna un espacio de memoria UNIDAD =0 declara la variable UNIDAD igual a 0 DECENA =0 declara la variable DECENA igual a 0 CONTADOR declara variable CONTADOR FOR DECENA=0 TO 1 para repeticiones de 0 a 1 veces FOR UNIDAD=0 TO 9 para repeticiones de 0 a 9 veces GOSUB DISPLAY “ ir a la subrutina display NEXT UNIDAD “siguiente repetición hasta que sea UNIDAD=9 NEXT DECENA “siguiente repetición hasta que sea DECENA=1 FOR UNIDAD=0 TO 3 para repeticiones de 0 a 3 veces GOSUB DISPLAY1 ” ir a la subrutina display 1 NEXT UNIDAD siguiente repetición GOTO CONTADOR “ ir a la subrutina CONTADOR” DISPLAY “nombre de la variable display FOR N=1 TO 10 para repeticiones de 1 a 10 veces PORTA=UNIDAD asigna el puerto A la variable unidad HIGH PORTB.

0 “encender el puerto B0 LOW PORTB.1 “ apagar el puerto B1 PAUSE 20 “pausa de 2segundos NEXT N siguiente repetición RETURN ” retorna DISPLAY1 se asigna DISPLAY1 FOR N=1 TO 10 para repeticiones de 1 a 10 veces PORTA=UNIDAD asigna el puerto A la variable UNIDAD HIGH PORTB. HIGH PORTB.1 “apagar el puerto B1 PAUSE 20 “pausa de 2segundos NEXT N siguiente RETURN retorna Circuito: .0 “apagar el puerto B0 PAUSE 20 “pausa de 2 segundos PORTA=DECENA “asigna el puerto A la variable DECENA HIGH PORTB.1 “encender el puerto B1 LOW PORTB.0 “encender el puerto B0 LOW PORTB.