About This Blog

Este es un blog dedicado al módulo de "Desarrollo y Construcción de Prototipos Electrónicos", el cual pertenece al segundo año del ciclo "Desarrollo de productos electrónicos", en el que se irá colgando cualquier tema que sea abordado en dicho ciclo.

LCD gráfico y PIC18F4550

Posted by Diego Lavín 16:32, under | 4 comments

En esta práctica vamos a utilizar un LCD gráfico, el cual será controlado por un PIC18F4550. La programación la llevaremos a cabo con el CCS C Compiler y la posterior simulación será realizada con Proteus (7.7 sp2).



En Proteus podeis encontrar varios tipos de LCD gráfico pero en mi caso he utilizado el LGM12641BS1R.
Ahora vamos a empezar con la programación del PIC, para ello debemos de crear un nuevo proyecto desde el CCS C y empezar con la programación en sí.

El código programado en el PIC es el siguiente:

/////////////////////////////////////////////////////////////////////////////////////
//   AUTOR: Diego Lavín                        Febrero/2011 
/////////////////////////////////////////////////////////////////////////////////////
//   PROGRAMA:   LCD Gráfico                    VERSIÓN:    1.0
//   DISPOSITIVO: PIC18F4550                   COMPILADOR: CCS vs4.93
//   Entorno IDE:                                              SIMULADOR:  Proteus 7.7 sp2
//   TARJETA DE APLICACIÓN:                  DEBUGGER:  
/////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////
//Muestra distintos caracteres por un lcd gráfico
//
/////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////
//CABECERA///////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////
#include <18F4550.h>
#fuses inths                               //oscilador interno
#use delay(internal=8Mhz)      //frecuencia del oscilador
#include < hdm64gs12.c>        //drivers lcd
#include < graphics.c>         //contiene funciones para dibujar círculos, lineas...

/////////////////////////////////////////////////////////////////////////////////////
//VARIABLES GLOBALES////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////
char voltext[ ]="Diego";       //introduzco variables para introducir texto
char voltext3[ ]="Lavin";
char voltext2[ ]="2011";

/////////////////////////////////////////////////////////////////////////////////////
//FUNCIONES/////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////

/////////////////////////////////////////////////////////////////////////////////////
//PRINCIPAL/////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////
void main( )
{
   glcd_init(on);                                         //enciende lcd
   glcd_line(20,47,80,53,on);                    //dibuja una linea
   glcd_rect(100,5,120,20,yes,ON);        // dibuja un rectángulo con relleno
   glcd_text57(1,1,voltext,1,ON);            //introduzco las variables de texto
   glcd_text57(35,1,voltext3,1,ON);
   glcd_text57(100,55,voltext2,1,ON);
  
   glcd_circle(30,25,15,no,on);              //dibuja círculo       
   glcd_circle(30,24,5,yes,ON);            //dibuja un círculo con  relleno
   glcd_circle(70,25,15,no,on);
   glcd_circle(70,24,5,yes,ON);

 
Ahora vamos a ver como queda la placa una vez finalizada. Hay que tener precaución con los packages usados en Proteus ya que algunos componentes no tienen o no se puede simular por lo que hay que deshabilitarlo para que la simulación se realize correctamente. De todas maneras en el Ares se pueden modificar los Footprints para que aquí ya sean los definitivos. 

Vista en Ares:
Vista en 3D:

4 comentarios:

amigo podrias pasarnos lo necesario para este ejercicio? el link de descarga ya no funciona

HOla el link de descargaa no funnciona??

la descarga no funciona, y creo que los comentarios y opiniones sobre el problema tampoco

Al igual que la vida misma la red está llena de lugares inútiles

Publicar un comentario