Está en la página 1de 18

Universidad Politécnica

Salesiana
Ingeniería Electrónica

Sistemas
Microprocesados
INFORME DE LABORATORIO
MICROCONTROLADOR PIC 16F77A
TEMA:
CONTROL DE LCD Y GLCD

Integrantes:

 LUIS HERNANDEZ
 JUAN DAVID HERRERA
Tema:

1.Escribir la sentencia Hola e Ingenieria Electronica en un display

ALGORITMO:

 E TRADAS :

PI ES A ESCRIBIR E EL LCD (PORTB 0,1,2,4,5,6,7)

 PROCESO:
 CO FIGURARA EL PUERTO B
 LEER LAS PALABRAS QUE SERA DESPLEJADAS E EL
LCD
 ESCRIBIR LAS PALABRAS E EL LCD

 SALIDA :

DESPLEJAR LAS PALABRAS HOLA e I GE IERIA


ELECTRO ICA E EL LCD

DIAGRAMA DE FLUJO

INICIO

Habilitar el Puerto B
como salida

Configurar el puerto B

Escribir las palabras HOLA e


I GE IERIA ELECTRO ICA en el
LCD

Desplegamos por la pantalla


las palabras HOLA e
I GE IERIA
ELECTRO ICA en el LCD

FI
 CODIGO

ESQUEMATIZADO
VISULALIZACIO DEL MODULO

 2.- Elaborar un programa para que aparezcan los nombres de cada uno de los
integrantes del grupo por 3 segundos

ALGORITMO:

 E TRADAS :

PI ES A ESCRIBIR E EL LCD (PORTB 0,1,2,4,5,6,7)

 PROCESO:
 CO FIGURARA EL PUERTO B
 LEER LAS PALABRAS QUE SERA DESPLEJADAS E EL
LCD
 ESCRIBIR LAS PALABRAS E EL LCD

 SALIDA :

DESPLEJAR LAS PALABRAS DE LOS I TEGRA TES DEL


GRUPO
DIAGRAMA DE FLUJO

INICIO

Habilitar el Puerto B
como salida

Configurar el puerto B

Escribir las palabras Hola e Luis


Hernandez y Juan Herrera

Desplegamos por la pantalla las


palabras Hola e Luis Hernandez
y Juan Herrera
en el LCD

FI

CODIGO:
ESQUEMATIZADO

VISULALIZACIO DEL MODULO

 3.-Elabrorar un programa para que se observe un contador ascendente ,cuyo


valor se observe en un display 16x2 ,con un intervalo de tiempo entre cada
valor de 2 segundos .Utilice el esquema del numeral uno.

ALGORITMO:
 Entradas:

umero a escribir en el LCD

 Procesos:
 configurar el puerto B
 Leer los numeros a escribir en el LCD
 Salidas:
Desplejar los numeros en la pantalla del LCD

DIAGRAMA DE FLUJO

INICIO

Habilitar el Puerto B
como salida

Configurar el puerto B

Declaracion de variables
tipo String y Word

MIENTRAS
SEA VERDADERO

A=A +1

Hacemos a la variable
numérica A una cadena
de caracteres

Almacenamos la cadena
de caracteres en la
variable X

Desplegamos los datos


guardados en la variable
X en el LCD

FIN
CODIGO:

ESQUEMATIZADO
VISULALIZACIO DEL MODULO

4.- Utilice un temporizador1 del 16f877,para crear un contador por señal externa
,muestre el valor en un display ,la señal del reloj se genera mediante un
pulsanteexterno,realice los ajustes necesarios al esquema del numeral uno.

ALGORITMO:
 Entradas:

umero a escribir en el LCD

 Procesos:
 configurar el puerto B como salidas
 Configurar el puerto A como entradas
 Leer los numeros a escribir en el LCD
 Salidas:
Desplejar los numeros en la pantalla del LCD mediante un pulsante
externo
DIAGRAMA DE FLUJO

INICIO

Habilitar el Puerto B
como salida
Habilitar el puerto A como entradas

Configurar el puerto B
Configuracion para el
pulsante externo cada 2
pulsasiones se incrementa el
numero

Declaracion de variables
tipo String y Word

MIENTRAS
SEA VERDADERO

A=TMR0

Hacemos a la variable
numérica A una cadena
de caracteres

Almacenamos la cadena
de caracteres en la
variable X

Desplegamos los datos


guardados en la variable
X en el LCD

FIN
CODIGO:

ESQUEMATIZADO
VISULALIZACIO DEL MODULO

 5.-Programa de ejemplo para el uso de display grafico ,solo para la familia


18fxx

ALGORITMO

 Entradas:
Datos (Imagenes)que se vana guardar en el Pic
 Procesos:
 Habilitar al display Grafico
 Habilitar al puerto B como salidas
 Dibujar circulos,rectangulos,y el micro_logo
 Salidas:
Imágenes desplejadas en el display Grafico
DIAGRAMA DE FLUJO
INICIO

Configurar el puerto B para el GLCD

Dibujar la imagen de Micro_Logo

Dibujar círculos

Dibujar rectángulos

Dibujar líneas

FIN

CODIGO:

program prac44

include "My_images"

dim j,k as byte

main:

Glcd_Init(PORTB,0,1,2,3,4,5,PORTD)

do

glcd_set_font(@FontSystem5x8,5,8,32)

glcd_image(mikro_logo_bmp)

delay_ms(2000)

glcd_fill(0)

glcd_set_font(@fontsystem5x8,5,8,32)

delay_ms(1000)

glcd_write_text("Circulos",0,0,1)

j=4

while j<31
glcd_circle(63,31,j,2)

j=j+4

wend

delay_ms(2000)

glcd_fill(0)

glcd_set_font(@fontsystem5x8,5,8,32)

glcd_write_text("Rectangulos",0,0,1)

delay_ms(1000)

glcd_fill(0)

j=0

while j<31

glcd_box(j,0,j+20,j+25,2)

j=j+4

wend

delay_ms(2000)

glcd_fill(0)

glcd_set_font(@fontsystem5x8,5,8,32)

glcd_write_text("Lineas",0,0,1)

delay_ms(1000)

glcd_fill(0)

for j=0 to 15

k=j*4+3

GLCD_line(0,0,127,k,2)

next j

for j=0 to 31

k=j*4+3

glcd_line(0,63,k,0,2)

next j

delay_ms(2000)

loop until false

end.

module My_images
' ------------------------------------------------------

' GLCD Picture name: mikro_logo.bmp

' GLCD Model: KS0108 128x64

' ------------------------------------------------------

const mikro_logo_bmp as byte[1024] = (

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0,192,224,112,176,176,176,176,176,176,176,176,

176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,

176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,

176,176,176,176,176,176,176,176,176, 96,224,128, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0,255,255, 0,255,255,255, 3, 35, 49, 49, 49,

49, 49, 49, 49, 51, 3,199,255,127, 31, 31, 15, 7, 7, 3, 3,

3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 3, 3, 7, 7, 15,

15, 31,127,255,255,255,255,255,255, 0,255,255, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0,255,255, 0,255,255,255, 7, 6, 6, 14, 30,

30, 30, 30, 30,254,255,255, 1, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0,252,255,255,255,254, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 7,255,255,255,255, 0,255,255, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0,255,255, 0,255,255,255, 17, 51, 3, 3, 15,

7, 3, 3, 17,255,255,255, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0,129,129,129,129,128,128,128,128,128,128,128,128,

128,128,128,128,128,255,255,255,255, 0,255,255, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0,255,255, 0,255,255,255, 98,127,111, 99, 99,

99, 99, 99, 99,255,255,255, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0,255,255,255,255,255,255, 3, 3, 3, 3, 3, 3, 3,

3, 3, 3, 3, 3,255,255,255,255, 0,255,255, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0,255,255, 0,255,255,255, 8,140,140,140,140,

140,140,140,140,141,159,255,240,192, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 7, 31, 63, 31, 31, 7, 0, 0, 0, 0, 0, 0, 0,

0, 0,128,192,248,255,255,255,255, 0,255,255, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0,127,255,128,127,127,127,112,113,113,113,113,

113,113,113,113,113,113,113,113,115,119,126,124,124,120,120,112,

112,112,112,112,112,112,112,112,112,112,112,112,112,120,120,124,

126,127,127,127,127,127,127,127, 63,192,255,127, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

0, 0, 0, 0, 0, 0, 1, 1, 3, 3, 3, 3, 3, 3, 3, 3,

3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,

3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,

3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 0, 0, 0, 0, 0, 0

E D.

ESQUEMATIZADO

VISULALIZACIO DEL MODULO


Conclusiones:

• Tener en mente la configuración del Pic 16f877a y su distribución de pines en la


programación.
• Llevar armado para no perder tiempo en la practica en el laboratorio
• Saber la configuración para su programación tanto de entradas como de salidas
del micro.

Recomendaciones:

• Leer el datasheet e informarse de todas sus funcionalidades ya que es primordial


saber bien su funcionamiento y aplicación para implementar su hardware y
software.

• Al implementar el hardware externo saber la configuración con el datasheet y su


conexión como se explica en la hojas guías.

• Llevar la programadora y saber instalar el software para su correcto


funcionamiento en el Pic 16f877a

BIBLIOGRAFIA:

 APU TES TOMADOS E CLASE


 HOJAS DADAS E SISTEMAS MICROPROCESADOS 1
 ELECTRO ICA PRACTICA CO MICROCO TROLADORES
PIC,SA TIAGO CORRALES V.
 Microcontroladores "PIC": diseño práctico de aplicaciones. Segunda Parte : el
PIC12F508 y PIC16F84A : lenguajes Emsamblador, C y PBASIC
Microcontroladores"pic": Diseño práctico de aplicaciones, José María Angulo
Usategui, Edición 4, Editor McGraw-Hill, Interamericana de España