Afficher un message sur un afficheur LCD i2C¶
Ce que l'on va faire ici¶
Voici comment utiliser un afficheur I2C avec Micropython. Ici avec la carte Pi Pico
Le matériel¶
-
La carte micropython
-
Un module afficheur LCD 1602 I2C (l'afficheur utilise un HD44780 et la com' I2C est faite via un PCF8574) - conso = 1.1mA + Led - Vcc=5V (Si 3.3V fonctionne mais affichage pas terrible..)
Le montage¶
Sur la Pi Pico, on connecte :
-
les broches SDA/SCL du module connectées en GP16(SDA) /GP17 (SCL) qui corresponde à I2C n°0
-
Vbus (=5V alim USB) ou VSys idéalement ~5V et GND de la carte vers Vcc / GND du module.
Pré-requis¶
Les fichiers suivant sont à copier sur la flash :
- lcd_api.py (7ko)
- pico_i2c_lcd.py (=esp3266_i2c_lcd.py renommé) (3ko)
Le plus simple c'est à l'aide de notre utilitaire copy.sh
à partir du répertoire où se trouvent les libs.
Dispo ici : https://github.com/dhylands/python_lcd/tree/master/lcd
Le code¶
from machine import I2C, Pin # import class I2C
from pico_i2c_lcd import I2cLcd # import lib
# The PCF8574 has a jumper selectable address: 0x20 - 0x27
DEFAULT_I2C_ADDR = 0x27
"""Test function for verifying basic functionality."""
print("Running test_main")
i2c = I2C(0,scl=Pin(17), sda=Pin(16), freq=400000) # création de l'objet i2C
lcd = I2cLcd(i2c, DEFAULT_I2C_ADDR, 2, 16) # création de l'objet LCD i2c
lcd.putstr("Hello world !")
#delay(3000)
#lcd.clear()
Notes¶
Si on ne voit rien ou pas bien, il faut modifier le contraste en tournant le potentiomètre à l'arrière jusqu'à avoir une visibilité correcte. .
Bon à savoir¶
Pour apprendre à utiliser un afficheur i2C avec micropython, le plus intéressant est de le faire dans l'interpréteur. Voir la page dédiée à la librairie i2c lcd par ailleurs sur ce site pour plus de détails.