Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Problema LCD 20x4 conectado por I2C
#1
Estoy probando a conectar una LCD 20X4 que viene con el módulo LCM1602 I2C por atrás.

Primero tuve que buscar una librería que me dejase compilar bien. Regata había colgado una en su blog pero no me funciona, supongo que por la versión del IDE (estoy con la última en XP, en el macbook no tengo más que problemas con las versiones de IDE).

Tras repasar conexiones y pasar un sketch para escanear el puerto I2C y detectar la dirección de la pantalla, sigo sin conseguir que muestre nada. Todos los ejemplos traen la dirección de pantalla 0x20, y a mi me la detecta en la 0x27. Si le asigno la 0x27, la pantalla parece que cambia de polaridad y se invierten los colores, quedándose así hasta que la desconecto de la alimentación.

Lo más curioso, es que jugando con el contraste, la línea 0 y la 2 tienen los dígitos rellenos con cuadros (típicos cuando algo falla), y las otras dos líneas no.

Alguien tiene experiencia con esto¿?
Citar
#2
jukillo escribió:Lo más curioso, es que jugando con el contraste, la línea 0 y la 2 tienen los dígitos rellenos con cuadros (típicos cuando algo falla), y las otras dos líneas no.

Como has dicho es lo típico cuando algo falla, normalmente cuando sucede esto es algún problema de conexiones, revisalas.
Si puedes encontrar otra librería que te funcione pruebala, e instalate si es posible otra versión estable del IDE.
Citar
#3
Según he leído en un foro de acuarios (:roto2Sonrisa, lo de los cuadros es lo que muestra habitualmente cuando no recibe datos, así que me quedo más tranquilo por si pudiera estar tocada.

Tendré que empezar de cero, borrar las librerías que probé, bajar otro IDE mas viejo, etc.. pero es una jodienda.
Citar
#4
Yo hace poco compré un módulo I2C para mi pantalla de 16x2 que me venía en el kit de DX.
La hice funcionar con las librerías y sketchs de aquí: http://tallerarduino.com/2013/06/23/lcd-i2c-y-arduino/ retocando el código un poco para adaptarlo a mi pantalla que es más pequeña.
Me bajé un sketch por ahí que era I2CScanner o algo así y a mi también me detectó la pantalla en 0x27.
Citar
#5
He visto el módulo que usas y es exactemente el mismo que uso yo (uso siempre la misma en distintos tipos de módulos y me funciona perfectamente), yo suelo cambiarle la dirección y la pongo siempre en 0x20 (eso se hace si te fijas atrás en unos pines que ponen A0, A1 y A2), así todas las pantallas que tengo tienen la misma dirección I2C. A ver si con alguna de ellas puedes echar a andar la pantalla.

Para tener dirección 0x20 (no es necesario hacerlo pero así sabes fijo que tiene esa dirección) sueldas tal que así los pines A0, A1 y A2:

resim

Las librerías que uso yo y me funcionan perfectamente (incluyo una para 20x4 y otra para 16x2):

http://www.mediafire.com/?28j1cj67jrku6yi
Citar
#6
Maña subo una foto. Tengo que revisar el anuncio donde lo pillé, a ver si pone algo.

P.D.: En mi modelo no tengo esos pines.
Citar
#7
Si estamos hablando de lo mismo, para el rover estoy usando una LCD con el módulo I2C también, es muy cómodo y sencillo trabajar así con la LCD.

https://github.com/hectorri/ARDURover/bl.../TX/TX.ino (ojo!, versión pre-alfa! pero para las cuatro líneas de la lcd a lo mejor te haces una idea)

Uso la misma librería que el compañero Regata. Cuando subas alguna foto lo miramos.
Citar
#8
Aquí la dichosa foto. Casi puedo decir que la saqué, la llevé a revelar y volví, xD.

resim

P.D.: el 233 ese no tiene nada que ver :dale2:
Citar
#9
yo tuve el mismo problema y es debido a que no todos estos modulos tienen conectados los pines del lcd a los mismos pines del chip pcf.
el comando que me funciona perfectamente es este: LiquidCrystal_I2C lcd(0x20, 2,1,0,4,5,6,7,3, POSITIVE);
los numeros son los pines del pcf, en la documentacion de la libreria menciona que pin del lcd es cada digito.
yo lo encontre buscando en google, en un foro. prueba poniendo el texto que sale en la placa, aunque primero pon el comando que te digo por si coincide
mi modulo es exactamente igual al de la foto que ha puesto regata.
la librería que uso no es la que viene con el arduino sino la de malpartida que puedes encontrar en arduino playground (bastante mejor, porcierto)
Citar
#10
Te funciona ya o aun andas peleandote?
Citar
#11
Aun ando con ella a vueltas, pero no tuve tiempo aun a trastear mas. Mañana si puedo me pondre con ella. O funciona lo le planto fuego.

Ya os.comentare.
Citar
#12
Qué versión del IDE estáis usando? win, mac, linux¿?
Citar
#13
Pues nada, creo que desisto. He probado con las versiones del IDE 1.0.5 y 0023. Las librerías LiquidCrystal_I2C 2004 (la más genérica), la de malpartida, y la de web4robot.

Aquí una lista que encontré en el playground de arduino: http://playground.arduino.cc//Code/LCDi2c

Según lo que leo, la PCF8574 es la mía, y no hay manera. Hace cosas extrañas según los códigos que meta, así que supongo que será lo que dice juanjodcv (tu línea de código tampoco me compila) y tiene los pines puestos sabe dios como.

Creo que no me va a quedar otra que desoldar, mirar datasheets y pistas y resoldar. O mejor le planto fuego y me compro otra.
Citar
#14
hola

me parece extrañisimo que no te funcione, haber si podemos ayudarte.
- tienes bien puestas las resistencias de pull-up del bus I2C?
- que error te da mi codigo?
- has desinstalado la libreria liquidcristal del IDE antes de poner la de malpartida.?
- has probado alguna de las demos en vez de tu programa?
- sino hazte uno de prueba muy simple, pon el include de liquidcristal y el de wire.h,
el comando que te di,y en void setup, lcd.begin(20,4), lcd.print("ya funciona el muy....") y el loop vacio

si no te funciona, o tienes un problema de cableado, o tu modulo tiene conectado los pines de otra forma
y hay que cambiar el comando, o esta averiado.

yo tengo 2 modulos y 3 display y me funcionan todos entre si a la primera
Citar
#15
Yo también probaría lo que dice el compañero juanjodcv, es muy raro que no funcione el módulo con ninguna de las librerías puestas, yo tengo un montón de módulos de esos y me funcionan todos correctamente, puedes poner el sitio donde lo compraste, quizás el comprador en la descripción del producto tenga puesto alguna modificación que hay que hacerle a la librería, me paso con un módulo que compre.
Citar
#16
juanjodcv escribió:hola

me parece extrañisimo que no te funcione, haber si podemos ayudarte.
- tienes bien puestas las resistencias de pull-up del bus I2C? De cuanto tienen que ser? a ver si me voy a colar..
- que error te da mi codigo? Mañana lo posteo.
- has desinstalado la libreria liquidcristal del IDE antes de poner la de malpartida.? Si.
- has probado alguna de las demos en vez de tu programa? Mi programa? xD. Solo estoy con demos.
- sino hazte uno de prueba muy simple, pon el include de liquidcristal y el de wire.h,
el comando que te di,y en void setup, lcd.begin(20,4), lcd.print("ya funciona el muy....") y el loop vacio

si no te funciona, o tienes un problema de cableado, o tu modulo tiene conectado los pines de otra forma
y hay que cambiar el comando, o esta averiado.

yo tengo 2 modulos y 3 display y me funcionan todos entre si a la primera

Insistiré pues. Empezaré de cero todo borrando lo que tengo en mente y a ver.

Regata escribió:Yo también probaría lo que dice el compañero juanjodcv, es muy raro que no funcione el módulo con ninguna de las librerías puestas, yo tengo un montón de módulos de esos y me funcionan todos correctamente, puedes poner el sitio donde lo compraste, quizás el comprador en la descripción del producto tenga puesto alguna modificación que hay que hacerle a la librería, me paso con un módulo que compre.

Ya lo hice, pero como hace más de tres meses que lo tengo, creo que fue en ebay y ya no me aparece el artículo, o no lo encuentro. Como le dije a juanjo insistiré una vez mas, sino en una quedada lo llevo y lo pinchas tu a ver que pasa.. :dale2:
Citar
#17
Sigue probando, yo seguiré buscando a ver si encuentro algo más de información sobre tú módulo por ahí y si encuentro ya te comento. Y si en alguna quedada a ver si la probamos y nos desvirtualizamos, a ver si organizan rápido otra quedada los de la oshwdem en coruña.
Citar
#18
siento no tener conociemientos para ayudarte, pero animo !!!!!!
Citar
#19
¿Qué diferencia hay con esta?
http://www.ebay.com/itm/251132826320

Es que es la que yo compré y no me dio ningún problema. Conectar y funcionar.
Citar
#20
ya se que es una tonteria, pero uno de los fallos mas típicos (que me paso a mi con la 16x2) es que no pongas la libreria en el sitio correcto, que este dentro de una carpeta o al reves, que este fuera de una carpeta y haya que agruparlo.

Estas seguro que esta la libreria en el sitio correcto?
Citar