Você está na página 1de 25

SISTEMAS MICROPROCESADOS I

UNIVERSIDAD POLITÉCNICA SALESIANA

INGENIERÍA ELECTRÓNICA

SEXTO NIVEL

SISTEMAS MICROPROCESADOS I

INFORME DE LA PRACTICA 1

INTEGRANTES:

• CHRISTIAN MORALES
• HENRY SUNTAXI

UNIVERSIDAD POLITÉCNICA SALESIANA


SISTEMAS MICROPROCESADOS I
SISTEMAS MICROPROCESADOS I

INFORME No. 1
INTEGRANTES: CHRISTIAN MORALES
HENRY SUNTAXI

TEMA: Entrada y Salida en el microcontrolador.

OBJETIVO: Utilizar los puertos del microcontrolador dsPIC, como interfase digital al
mundo exterior.

DESARROLLO
Para la practica utilizamos la placa con el DSPIC30F4013 y su correspondiente programa
Microbasic ds.

Diagrama de pines de DSPIC30F4013

MikroBasic dsPic
SISTEMAS MICROPROCESADOS I

PROCEDIMIENTO PRÁCTICO
1.
• PROBLEMA
Escribir en el puerto B el valor 55h
• ALGORITMO
Proceso: Habilito en el puerto B y ingreso el valor 55h
Salida: Visualizo en los pines del puerto B en valor 55h en binario.

• CÓDIGO
program practica1
main:
trisb=0 'habilita el puerto B como salida
portb= $55 'escribe en el puerto B el valor 55h
delay_ms(1000) 'retardo de 1 seg
end.

• DIAGRAMA DE FLUJOS

INICIO

Habilito el puerto B
como salida y
escribo el valor 55h

Retardo de 1 seg
SISTEMAS MICROPROCESADOS I

Visualización de
Datos en puerto B

• ESQUEMÁTICO: Utilizamos en DSPIC30F4013

• SIMULACIÓN: Utilizamos DSPIC30F4013.


SISTEMAS MICROPROCESADOS I

2.
• PROBLEMA
Escribir en el puerto B el valor AAh
• ALGORITMO
Proceso: Habilito en el puerto B y ingreso el valor AAh en binario.
Salida: Visualizo en los pines del puerto B en valor binario.

• CÓDIGO
program practica1_2
main:
trisb=0
portb= $AA
delay_ms(100)
portb= $55
end.

• DIAGRAMA DE FLUJOS

INICIO
SISTEMAS MICROPROCESADOS I

Habilito el puerto B
como salida y
escribo el valor 55h

Retardo de 1 seg

Visualización de
Datos en puerto B

• ESQUEMÁTICO: Utilizamos en DSPIC30F4013

• SIMULACIÓN: Utilizamos DSPIC30F4013.


SISTEMAS MICROPROCESADOS I

3.
• PROBLEMA
Escribir en el puerto C el valor F0h
El DSPIC30F4013 tiene limitados los puertos por lo que utilizaremos en puerto F
• ALGORITMO
Proceso: Habilito en el puerto F y ingreso el valor F0h en binario.
Salida: Visualizo en los pines del puerto F en valor binario.

• CÓDIGO
program practica1_3
main:
trisf=0
portf= $F0
delay_ms(1000)
end.

• DIAGRAMA DE FLUJOS

INICIO
SISTEMAS MICROPROCESADOS I

Habilito el puerto F como


salida y escribo el valor
55h

Retardo de 1 seg

Visualización de
Datos en puerto F

• ESQUEMÁTICO: En Proteus utilizamos en DSPIC30F4013

• SIMULACIÓN: Utilizamos DSPIC30F4013.


SISTEMAS MICROPROCESADOS I

4.-
• PROBLEMA
Leer en el Puerto B y Escribir en el Puerto F
• ALGORITMO
Proceso: Habilito el puerto F como entrada y el puerto b como salida. Utilizo una variable
“valor” para guardar los datos del puerto F para luego escribir estos datos en el puerto B.
Salida: Visualizo en los pines del puerto B las entradas del puerto F.

• CÓDIGO
program practica1_4
SISTEMAS MICROPROCESADOS I

dim valor as byte


main:
lazo:
trisf = $ff 'entrada
trisb = 0 'salida
valor = portf
portb = valor
goto lazo
end.

• DIAGRAMA DE FLUJOS

INICIO

Habilito el puerto F
como entrada

Habilito el puerto B
como salida

Defino la variable
valor para guardar
datos

Visualizó en el
puerto B los datos de
entrada del puerto F

ESQUEMÁTICO: Simulación en proteus utilizando dspic30f4013


SISTEMAS MICROPROCESADOS I

Fotografía practica 1_4

5.-
• PROBLEMA
SISTEMAS MICROPROCESADOS I

Leer en el Puerto F y Escribir en el Puerto D


• ALGORITMO
Proceso: Habilito el puerto D como entrada y el puerto F como salida. Utilizo una variable
“valor” para guardar los datos del puerto D para luego escribir estos datos en el puerto F.
Salida: Visualizo en los pines del puerto F las entradas del puerto D.
• CÓDIGO
program practica1_5

dim valor as byte


main:
lazo:
trisd = $ff 'entrada
trisf = 0 'salida
valor = portd
portf = valor
goto lazo
end.

• DIAGRAMA DE FLUJOS

INICIO

Habilito el puerto D
como entrada

Habilito el puerto F
como salida

Defino la variable
valor para guardar
datos

ESQUEMÁTICO: Simulación en proteus utilizando dspic30f4013


Visualizó en el
puerto F los datos de
entrada del puerto D
SISTEMAS MICROPROCESADOS I

Fotografía practica 1_5

6.
• PROBLEMA
SISTEMAS MICROPROCESADOS I

Escribir en un display de 7 segmentos sin utilizar decodificador, un valor ascendente entre 0


y F.
• ALGORITMO
Proceso: Habilito en el puerto B e ingreso los valores que irán al puerto con un retardo para
visualizar el cambio ascendente
Salida: Visualizo en el display los valores de 0 a F

• CÓDIGO
program practica1_6
main:
trisb = $0
'conectar a=portb0................e=portb.4.....
lazo:
portb = %00111111 ' formato para binario 0
delay_ms(1000)
portb = %00000110 '1
delay_ms(1000)
portb = %01011011 '2
delay_ms(1000)
portb = %01001111 '3
delay_ms(1000)
portb = %01100110 '4
delay_ms(1000)
portb = %01101101 '5
delay_ms(1000)
portb = %01111101 '6
delay_ms(1000)
portb = %00000111 '7
delay_ms(1000)
portb = %01111111 '8
delay_ms(1000)
portb = %01100111 '9
delay_ms(1000)
portb = %01110111 'A
SISTEMAS MICROPROCESADOS I

delay_ms(1000)
portb = %01111100 'b
delay_ms(1000)
portb = %01011000 'C
delay_ms(1000)
portb = %01011110 'd
delay_ms(1000)
portb = %01111001 'E
delay_ms(1000)
portb = %01110001 'F
delay_ms(1000)
goto lazo
end.
• DIAGRAMA DE FLUJOS

INICIO

Habilito el puerto B
como salida

Envió los datos


correspondientes al
puerto B

Retardo entre cada


envió

Visualización en
Display

ESQUEMÁTICO: En Proteus utilizamos en DSPIC30F4013


SISTEMAS MICROPROCESADOS I

• SIMULACIÓN: Utilizamos DSPIC30F4013.

Display con valor c.


SISTEMAS MICROPROCESADOS I

7.-
• PROBLEMA
Mediante un display visualizar mostrar en forma descendente todas letras del alfabeto de la
Z a la A.
• ALGORITMO
Proceso:
Habilito los puertos B y F como salidas y escribo el código binario para cada letra del
alfabeto declaro el retardo para cada letra.
Salida: Visualizo en el display alfa numérico las letras de la Z a la A en código binario de
los puertos B y F.

• CÓDIGO
program practica1_7
main:
trisb = $0
trisf = $0
'conectar a=portb0................e=portb.4.....

lazo:
portb = %011001100 'z
portf = %00100010
delay_ms(3000)
portb = %100000000 'y
portf = %00100100
delay_ms(3000)
portb = %100000000
portf = %00101010 'x
delay_ms(3000)
portb = %000110011 'w
portf = %0001010
delay_ms(3000)
portb = %000000011 'v
portf = %00100010
delay_ms(3000)
SISTEMAS MICROPROCESADOS I

portb = %000111111
portf = %00000000 'u
delay_ms(3000)
portb = %011000000 't
portf = %01000100
delay_ms(3000)
portb = %011011101 's
portf = %00010001
delay_ms(3000)
portb = %011100011 'r
portf = %00011000
delay_ms(3000)
portb = %011111111 'q
portf = %00001000
delay_ms(3000)
portb = %011100011 'p
portf = %00010001
delay_ms(3000)
portb = %011111111 '0
portf = %00000000
delay_ms(3000)
portb = %100110011 'n
portf = %00001000
delay_ms(3000)
portb = %100110011 'm
portf = %00100000
delay_ms(3000)
portb = %000001111 'l
portf = %00000000
delay_ms(3000)

portb = %000000011 'k


portf = %00101001
delay_ms(3000)
SISTEMAS MICROPROCESADOS I

portb = %011000100 'j


portf = %01000100
delay_ms(3000)
portb = %000000000 'i
portf = %01000100
delay_ms(3000)
portb = %000110011 'h
portf = %00010001
delay_ms(3000)
portb = %011011111 'g
portf = %00010000
delay_ms(3000)
portb = %011000011 'f
portf = %00010001
delay_ms(3000)
portb = %011001111 'e
portf = %00010001
delay_ms(3000)
portb = %000111110 'd
portf = %00010001
delay_ms(3000)
portb = %011001111 'c
portf = %0000000
delay_ms(3000)
portb = %000011111 'b
portf = %00010001
delay_ms(3000)
portb = %011110011 'a
portf = %00010001
delay_ms(3000)
goto lazo
end.

• DIAGRAMA DE FLUJOS
SISTEMAS MICROPROCESADOS I

INICIO

Habilito el puerto B y
F como salida

Envió los datos para


las letras al puerto B y
F

Retardo para cada dato


(letra) que se envía

Visualización en
Display alfanumérico

• ESQUEMÁTICO: En Proteus utilizamos el DSPIC30F4013


SISTEMAS MICROPROCESADOS I

Fotografías práctica 1_7


SISTEMAS MICROPROCESADOS I

8.-
• PROBLEMA
Utilizar el microcontrolador para lógica boleana.
• ALGORITMO
Proceso:
Habilito el puerto F como entrad y el puerto B como salida. Realizo la operación
multiplicar con AND entre el puerto FO y puerto F1 y el resultado de escribe en el puerto
BO la operación OR entre el puerto F2 y F3 y escribo el resultado en el puerto B1 y la
operación XOR entre el puerto F4 y F5 y escribo en el puerto B2.

Salida: Visualizo en el puerto B0 el resultado de las entradas del puerto F0 y F1.


Visualizo en el puerto B1 el resultado de las entradas del puerto F2 y F3.
Visualizo en el puerto B2 el resultado de las entradas del puerto F4 y F5.
• CÓDIGO
program practica1_8
main:
trisf = $ff 'f como entrada
trisb = $0 ' b como salida

portb.0= portf.0 and portf.1


portb.1= portf.2 or portf.3
portb.2= portf.4 xor portf.5

goto main
end.

• DIAGRAMA DE FLUJOS
SISTEMAS MICROPROCESADOS I

INICIO

Habilito el puerto F
como entrada

Puerto B como salida

Realizo la operación
AND entre PF0 y PF1

Realizo la operación OR
entre PF2 y PF3

Realizo la operación
XOR entre PF4 y PF5

Visualización en el
puerto PB0, PB1, PB2
SISTEMAS MICROPROCESADOS I

ESQUEMÁTICO: En Proteus utilizamos el DSPIC30F4013

Fotografía practica 1_8 (Operación AND)


SISTEMAS MICROPROCESADOS I

Fotografía practica 1_8 (OR)

CONCLUCIONES
Al utilizar microbasic se puede realizar de una manera más sencilla los diferentes
ejercicios que se proponen. Al cambiar del PIC16F877A al DSPIC30F4013 no hubo
mayores complicaciones lo que hizo es configurar bien los puertos y utilizar correctamente
los puertos del DSPIC30F4013 y así controlar las salidas para leds, displays según
requiramos.

Bibliografía
- Hojas de prácticas para Laboratorio 1 de Sistemas Microprocesados I.
- Manual de ayuda de microbasic ds

Você também pode gostar