Go Down

Topic: Aide problème LCD I2C (Read 7882 times) previous topic - next topic

SesechXP


Merci beaucoup pour ce sketch corrigé, je trouve une valeur à addr 39. Comment savoir à quelle adresse cela correspond ?


C'est l'adresse de l'écran Lcd sur le bus I2C (ou plus précisément celle du PCF8574).
Julien - www.idreammicro.com

fullarmor

Bonsoir nolimit60
Merci je pense que je vais me procurer des 10k pour le montage.
En ce qui concerne l'adresse de l'écran il n'y a que lorsque je téléverse le programme sur la carte avec l'adresse normalement correct (0x27) que l'écran s'éteint. Si je change d'adresse il n'y a strictement aucune réaction donc l'adresse est probablement bonne, le problème doit venir d'ailleurs.

68tjs

#32
Nov 14, 2012, 09:15 pm Last Edit: Nov 14, 2012, 09:16 pm by 68tjs Reason: 1
Quote
J'ai lu sur le livre de Christan Tavernier que la valeur est 4,7 K en  general pour le bus I2C.
Sur d'autre site c'etait 10K,j'ai fais le teste avec 10k,4.7 et 2.2k,cela n'a rien changer. smiley-sad

Wikipédia pour commencer
http://fr.wikipedia.org/wiki/I2C

Norme I2C pour continuer:
http://www.nxp.com/documents/user_manual/UM10204.pdf

nolimit60

Quote
je trouve une valeur à addr 39. Comment savoir à quelle adresse cela correspond ?


Cette valeur est du DECIMAL et en HEX cela correspond a 0x27.
Arduino 0023 et Python 3.2.3

SesechXP


Quote
je trouve une valeur à addr 39. Comment savoir à quelle adresse cela correspond ?


Cette valeur est du DECIMAL et en HEX cela correspond a 0x27.

En effet, j'ai omis de le préciser dans mon message...
Julien - www.idreammicro.com

albertrand

Petite question : le branchement de vos PCFxxxx sur l'écran corresponde avec la librairie
LiquidCrystal_I2C.
Car moi j'ai réaliser des pcb avec des PCF8574 et sur une carte (erreur de ma part) j'ai  brancher le  transitor du backlight sur une autre broche du PCF.
Peut-être quand testant les broches une par une on peut trouver la broche de commande du backlight.

PS: si tu vois l'adresse avec le scanner I2C tes résistances son bonnes.

« Ungibus et Rostro » (De bec et d'ongles)

nolimit60

Bonjour

Sur mon module,  je n'ai pas de transitor.
Il est commande par le PCF8574T.
Arduino 0023 et Python 3.2.3

papybricol

Bonjour,


...
Il est commande par le PCF8574T.


D'autres ont galèré aussi, avec le 8574T et le backlight et les librairies

http://arduino.cc/forum/index.php/topic,106655.15.html
2°page, non francophone!
Mais LCD d'un autre type, adresse différente!!

mais comme c'est "solved" ça peut (peut-être) vous aider,  ;)
...ils embarquèrent la logique, coupèrent les cordons, alors, libérés de leurs chaînes, une immensité s'ouvrait devant eux...

fullarmor

#38
Nov 15, 2012, 10:13 pm Last Edit: Nov 15, 2012, 10:18 pm by fullarmor Reason: 1
Bonjour,
Merci pour le lien papybricol mais malheureusement je n'ai pas réussi à résoudre mon problème.
Par contre avec un code très légèrement modifié j'arrive à faire se rallumer le rétro-éclairage qui n'aurait jamais du s'éteindre avec la fonction lcd.backlight().
Je ne sais pas si tu arriveras à allumer le tien aussi nolimit60, voici le code:
Code: [Select]
#include <LiquidCrystal_I2C.h>
#include <Wire.h>

LiquidCrystal_I2C lcd(0x27,16,2);

void setup()
{
 lcd.init();
 lcd.cursor_on();
 lcd.blink_on();
 lcd.backlight();
 lcd.setCursor(0,0);
 lcd.print("Hello, world!");
 lcd.cursor_off();
 lcd.blink_off();
}

void loop()
{

}

Il ne manque plus que le plus important: les caractères  :)
Ajuster le potentiomètre qui se trouve à l'arrière du lcd pourrait-il-servir à quelque chose.

Remarque: Si je penche mon écran LCD pour voir en dessous des carrées noir, je peux apercevoir un 0 dans l'angle supérieur droit.

B@tto

Tu as pû avancer ? Je viens de recevoir le mien je vais tester demain. Par contre je viens de me rappeler un truc : sur la mienne derrière il y a des pastille "prêtes à souder" A B C, il me semble avoir vu quelque part que c'est la qu'on choisit par quel protocole de communication on passe.
Blog électronique : http://battomicro.wordpress.com/
Photographie : www.interactive-celebration.fr

nolimit60

Bonjour B@tto

Non cela ne marche toujours pas , le problème vient sûrement du circuit imprimer car j'ai dessoudé le PCF8574, il est monté sur une autre plaque que j'ai fait et il fonctionne bien.

Pour les prêts à souder, je n'en n'avais pas sur ma plaque.
J'espère que tu n'auras pas autan de problème que moi.

À bientôt
Arduino 0023 et Python 3.2.3

B@tto

Non en effet moi pas de soucis ça a marché direct !
Blog électronique : http://battomicro.wordpress.com/
Photographie : www.interactive-celebration.fr

bricofoy

ce qu'il y a souvent, c'est que ces modules LCD chinois ont souvent un cablage entre le PCF et l'écran qui est différent de celui de la librairie.

sur un que j'avais acheté, j'ai bidouillé une semaine avant de trouver le bon câblage pour corriger la lib.

je joins la lib qui fonctionne sur le mien, à tout hasard.

-tu savais que si tu passe le CD de windows à l'envers, tu entends une chanson satanique ?
-non, mais il y a pire : à l'endroit, ça l'installe !

ArthurV

Bonjour !

J'ai eu le même problème (enfin je crois bien : les carrés blanc au début, et puis lorsque je téléverse le programme "hello word" je perd le contraste).
En fait, j'ai téléchargé une autre bibliothèque pour mon LCD 16x2 ici https://arduino-info.wikispaces.com/LCD-Blue-I2C
Après j'ai juste changé l'adresse qui était pour moi 0x20 (et non 0x27).

je sais pas si ça va aider quelqu'un mais je partage :)

Bonne journée

weetoz

#44
Aug 16, 2013, 03:23 pm Last Edit: Aug 16, 2013, 04:23 pm by weetoz Reason: 1
[ RESOLU] Bonjours à tous,
je ré up... des p' tits soucis aussi!!!  :smiley-eek-blue:
pour ma part, c' est un LCD bleu QAPASS 1602A et un PCF 8574P, donc adresse 0x20,
j' ai testé plusieurs bibliothèques avec IDE 0023, ( faut dire aussi que j' en ai marre de passer d' un ide à un autre). ]:D
pour l' instant j' utilise celle de  F Malpartida, aussi j' ai réglé le contraste de l' ecran avec un potard. ( qui fonctionne très bien).

Lorsque j' upload ( ou televerse si vous préférez ), il n' y a aucune réaction de l' écran. Je soupçonne les broches P0, P1, P2, P3 d' être en cause et peut-être la P5 ( où j' ai câblé la broche R/W de mon écran LCD ), d' ailleur, voici le câblage:
-résistance pulldown de 4.7k pour SCL & SDA
-PCF 8574p P0 -> lcd D4,   P1 ->  D5,   P2 -> D6,  P3 -> D7,  P4 -> E,  P5 -> RW,  P6 -> RS.

Voici le code que j' utilise:
Code: [Select]
#include <LiquidCrystal_I2C.h>
#include <Wire.h>

LiquidCrystal_I2C lcd(0x20,16,2);  // set the LCD address to 0x20 for a 16 chars and 2 line display

void setup()
{
 
 lcd.init();
 lcd.backlight();
 lcd.print("Hello, world!");
}
//int i=0;
void loop()
{

}


J' ai ouvert les libs pour essayer de comprendre le câblage à faire, mais je n' ai pas compris pour les broches RS  R/W  E où il fallait les câbler sur le PCF, pour ça que j' ai gardé le brochage " classique " que l' on trouve dans les tutos courant   :~  (

@ bricofoy, j' ai essayé ta librairie, as-tu changé les brochages de ceux que j' utilise? ( car ça n' a pas fonctionné )
@ ArthurV, pour la bibliothèque LCD-Blue-I2C, il faut utiliser la LiquidCrystal_V1.2.1 ou une autre, désolé mais je rame un peu, et en fait le sens de ma question va vers est-ce que je peux revenir sur Arduino 1.0.5?

Voilà, merci à vous pour avoir lu ce post, en espèrant ne pas vous avoir blessé les yeux.  8)

édit: dans mon cas, il m' a juste fallu inverser les broches RS  R/W  E: voici le câble qui fonctionne pour moi: RS -> P6 ( 11 ),  R/W -> P5 ( 10 ),  E ->P4 ( 9 ).
Trop cool!

Go Up