Note

Bonjour et bienvenue dans la Communauté Facebook des passionnés de Raspberry Pi, Arduino et ESP32 de SunFounder ! Plongez plus profondément dans l’univers des Raspberry Pi, Arduino et ESP32 avec d’autres passionnés.

Pourquoi rejoindre ?

  • Support d’experts : Résolvez les problèmes après-vente et les défis techniques avec l’aide de notre communauté et de notre équipe.

  • Apprendre et partager : Échangez des astuces et des tutoriels pour améliorer vos compétences.

  • Aperçus exclusifs : Accédez en avant-première aux annonces de nouveaux produits et aux aperçus.

  • Réductions spéciales : Profitez de réductions exclusives sur nos produits les plus récents.

  • Promotions festives et cadeaux : Participez à des cadeaux et des promotions de vacances.

👉 Prêt à explorer et à créer avec nous ? Cliquez [Ici] et rejoignez-nous aujourd’hui !

1.1.7 LCD1602 I2C

Introduction

Le LCD1602 est un écran à cristaux liquides de type caractère, capable d’afficher 32 caractères (16*2) simultanément.

Composants nécessaires

Pour ce projet, nous avons besoin des composants suivants :

../_images/1.1.7_i2c_lcd_list.png

Il est très pratique d’acheter un kit complet, voici le lien :

Nom

ARTICLES DANS CE KIT

LIEN

Kit Raphael

337

Raphael Kit

Vous pouvez également les acheter séparément à partir des liens ci-dessous.

INTRODUCTION DES COMPOSANTS

LIEN D’ACHAT

Carte d’extension GPIO

ACHETER

Plaque d’expérimentation (Breadboard)

ACHETER

Fils de Liaison

ACHETER

LCD1602 I2C

ACHETER

Schéma de câblage

Nom T-Board

physique

SDA1

Pin 3

SCL1

Pin 5

../_images/1.1.7_i2c_lcd_schematic.png

Procédures expérimentales

Étape 1 : Construisez le circuit.

../_images/1.1.7_i2c_lcd1602_circuit.png

Étape 2 : Configurer l’I2C (voir Configuration I²C. Si vous avez déjà configuré l’I2C, passez cette étape.)

Étape 3 : Changer de répertoire.

cd ~/raphael-kit/python-pi5

Étape 4 : Exécuter.

sudo python3 1.1.7_Lcd1602_zero.py

Après l’exécution du code, vous verrez « Greetings!, From SunFounder » s’afficher sur le LCD.

Note

  • Si vous obtenez l’erreur FileNotFoundError: [Errno 2] No such file or directory: '/dev/i2c-1', vous devez consulter Configuration I²C pour activer l’I2C.

  • Si vous obtenez l’erreur ModuleNotFoundError: No module named 'smbus2', veuillez exécuter sudo apt install python3-smbus2.

  • Si l’erreur OSError: [Errno 121] Remote I/O error apparaît, cela signifie que le module est mal câblé ou qu’il est défectueux.

  • Si le code et le câblage sont corrects, mais que le LCD n’affiche toujours pas de contenu, vous pouvez tourner le potentiomètre à l’arrière pour augmenter le contraste.

Avertissement

Si vous recevez le message d’erreur RuntimeError: Cannot determine SOC peripheral base address, veuillez consulter Si « gpiozero » ne fonctionne pas.

Code

Note

Vous pouvez Modifier/Réinitialiser/Copier/Exécuter/Arrêter le code ci-dessous. Mais avant cela, vous devez aller au chemin source du code comme raphael-kit/python-pi5. Après avoir modifié le code, vous pouvez l’exécuter directement pour voir l’effet.

#!/usr/bin/env python3
import LCD1602  # Import module for interfacing with LCD1602
import time     # Import module for timing functions

def setup():
    # Initialize LCD with I2C address 0x27 and enable backlight
    LCD1602.init(0x27, 1)
    # Display the message 'Greetings!' at the top-left corner (row 0, column 0)
    LCD1602.write(0, 0, 'Greetings!')
    # Display the message 'From SunFounder' on the second line (row 1, column 1)
    LCD1602.write(1, 1, 'From SunFounder')
    time.sleep(2)  # Display messages for 2 seconds

try:
    setup()  # Run the setup function to initialize the LCD and display messages

except KeyboardInterrupt:
    # Clear the LCD display if a keyboard interruption (e.g., Ctrl+C) occurs
    LCD1602.clear()
    pass  # Proceed with no further action

Explication du code

  1. Ce fichier est un fichier open source pour contrôler le LCD1602 I2C. Il nous permet d’utiliser facilement le LCD1602 I2C.

    import LCD1602  # Import module for interfacing with LCD1602
    
  2. La fonction initialise le système I2C avec le symbole de l’appareil désigné. Le premier paramètre est l’adresse de l’appareil I2C, qui peut être détectée via la commande i2cdetect (voir l’Annexe pour les détails). L’adresse du LCD1602 I2C est généralement 0x27.

    # Initialize LCD with I2C address 0x27 and enable backlight
    LCD1602.init(0x27, 1)
    
  3. LCD1602.write est utilisé pour afficher des messages sur le LCD. Les deux premiers paramètres sont les positions de la ligne et de la colonne, et le troisième est le message. Vous pouvez maintenant voir « Greetings! From SunFounder » affiché sur le LCD.

    # Display the message 'Greetings!' at the top-left corner (row 0, column 0)
    LCD1602.write(0, 0, 'Greetings!')
    # Display the message 'From SunFounder' on the second line (row 1, column 1)
    LCD1602.write(1, 1, 'From SunFounder')