Étape 3: Connecter un écran lcd et un buzzer piézo-électrique
Il est maintenant temps pour relier l’écran LCD à notre Arduino. Comme vu dans l’Introduction, vous aurez également besoin d’autres choses à faire ce circuit : un transistor 2N3904 (ou, alternativement, un 2N2222), une résistance de Ohm 10 k, un potentiomètre linéaire 10 k Ohm pour ajuster le contraste. Ces composants sont nécessaires pour rendre l’écran LCD s’allume lorsque vous appuyez sur le bouton poussoir pendant les mesures.
En outre, ajoutant un haut-parleur piézoélectrique peut être un choix judicieux si vous voulez être informé quand le compteur de distance va de reach.
NOTE: nous n’allons pas expliquer comment connecter un écran LCD à Arduino, mais aussi comment contrôler son rétro-éclairage, parce que ces procédures ont déjà été expliquées dans les cinquième et sixième étapes de notre leçon précédente, respectivement.
- Comment faire pour connecter un écran LCD à Arduino...
- .. .et comment contrôler son rétro-éclairage
Mais si vous êtes uniquement intéressé à faire les raccordements, il suffit de voir le régime Fritzing ci-joint.
Remarque : Puisque la broche 7 est maintenant utilisée par l’affichage, nous avons changé l’axe utilisé par le HC-SR04 déplaçant vers la broche 9.
L’esquisse
Nous allons adapter le croquis d’après les changements que nous voulons faire.
Dans la première partie de l’esquisse, il faut déclarer une variable et deux constantes. La première constante est la goupille PWM utilisée pour mettre en marche et éteint l’écran rétro-éclairé et le second est la fréquence de la note jouée par le haut-parleur piézo quand le compteur de distance va de rejoindre.
La variable est nécessaire pour régler la luminosité du rétro-éclairage jusqu'à la valeur maximale.
Puis nous inclure la bibliothèque innovente et initialiser la bibliothèque d’affichage LCD :
Fonction de réglage
Dans la fonction de réglage , il faut déclarer la broche 11 en tant que sortie et initialiser l’écran LCD (16 colonnes et avec 2 lignes) :
Dans la fonction de boucle , nous faisons quelques changements. Tout d’abord, nous modifions la boucle while , comme indiqué ci-dessous :
Quand le bouton n’est pas enfoncé, la condition logique a la valeur TRUE, dès l’esquisse attend dans cette boucle while. Dans ce cas, la première ligne dans le bloc désactive le rétro-éclairage, la deuxième ligne efface l’affichage et le troisième un désactive le générateur de tonalité.
Lorsque le bouton est enfoncé, la condition logique devienne FALSE et Arduino permet de sauter cette boucle while et va sur l’exécution de la ligne suivante...
.. .qui s’allume le rétro-éclairage.
Comme nous n’utilisons pas le serial monitor plus, nous devons changer les fonctions Serial.print à lcd.print.
Dans la première ligne de l’affichage, il imprime le temps de la réflexion et la distance dans le second. Si le temps de réflexion est supérieur à 38ms, l’obstacle est hors de la portée et le buzzer piezo va émettre un signal sonore et l’écran affichera le message "hors de portée", sinon l’esquisse affichera la distance mesurée.
Comme d’habitude, l’esquisse est prêt à être téléchargé.
ultrasonic_button_lcd_buzz.INO