destroyedlolo a écrit :Salut,
Le LCD est en 5V : il faut regarder dans le datasheet s'il supporte le 3v mais y'a des chances que non.
Le PI de son coté est en 3.3v donc si le LCD est en 5v et que tu ne met pas de convertisseur de niveau, les pins I2C du PI vont se prendre du 5v et ne vont pas aimer.
A+
Bonjour,
C’est vrai en général mais c'est faux dans ce cas particulier

En électronique, comme en informatique, il ne sert à rien d'être un éjaculateur précoce ou de répondre trop vite
Si on suit le lien et que l'on regarde un peu ce circuit de plus près, on s’aperçoit qu'il est, en fait, constitué de 2 éléments:
- 1 afficheur LCD avec son "classique connecteur" à 16 broches (car rétro-éclairé).
- 1 circuit d'interface pour passer de la commande en mode parallèle au mode série.
L'afficheur LCD, même si les les circuits de commande prennent la forme d'une goutte de résine, est très certainement compatible avec le "vieux" HD44100H.
Le brochage du module comporte:
- + et 0 V alimentation (5V ou 3.3V)
- le bus de donnée D0 ..D7 (ni-directionnel)
- RS (Register Select)
- CE (Enable)
- R/W (Read/write)
- Anode (de la LES)
- Cathode (de rétro-éclairage)
- Contraste
Ce brochage et les signaux associés est un quasi-standard et se trouve très facilement sur Internet:
https://www.google.fr/search?q=brochage ... gmVhK0MeVM:
Cet afficheur peut fonctionner en mode 8 bits (D0 à D7) ou en mode 4 bits (D0 à D3) selon son initialisation.
Le bus est ni-directionnel car on peut écrire vers l'afficheur (commandes, datas) mais on peut aussi lire le registre.
Le module (CMOS) accepte d'être alimenté en 3.3 V ou en 5 V. En général, on préfère le 5 V à cause du rétro-éclairage.Le danger de la lecture, si le module LCD est alimenté en 5 V, est qu'il va présenter du 5 V sur le bus de donnée (TTL) ce qui est mortel pour le GPIO du Rasperry qui ne supporte que du 3.3 V.
C'est pour cela que TOUS les montages qui interfacent directement ce type de module avec le GPIO du Raspberry préconisent de mettre la broche R/W à 0V pour être certain que jamais, le module ne mettra du 5V en sortie.
C'est sur ce point précis que tu as raison.
Le LCD pourrait donc être directement relié au GPIO du Raspberry et il existe même une extension de la libwiringpi qui en simplifie la commande. Le gros problème est que, même en 4 bits, il consomme une bonne partie des broches du GGPIO, d'où l'intérêt de passer en mode série.
Le circuit d'interface pour passer en I2C (pas besoin du SPI pour aussi peu de débit) est basé sur un simple PCF 8574 qui est un "GPIO expander" quasi bidirectionnel à 8 bits.
Le rétro-éclairage est commandé par un jumper et le contraste par le potentiomètre ajustable (pas très pratique tout ça dans un boîtier).
Le PCF accepte de fonctionner en 5V et en 3.3V. En 5 V, on peut le commander (limite) avec le 3.3 V du GPIO (je ne veux pas noyer notre ami avec la feuille de caractéristiques mais elle est facile à trouver).
La conception interne du PCF et le fonctionnement même de l'I2C fait qu'il est impossible d'y retrouver du 5 V sur le bus I2C (SDA et SCL).
C'est donc sur ce point que tu as tort
Pour répondre au PO, il a plusieures solutions:
1) Regarder les exemples disponibles avec son module. Même s'ils sont dédiés à l'arduino, ils doivent être assez facilement transposable car l'objectif avoué du développeur de la wiringPi est d’être proche de l’Arduino.
2) Chercher sur Internet les projets qui mettent en œuvre un LCD ET un PCF 8574 (maintenant qu'il sait quoi chercher). Il y en a des dizaines mais celui-ci me semble bien adapté à son problème car le circuit d'interface ressemble comme un frère jumeau au sien:
http://www.raspberrypi-spy.co.uk/2015/0 ... pberry-pi/
(désolé, c'est en anglais mais très simple à comprendre).
Sylvain