Autor Tema: Driver lcd.c  (Leído 9420 veces)

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

Desconectado RALF2

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2060
Driver lcd.c
« en: 19 de Octubre de 2009, 00:29:26 »
Que tal amigos!
Recien me reincorporo al tema de los pic y esta vez lo hago con el ccs   :mrgreen:

Ahora bien lo que me trae por aqui.  :mrgreen:
Realizando unas pruebas con el nuevo driver, lcd.c, que trae la version 4.093 del CCS, encontre que con esta libreria uno puede definir donde colocar los pines que uno desee utilizar para un bus de 4 bits, de manera similar a como se hace con la flex_lcd  :shock:
No obstante realizando pruebas note que todo funciona bien, si el pic a utilizar es de 40 pines   :shock: como por ejemplo el pic16f877A, pero si el pic es de 28 pines tira un error el compilador.  :?
Les adjunto el programa junto con la simulacion y una fotito  ;-)

Relato esta historia por si alguien sabe el porque de ello o por si alguna persona se le ocurre utilzar esa libreria (lcd.c) sin tomar en cuenta el detallito que les comente  :mrgreen:
Cambien el include por un pic de 28 pines y veran que les tira el error portD...  :z)
nota: Porque esa limitante no la indica la libreria en su encabezado?

Saludos

Desconectado Suky

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: Driver lcd.c
« Respuesta #1 en: 19 de Octubre de 2009, 00:37:00 »
Eso se soluciona agregando antes del include la definición de los pines a utilizar:

Código: C
  1. #define LCD_ENABLE_PIN  PIN_B0
  2. #define LCD_RS_PIN      PIN_B1      
  3. #define LCD_RW_PIN      PIN_B2                            
  4. #define LCD_DATA4       PIN_B4                              
  5. #define LCD_DATA5       PIN_B5                            
  6. #define LCD_DATA6       PIN_B6      
  7. #define LCD_DATA7       PIN_B7

Saludos!
No contesto mensajes privados, las consultas en el foro

Desconectado RALF2

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2060
Re: Driver lcd.c
« Respuesta #2 en: 19 de Octubre de 2009, 00:54:12 »
Que tal suky!
Mira bien el archivo que envie y veras que esta como tu dices  :mrgreen:
Primero los define y luego el include lcd.c  :shock:

Pero no os preocupeis, consegui la respuesta a mi problema 10 minutos despues de haber hecho la pregunta   :lol:

Hay que colocar todo como les indique en el adjunto anterior, solo van a cambiar el pic por uno de 28 pines por ejemplo el pic16f876A
Luego dentro de la libreria lcd.c van a modificar donde dice:
#ifndef LCD_DATA_PORT
abajo a la derecha aparece esto:
getenv("SFR:PORTD")
Alli mismo van a cambiar la D por la letra del puerto donde tengan los datos y vuala
lcd.c vive!!!  :D adjunto foto

Saludos

Desconectado Cryn

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4169
Re: Driver lcd.c
« Respuesta #3 en: 20 de Octubre de 2009, 17:50:24 »
muy buen dato RALF, entonces el driver lcd.c de CCS ya es flex LCD? :shock:
.

Desconectado Suky

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: Driver lcd.c
« Respuesta #4 en: 20 de Octubre de 2009, 17:59:31 »
Que tal suky!
Mira bien el archivo que envie y veras que esta como tu dices  :mrgreen:
Primero los define y luego el include lcd.c  :shock:

Uyy! perdón, no baje el archivo  :mrgreen: Buenísimo que se soluciono el tema.


Saludos!
No contesto mensajes privados, las consultas en el foro

Desconectado RALF2

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2060
Re: Driver lcd.c
« Respuesta #5 en: 20 de Octubre de 2009, 22:42:00 »
Que tal amigos!
Suki no hay problema  :mrgreen:
Cryn pana es como dices funciona como el driver flex_lcd pero solo para lcd de 20x2  :(
No funciona para lcd de 20x4  :?

Pero del resto funciona como una flex_lcd  ;-)

nota:
No lo confundan este driver nuevo con el primero que traia el ccs, porque me imagino que alguien pensara que es el mismo y no lo es  :mrgreen:

Saludos

Desconectado Cryn

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4169
Re: Driver lcd.c
« Respuesta #6 en: 21 de Octubre de 2009, 14:41:11 »
nota:
No lo confundan este driver nuevo con el primero que traia el ccs, porque me imagino que alguien pensara que es el mismo y no lo es  :mrgreen:
Exactamente eso fue lo que vi cuando lo abrí, que no se parecía en nada al anterior, porque antes se definía solamente si querías usar o el puerto B o el puerto D, ahora se lo ve más flexible

seguramente que se podrá con otros tamaños de LCD hay que ver donde modificar un poco

saludos!
.