Autor Tema: ayuda con LCD flex_lcd  (Leído 13120 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado chingolo

  • PIC10
  • *
  • Mensajes: 17
ayuda con LCD flex_lcd
« en: 03 de Marzo de 2008, 17:08:31 »
por favor necesito ayuda, agote mis conocimientos (son pocos)
no puedo simular con proteus algo tonto como para escribir hola por LCD usando flex_lcd, con la libreria lcd que trae el ccs todo bien, pero con la flex algo me falta
#include <16f84.h>

#use delay(clock=4000000)
#include
#define use_portb_lcd TRUE
#define LCD_DB4   PIN_B4
#define LCD_DB5   PIN_B5
#define LCD_DB6   PIN_B6
#define LCD_DB7   PIN_B7
#define LCD_RS     PIN_B1
#define LCD_RW    PIN_B2
#define LCD_E      PIN_B0
#include <flex_lcd.c>

#fuses XT,NOWDT,NOPUT

#use fast_io(A)
#use fast_io(B)

main() {

     lcd_init(); 
    lcd_putc(" hola");

}
 el archivo flex_lcd donde debe ir exactamente donde esta el proyecto , no?
gracias!!! estoy dando mis primeros pasos, pido paciencia.

Desconectado ema

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1078
Re: ayuda con LCD flex_lcd
« Respuesta #1 en: 03 de Marzo de 2008, 18:26:45 »
Si este es tu codigo fuente  tienes algunos errores

Código: [Seleccionar]
#include <16f84.h>
#fuses XT,NOWDT,NOPUT
#use delay(clock=4000000)

#use fast_io(A)
#use fast_io(B)

#define LCD_DB4   PIN_B4
#define LCD_DB5   PIN_B5
#define LCD_DB6   PIN_B6
#define LCD_DB7   PIN_B7

#define LCD_RS    PIN_B1
#define LCD_RW    PIN_B2
#define LCD_E     PIN_B0
#include "flex_lcd.c"

main()
{

     lcd_init(); 
     while(TRUE)
     {
            delay_ms(400);
            lcd_putc("hola");
     }

}

y si el archivo flex_lcd.c debe estar en el directorio 

Saludos

Desconectado chingolo

  • PIC10
  • *
  • Mensajes: 17
Re: ayuda con LCD flex_lcd
« Respuesta #2 en: 03 de Marzo de 2008, 19:15:03 »
hice lo de ahi arriba y compila , ahora cuando lo pruebo en el proteus , nada. uso el mismo circuito que uso para la lcd.c que funciona bien!
que puede ser??????????
gracias!!! estoy dando mis primeros pasos, pido paciencia.

Desconectado huichoman

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 186
    • Pequeñas piezas para grandes proyectos.
Re: ayuda con LCD flex_lcd
« Respuesta #3 en: 03 de Marzo de 2008, 19:28:53 »
Hola ferramontia.

Intenta de este modo:

Código: [Seleccionar]
#include <16f84.h>
#fuses XT,NOWDT,NOPUT
#use delay(clock=4000000)


#define LCD_DB4   PIN_B4
#define LCD_DB5   PIN_B5
#define LCD_DB6   PIN_B6
#define LCD_DB7   PIN_B7
#define LCD_RS     PIN_B1
#define LCD_RW    PIN_B2
#define LCD_E      PIN_B0

#include "flex_lcd_c.c"

void main()
 {
    lcd_init(); 
    lcd_putc("hola");
}

Te adjunto el rar con el código fuente, libreria flex_lcd_c.c y la simulación en proteus.

Saludos.

GAMBARIMASUUUUUUUUUUUU

Desconectado chingolo

  • PIC10
  • *
  • Mensajes: 17
Re: ayuda con LCD flex_lcd
« Respuesta #4 en: 03 de Marzo de 2008, 19:41:06 »
listo anda de 10!!!!!!
        un abrazo!!!!
 ahora alguien tiene algo para manejar un tecladito 4x4 con el 16f84.
gracias!!! estoy dando mis primeros pasos, pido paciencia.

Desconectado quirogaareal

  • PIC16
  • ***
  • Mensajes: 180
Re: ayuda con LCD flex_lcd
« Respuesta #5 en: 05 de Marzo de 2008, 09:05:58 »
Hola Chingolo:

Te recomiendo que sigas estos ejemplos

http://www.todopic.com.ar/foros/index.php?topic=4530.0

Estan excelentes para aprender

Saludos desde Cordoba Argentina
Recuerda : Si una mujer te ama de verdad no te pedira ni Matrimonio, Ni concubinato , Ni hijos, No te mentira , ni buscara que cambies de opinion con respecto a las tres primeras opciones.

Saludos

desde Cordoba Argentina

Desconectado Diego Gonzalez

  • PIC18
  • ****
  • Mensajes: 323
    • Visita mi web sobre electronica,fisica,mecanica y demas temas....
Re: ayuda con LCD flex_lcd
« Respuesta #6 en: 29 de Julio de 2008, 09:55:14 »
Hola:

Siento resucitar un mensaje tan antiguo, pero prefiero segir preguntando cosas en el porque trata de exactamente lo mismo.

Tengo conectada la lcd a un 16f628A y no soy capaz a compilar un misero ejemplo.

Me da este error. ¿que podrá ser?

Código: [Seleccionar]
Clean: Deleting intermediary and output files.
Clean: Deleted file "pruebalcd.ESYM".
Clean: Deleted file "C:\Programaspics\16F628A\pruebalcd.o".
Clean: Deleted file "C:\Archivos de programa\PICC\Drivers\flex_lcd.ESYM".
Clean Warning: File "C:\Archivos de programa\PICC\Drivers\flex_lcd.o" doesn't exist.
Clean: Deleted file "pruebalcd.ERR".
Clean: Deleted file "C:\Archivos de programa\PICC\Drivers\flex_lcd.ERR".
Clean: Done.
Executing: "C:\Archivos de programa\PICC\Ccsc.exe" +FM "pruebalcd.c" +EXPORT +DF +LN +T +A +M -Z +ICD +Y=9 +EA
>>> Warning 225 "C:\Programaspics\16F628A\flex_lcd.c" Line 5(16,23): Duplicate #define
>>> Warning 225 "C:\Programaspics\16F628A\flex_lcd.c" Line 6(16,23): Duplicate #define
>>> Warning 225 "C:\Programaspics\16F628A\flex_lcd.c" Line 7(16,23): Duplicate #define
>>> Warning 225 "C:\Programaspics\16F628A\flex_lcd.c" Line 8(16,23): Duplicate #define
>>> Warning 225 "C:\Programaspics\16F628A\flex_lcd.c" Line 10(15,22): Duplicate #define
>>> Warning 225 "C:\Programaspics\16F628A\flex_lcd.c" Line 11(15,22): Duplicate #define
>>> Warning 225 "C:\Programaspics\16F628A\flex_lcd.c" Line 12(14,22): Duplicate #define
C:\Programaspics\16F628A\pruebalcd.o ===>  0 Errors,  7 Warnings.
Executing: "C:\Archivos de programa\PICC\Ccsc.exe" +FM "flex_lcd.c" +EXPORT +DF +LN +T +A +M +Z +Y=9 +EA
*** Error 128 "flex_lcd.c" Line 27(1,42): A #DEVICE required before this line
C:\Archivos de programa\PICC\Drivers\flex_lcd.o ===>  1 Errors,  0 Warnings.
Halting build on first failure as requested.
BUILD FAILED: Tue Jul 29 14:49:42 2008


Este es el codigo

Código: [Seleccionar]
#include <16f628A.h>
#fuses XT,NOWDT,NOPUT
#use delay(clock=4000000)


#define LCD_DB4   PIN_B4
#define LCD_DB5   PIN_B5
#define LCD_DB6   PIN_B6
#define LCD_DB7   PIN_B7
#define LCD_RS    PIN_B1
#define LCD_RW    PIN_B2
#define LCD_E     PIN_B0

#include "flex_lcd.c"

void main()
 {
    lcd_init(); 
    lcd_putc("hola");
}


Y esta la configuracion del proyecto.



La verdad debe ser una chorrada, pero ya me viene dando problemas el enlace del mplab y el ccs c

A ver si alguien sabe de que se trata.

Un saludo y muchas gracias
Visita mi web sobre electronica,fisica,mecanica y demas temas....

http://sites.google.com/site/skygaps/Home

Desconectado Diego Gonzalez

  • PIC18
  • ****
  • Mensajes: 323
    • Visita mi web sobre electronica,fisica,mecanica y demas temas....
Re: ayuda con LCD flex_lcd
« Respuesta #7 en: 29 de Julio de 2008, 12:08:43 »
Ya lo he solucionado.

Sobraba una libreria que daba una incompatibilidad.

Ya lo he compilado, programado, simulado en proteus correctamente, pero fisicamente no me funciona. Debe ser por tiempos, o por alguna mala conexion. La lcd esta comprobada con otro montaje, asique a ver si lo soluciono.

Es la primera vez que programo una lcd con C (y no ensamblador) y por lo menos estoy satisfecho con que funcionase bien la simulacion.

Gracias igualmente
Visita mi web sobre electronica,fisica,mecanica y demas temas....

http://sites.google.com/site/skygaps/Home

Desconectado scientist

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 999
Re: ayuda con LCD flex_lcd
« Respuesta #8 en: 29 de Julio de 2008, 13:25:10 »
hola Diego Gonzales, debes de probar si no tienes que usar un ciclo infinito como

Código: [Seleccionar]
#include <16f628A.h>
#fuses XT,NOWDT,NOPUT
#use delay(clock=4000000)


#define LCD_DB4   PIN_B4
#define LCD_DB5   PIN_B5
#define LCD_DB6   PIN_B6
#define LCD_DB7   PIN_B7
#define LCD_RS    PIN_B1
#define LCD_RW    PIN_B2
#define LCD_E     PIN_B0

#include "flex_lcd.c"

void main()
 {
    lcd_init(); 
for(;;){
    lcd_putc("hola");
}
}


saludos
NO le digas a DIOS que tienes un gran problema, dile a tu problema que tienes un GRAN DIOS!!
Alma mia y castillo mio, mi Dios en quien yo confiare....

Desconectado Diego Gonzalez

  • PIC18
  • ****
  • Mensajes: 323
    • Visita mi web sobre electronica,fisica,mecanica y demas temas....
Re: ayuda con LCD flex_lcd
« Respuesta #9 en: 29 de Julio de 2008, 15:44:47 »
Hola sciencist.

El problema era el que comente ahí arriba.

Revisando el circuito una y otra vez (desde esta mañana) he encontrado que el problema es un mal contacto entre los espadines que uso para el lcd.

La verdad esque esto ha sido una "putada" ya que hasta escasos 30 minutos no he podido saber que era eso. Y dado que era la primera vez que programaba en ccs, era reacio a pensar que el prblema era de construccion.

Una pena, pero bueno, por lo menos hay resultado



Saludos y gracias por tomaros la molestia de leerme

Visita mi web sobre electronica,fisica,mecanica y demas temas....

http://sites.google.com/site/skygaps/Home

Desconectado scientist

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 999
Re: ayuda con LCD flex_lcd
« Respuesta #10 en: 29 de Julio de 2008, 17:52:56 »
 :D  no te preocupes, a mi me ha pasado infinidad de veces, muchas veces es mas la emocion de ver que funcione, que se olvidan pequeños detalles , saludos
NO le digas a DIOS que tienes un gran problema, dile a tu problema que tienes un GRAN DIOS!!
Alma mia y castillo mio, mi Dios en quien yo confiare....