Autor Tema: Problema con driver lcd.c de CSS 4.093  (Leído 3970 veces)

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

Desconectado robertohm

  • PIC10
  • *
  • Mensajes: 6
Problema con driver lcd.c de CSS 4.093
« en: 05 de Febrero de 2010, 19:28:52 »
Hola, estoy empezando con CSS y en el tema del LCD me he quedado bloqueado.
Cuando compilo me da errores, y creo es debido a no saber configurarlo.

En la cabezera de lcd.c me dice lo que hay que hacer pero no lo entiendo.
esto es lo que dice:

CONFIGURATION                                                        ////
////  The LCD can be configured in one of two ways: a.) port access or     ////
////  b.) pin access.  Port access requires the entire 7 bit interface     ////
////  connected to one GPIO port, and the data bits (D4:D7 of the LCD)     ////
////  connected to sequential pins on the GPIO.  Pin access                ////
////  has no requirements, all 7 bits of the control interface can         ////
////  can be connected to any GPIO using several ports.                    ////
////                                                                       ////
////  To use port access, #define LCD_DATA_PORT to the SFR location of     ////
////  of the GPIO port that holds the interface, -AND- edit LCD_PIN_MAP    ////
////  of this file to configure the pin order.  If you are using a         ////
////  baseline PIC (PCB), then LCD_OUTPUT_MAP and LCD_INPUT_MAP also must  ////
////  be defined.                                                          ////
////                                                                       ////
////  Example of port access:                                              ////
////    #define LCD_DATA_PORT getenv("SFR:PORTD")

El error me lo da en lcd.c en estas tres ultimas lineas:

#elif defined(__PCM__)
   LCD_PIN_MAP lcd, lcdlat, lcdtris;
   #byte lcd = LCD_DATA_PORT
   #byte lcdlat = LCD_DATA_PORT
   #byte lcdtris = LCD_DATA_PORT+0x80

error 12 : Undefined indentifier

Que debo hacer ?
GRacias


Desconectado AngelGris

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2480
Re: Problema con driver lcd.c de CSS 4.093
« Respuesta #1 en: 05 de Febrero de 2010, 19:51:41 »
Por lo que parece tenes que usar justamente la línea que te muestra comentada, pero sin comentarla obviamente.

#define LCD_DATA_PORT getenv("SFR:PORTD")

Ahí están usando como ejemplo el puerto D pero en teoría se podría asignar el B o C tranquilamente. Supongo que esa definición debería estar antes del #inlcude <lcd.c>; para que entienda el valor del #define....
De vez en cuando la vida
nos besa en la boca
y a colores se despliega
como un atlas

Desconectado robertohm

  • PIC10
  • *
  • Mensajes: 6
Re: Problema con driver lcd.c de CSS 4.093
« Respuesta #2 en: 06 de Febrero de 2010, 05:31:18 »
He puesto la siguiente linea antes del #include <lcd.c>
#define LCD_DATA_PORT getenv("SFR:PORTD")
cuando compilo tengo el mismo error.
pero al poner la siguiente linea, si me ha ido bien,
#define LCD_DATA_PORT getenv("SFR:PORTB")
Supongo que he cambiado el puerto D por el B.
Por lo que he leido, el driver LCD.C viene por defecto con el puerto D, y deberia de funcionar sin hacer nada, pero este no es mi caso.
Probare con el B, pero estaria bien saber como hacerlo con el D

Desconectado AngelGris

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2480
Re: Problema con driver lcd.c de CSS 4.093
« Respuesta #3 en: 06 de Febrero de 2010, 10:24:47 »
¿Y que PIC estás usando? no sea cosa que estés usando un PIC sin puerto D y por ello te tire el error.
De vez en cuando la vida
nos besa en la boca
y a colores se despliega
como un atlas

Desconectado robertohm

  • PIC10
  • *
  • Mensajes: 6
Re: Problema con driver lcd.c de CSS 4.093
« Respuesta #4 en: 07 de Febrero de 2010, 05:32:52 »
Menudo ERROR !!!!
Tienes toda la razón.
Empecé el programa con un 16F876,
He probado con 16F877 y compilando con puerto D, y todo ha ido bien.

Estoy siguiendo los pasos de un libro de microcontroladores el compilador C CCS y simulador proteus, tema por tema, y los inicios tienen siempre dificultad.
Mas cuando lo que siempre he hecho a sido en ensamblador con MPLAB.

Quizás sea demasiado pedir al compilador , que en la ventana de errores y warning, te dijera.  (“ he que haces? PIC 16F876 y puerto D no es posible”), en ingles claro.

Gracias


 

anything