Está en la página 1de 33

MARZO – JULIO 2010

UNIVERSIDAD POLITÉCNICA
SALESIANA
SISTEMAS MICROPROCESADOS 1

INFORME PRÁCTICA #01


TEMA: Entrada y salida en el
microcontrolador PIC

DAVID ESPÍN
ANDRÉS MOGRO

QUITO - ECUADOR
PRÁCTICA 01

OBJETIVO: Utilizar los puertos del microcontrolador pic, como interface


digital al mundo exterior.

1.1 Escribir en el puerto B el valor 55h.

Entradas:

El número 55h

Procesos:

• Habilitar puerto b (salida)


• Escribir 55h en el puerto B
• Retardo 1 s.

Salidas:

Salida del puerto B hacia los leds con el valor 55h.

DIAGRAMA DE FLUJO

INICIO

PUERTO B
COMO SALIDA

ESCRIBIR EN EL PUERTO B
55H
CÓDIGO
program practica1

trisb=0 'Habilita el puerto B como salida

main: 'Parte principal del programa

portb=$55 'Escribe en el puerto B el valor 55H=01010101

delay_ms(1000) 'retardo en 1 s

end.

ESQUEMÁTICO
SIMULACIÓN

FOTOS
1.2 Escribir en el puerto B el valor AAh.

Entradas:

El número AAh

Procesos:

• Habilitar puerto b (salida)


• Escribir AAH en el puerto B
• Retardo 1 s.

Salidas:

Salida del puerto B hacia los leds con el valor AAH.

DIAGRAMA DE FLUJO

CÓDIGO
program practica2

trisb=0 'Habilita el puerto B como salida

main: 'Parte principal del programa

portb=$AA 'Escribe en el puerto B el valor AAH=01010101


delay_ms(1000) 'retardo en 1 s

end.

ESQUEMÁTICO

SIMULACIÓN
FOTOS

1.3 Escribir en el puerto B el valor F0h.

Entradas:

El número F0h

Procesos:

• Habilitar puerto b (salida)


• Escribir F0H en el puerto B
• Retardo 1 s.

Salidas:

Salida del puerto B hacia los leds con el valor F0H.

DIAGRAMA DE FLUJO
CÓDIGO
program practica3

trisb=0 'Habilita el puerto B como salida

main: 'Parte principal del programa

portb=$F0 'Escribe en el puerto B el valor F0H=11110000

delay_ms(1000) 'retardo en 1 s

end.
ESQUEMÁTICO

SIMULACIÓN
FOTOS

1.4 Leer en el puerto C y escribir en el puerto B

Entradas:

Datos en el puerto C

Procesos:

• Habilitar puerto C como entrada y el puerto B como salida


• Se define una variable de datos
• Mandar la variable al puerto de salida B
• Presentar resultados en el puerto B

Salidas:

Salida del puerto B hacia los leds.


DIAGRAMA DE FLUJO

INICIO

DEFINIR
VARIABLE X

LEO VARIABLE X EN EL
PUERTO C

ESCRIBIR EN EL PUERTO B LA
VARIABLE X

CÓDIGO
program p4

dim valor as byte

main:

lazo:

trisc=$ff

trisb=0

valor=portc

portb=valor

goto lazo
end.

ESQUEMÁTICO

SIMULACIÓN
FOTOS

1.5 Leer en el puerto A y escribir en el puerto D

Entradas:

Datos en el puerto A

Procesos:

• Habilitar puerto A como entrada y el puerto D como salida


• Se define una variable de datos
• Mandar la variable al puerto de salida D
• Presentar resultados en el puerto D

Salidas:

Salida del puerto D hacia los leds.


DIAGRAMA DE FLUJO

CÓDIGO
program p5

dim valor as byte

main:

lazo:

trisa=$ff

trisd=0

valor=porta

portd=valor

goto lazo

end.
ESQUEMÁTICO

SIMULACIÓN
FOTOS
6. Escribir en un display de 7 segmentos sin utilizar decodificador, un
valor ascendente entre 0 y F.

CÓDIGO:

program practica6

trisb=$0

main:

lazo:

portb=%00111111

delay_ms(2000)

portb=%00000110

delay_ms(2000)

portb=%01011011

delay_ms(2000)

portb=%01001111

delay_ms(2000)

portb=%01100110

delay_ms(2000)

portb=%01101101

delay_ms(2000)

portb=%01111101

delay_ms(2000)

portb=%01111111
delay_ms(2000)

portb=%01100111

delay_ms(2000)

portb=%01100111

delay_ms(2000)

portb=%01111000

delay_ms(2000)

portb=%01011000

delay_ms(2000)

portb=%01011110

delay_ms(2000)

portb=%01111001

delay_ms(2000)

portb=%01110001

delay_ms(2000)

goto lazo

end.

ENTRADAS – SALIDA –PROCESO

ENTRADA: Datos que se guardan en el microcontrolador.


SALIDA: Datos que salen del puerto b del microcontrolador.
PROCESO: Conectamos los puertos del microcontrolador al display de 7
segmentos que debe ser un cátodo común el segmento a=portb.0, el
b=portb.1, de esta manera en orden hasta el segmento g.
Esperamos 2 segundos entre el cambio de números.
Comprobamos si las salidas se están ejecutando correctamente mediante la
visualización de los números en el display.

DIAGRAMA DE FLUJOS.

INICIO

Configuro el
puerto B como
salida

Escribo en el puerto B en formato


binario.

Portb=%00111111

Retardo de 2 segundos

Escribo en el puerto B en formato


binario.

Portb=%00111110

Retardo de 2 segundos
ESQUEMÁTICO

FOTOS

7. Ejercicio de aplicación mediante un display alfanumérico mostrar en


orden descendente todas las letras del alfabeto de la Z a la A.
CÓDIGO:

program Ejercicio7

trisb=$0 'puerto b como salidas

trisc=$0 'puertoc como salidas

main:

lazo:

'Z

'HGFEDCBA

'PONMLKJI

portb=%00110011

portc=%01000100

Delay_ms(2000)

'Y

portb=%00000000

portc=%00100101

Delay_ms(2000)

'X

portb=%00000000

portc=%01010101

Delay_ms(2000)

'W

portb=%11001100
portc=%01010000

Delay_ms(2000)

'V

portb=%11000000

portc=%01000100

Delay_ms(2000)

'U

portb=%11111100

portc=%00000000

Delay_ms(2000)

'T

portb=%00000011

portc=%00100010

Delay_ms(2000)

'HGFEDCBA

'PONMLKJI

'S

portb=%10111011

portc=%10001000

Delay_ms(2000)

'R

portb=%11000111
portc=%10011000

Delay_ms(2000)

'Q

portb=%11111111

portc=%00010000

Delay_ms(2000)

'P

portb=%11000111

portc=%10001000

Delay_ms(2000)

'O

portb=%11111111

portc=%00000000

Delay_ms(2000)

'N

portb=%11001100

portc=%00010001

Delay_ms(2000)

'M

portb=%11001100

portc=%00000101

Delay_ms(2000)
'L

portb=%11110000

portc=%00000000

Delay_ms(2000)

'K

portb=%00000000

portc=%00110110

Delay_ms(2000)

'J

portb=%00100011

portc=%00100010

Delay_ms(2000)

'HGFEDCBA

'PONMLKJI

'I

portb=%00110011

portc=%00100010

Delay_ms(2000)

'H

portb=%11001100

portc=%10001000

Delay_ms(2000)
'G

portb=%11111011

portc=%00001000

Delay_ms(2000)

'F

portb=%11000011

portc=%10000000

Delay_ms(2000)

'E

portb=%11110011

portc=%10000000

Delay_ms(2000)

'D

portb=%01100000

portc=%10100010

Delay_ms(2000)

'C

portb=%11110011

portc=%00000000

Delay_ms(2000)

'B

portb=%11111000
portc=%10001000

Delay_ms(2000)

'A

portb=%11001111

portc=%10001000

Delay_ms(2000)

goto lazo

end.

ENTRADAS – SALIDA –PROCESO

ENTRADA: Datos que se guardan en el microcontrolador.


SALIDA: Datos que salen del puerto b y puerto c del microcontrolador.
PROCESO: Conectamos los puertos del microcontrolador al display
alfanumérico según la configuración que hayamos asignado a cada segmento
y a cada salida del microcontrolador.
Esperamos 2 segundos entre el cambio de números.
Comprobamos si el programa se está ejecutando correctamente mediante la
visualización de los números en el display alfanumérico.
DIAGRAMA DE FLUJOS.

INICIO

Configuro el
puerto B y C
como salida

Escribo en el puerto B y C en
formato binario.

Portb=%00101000

Portc=%11000001

Retardo de 2 segundos

Escribo en el puerto B en formato


binario.

Portb=%00111110

Portc=%11000001

Retardo de 2 segundos
ESQUEMÁTICO:

FOTOS.
8. Lógica booleana con microcontrolador

CÓDIGO:

program practica8

trisc=$ff 'puerto como entrada

trisb=$00 'puerto b salida

main:

portb.0=portc.0 and portc.1

portb.1=portc.2 or portc.3

portb.2=portc.4 xor portc.5

goto main
end.

ENTRADAS – SALIDA –PROCESO

ENTRADA: Datos que se guardan en el microcontrolador en los puertos b y c


SALIDA: Datos que salen del puerto b del microcontrolador.
PROCESO: Configuramos el puerto c como entrada.
Configuramos el puerto c como salida.
Realizamos las funciones lógicas and or y xor.
Comprobamos si el programa se está ejecutando correctamente mediante la
visualización de los leds que deben cumplir con las funciones.

DIAGRAMA DE FLUJOS.

INICIO

Configuro el puerto B
como entrada y el
puerto C como salida

Ejecuto las funciones booleanas

and, or y xor.
ESQUEMÁTICO:

FOTOS.
CONCLUSIONES:

1. Utilizamos los puertos del microcontrolador pic, como interface digital


al mundo exterior.

2. Con estas prácticas aprendimos como configurar puertos, como


realizar programas sencillos para entender el lenguaje de mikrobasic.

3. El lenguaje de mikrobasic es más sencillo en comparación con Mplab.

4. La utilización de las placas programadoras nos fue de gran ayuda


puesto que no tuvimos que sacar los puertos del PIC hacia el
protoboard, sino solo activar los puertos correspondientes.
BIBLIOGRAFÍA:

1. www.datasheetcatalog.com

2. Datasheet display alfanumerico

3. Datasheet PIC16F877A

4. Guía de prácticas y diapositivas del Ing. Oñate, UPS 2010

También podría gustarte