Skip to main content

Déboguer le clavier écran LCD d’Arduino avec Digital Discovery

awong
0

Dans ce projet, vous allez apprendre à déboguer un écran HD44780.

Vous aurez besoin d’un Digital Discovery de Diligent  (136-8070) , d’un instrument combinant un analyseur logique et un générateur de modèles. Le Digital Discovery vous permet de déboguer, visualiser et simuler des signaux numériques pour la plupart des projets embarqués. Nous utilisons Python pour déboguer l’écran LCD.

Digilent LCD Test

Passons en revue toutes les étapes.

Étape 1 : Connectez l’écran LCD à Arduino Uno

Pour commencer, nous connectons l’écran LCD à Arduino Uno  (769-7409)  selon le tableau de câblage suivant. L’esquisse Arduino fourni définit le nombre de colonnes et de lignes de l’écran LCD, initialise les communications série et active le rétroéclairage. La bibliothèque LiquidCrystal est utilisée.

Broche LCD Broche Arduino Uno 
RS 8
Enable (Activer) 9
D4 4
D5 5
D6 6
D7 7
Backlight control (Commande de rétroéclairage) 10
R/W Ground (Masse)

Étape 2 : Connectez le matériel à Digital Discovery

Après avoir connecté l’écran LCD à l’Arduino Uno, nous devons connecter l’ensemble du système à Digital Discovery selon le schéma de câblage suivant.

Broche Digital Discovery Broche LCD Shield
GND GND
DIN0 EN
DIN1 RS
DIN2 D4
DIN3 D5
DIN4 D6
DIN5 D7

Remarque : La masse doit être connectée avant toute autre connexion.

Étape 3 : Écrire un script Python pour déboguer l’écran LCD

L’acquisition et l’analyse de données en temps réel sont utilisées. Le script utilise les quatre threads suivants:

  1. Le thread principal (GUI) initialise l’équipement et est responsable de l’opération GUI.
  2. Le thread d’acquisition collecte les données en temps réel de Digital Discovery et les place dans une file d’attente.
  3. Le thread de traitement des données brutes. Lit les données de la file d’attente. Verrouille uniquement aux fronts montants de EN et place les données dans une autre file d’attente.
  4. Le thread de traitement des données. Lit les données verrouillées de la deuxième file d’attente et simule le comportement de l’écran HD44780.

Étape 4 : Déboguer l’écran LCD

Exécutez le script Python. Si le tampon brut ou le tampon de données se remplissent très rapidement, la fréquence d’échantillonnage doit être réduite. L’indicateur « Int » indique si l’initialisation a été détectée par le script. Une valeur de « 2 » signifie que l’initialisation s’est déroulée avec succès et les valeurs de « 0 » ou « 1 » indiquent un processus inachevé.

Com10 Decoder Screen

Les données envoyées à l’écran LDC peuvent être vues dans l’instrument WaveForms Logic Analyzer de Digilent. Dans le Logic Analyzer, ajoutez un bus avec horloge sur le front montant du signal EN. Ensuite, ajoutez le signal RS comme un signal séparé et réglez le mode de déclenchement sur normal avec un déclenchement sur un front montant du signal EN.

Com10 Setup Screen

Les détails du projet, l’esquisse Arduino, les scripts Python sont disponibles sur la page de documentation de Digilent.

Love learn engineering in hands-on approach. Interested in new technology. Work in Digilent as International Sales and Distribution Manager.

Recommended Articles

Commentaires

DesignSpark Electrical Logolinkedin