Chronomètre Arduino Nano LCD sans potentiomètre
Composants et fournitures
![]() |
| × | 1 | |||
![]() |
| × | 1 | |||
![]() |
| × | 1 | |||
![]() |
| × | 3 | |||
![]() |
| × | 5 | |||
![]() |
| × | 1 | |||
![]() |
| × | 26 |
À propos de ce projet
Bonjour à tous !
Ce projet est un projet d'apprentissage simple pour commencer avec LCD. Dans ce projet, j'utilise Arduino NANO et LCD QUAPASS 1602A 16x2. Ce chronomètre peut compter les heures, les minutes et les secondes. Vous pouvez également modifier la luminosité de l'écran LCD.
Avec juste un petit changement de code, vous pouvez également compter les centièmes, mais mon écran LCD ne fonctionne pas car l'écran ne peut pas se rafraîchir aussi rapidement.
J'ai configuré des timings presque parfaits pour mon chronomètre (mon chronomètre a un écart d'environ 15%, donc si vous l'exécutez pendant 10 minutes réelles, ce sera 10 minutes et 2 secondes sur mon chronomètre). Donc, si vous voulez changer quelque chose, c'est le sous-programme de démarrage (dans le sous-programme de programme nommé chronomètre), vous devrez également modifier les horaires en raison du temps d'exécution d'Arduino sur chaque code.
ÉTAPE 1
Connectez les fils à l'Arduino et à l'écran LCD comme ceci (regardez ce que SCHEMATIC montre).
ÉTAPE 2
Copiez et collez mon code ci-dessous dans votre IDE Arduino. Et maintenant, branchez votre Arduino sur une clé USB. Cliquez sur le bouton de téléchargement et votre programme devrait être en cours d'exécution.
ÉTAPE 3
Amusez-vous avec mon chronomètre LCD simple et facile à fabriquer.
Si vous avez des questions, laissez-les dans les commentaires.
Code
- Code
CodeArduino
C'est le code de mon chronomètre. Copiez-le simplement dans Arduino IDE et téléchargez-le sur votre Arduino./* Simple programme de chronomètre LCD avec boutons d'arrêt, de démarrage, de réinitialisation et de tour.*///y compris la bibliothèque pour LCD#include//réglage up LCD INPUT pinsLiquidCrystal lcd (12,11,5,4,3,2) ;//réglage des heures, minutes, secondes et millisecondes à 0int h=0 ; entier m=0; entier s=0; entier ms=0; //définit la broche pour tous les boutonsconst int start_pin =8; const int stop1_pin =9 ; const int reset_pin =10; //définit les points de départ (dans mon cas 0)int start=0; int stop1=0;int reset=0;int bright_pin =6; //définit la broche pour définir la luminositéintluminosité=100 ; // vous pouvez modifier ce nombre pour modifier la configuration de l'annulation de la luminosité () { analogWrite (brightness_pin ,brightness); //cela définit la luminosité sur la broche 6 lcd.begin(16 ,2) ; //démarrage de l'écran LCD //définition des broches si elles sont des broches INPUT ou OUTPUT pinMode(start_pin, INPUT); pinMode(stop1_pin, INPUT); pinMode(reset_pin, INPUT); pinMode(brightness_pin, OUTPUT);} void loop() { lcd.setCursor(0,1) ; lcd.print("CHRONO"); lcd.setCursor(0,0); lcd.print("TEMPS :"); lcd.print(h); lcd.print(":"); lcd.print(m); lcd.print(":"); lcd.impression(s) ; start =digitalRead(start_pin); // lecture de l'état du bouton if(start ==HIGH) { stopwatch(); //va au chronomètre du sous-programme } } //--------------------SOUS-PROGRAMMES----------------- --------void chronomètre(){ lcd.setCursor(0,0); //définir le point de départ sur lcd lcd.print("TIME:"); //écriture de TIME lcd.print(h); //écriture des heures lcd.print(":"); lcd.print(m); //écriture des minutes lcd.print(":"); lcd.impression(s) ; //écriture des secondes ms=ms+10; retard(10) ; if(ms==590) { lcd.clear(); //efface l'écran LCD } if(ms==590) //si état pour compter les secondes { ms=0; s=s+1 ; } if(s==60) //if état pour compter les minutes { s=0; m=m+1 ; } if(m==60) //if état pour compter les heures { m=00; h=h+01 ; } lcd.setCursor(0,1) ; lcd.print("CHRONO"); stop1 =digitalRead(stop1_pin); //lecture de l'état du bouton if(stop1 ==HIGH) //vérification si le bouton est enfoncé { stopwatch_stop(); //aller au sous-programme } else { chronomètre(); //aller au sous-programme }}void stopwatch_stop(){ lcd.setCursor(0,0); lcd.print("TEMPS :"); lcd.print(h); lcd.print(":"); lcd.print(m); lcd.print(":"); lcd.impression(s) ; lcd.setCursor(0,1) ; lcd.print("CHRONO"); start =digitalRead(start_pin); // lecture de l'état du bouton if(start ==HIGH) { stopwatch(); //aller au sous-programme } reset =digitalRead(reset_pin); // lecture de l'état du bouton if(reset ==HIGH) { stopwatch_reset(); //aller au sous-programme loop(); } if(reset ==LOW) { stopwatch_stop(); //aller au sous-programme }}void stopwatch_reset(){ lcd.clear(); lcd.setCursor(0,1) ; lcd.print("CHRONO"); h=00 ; //réglage des heures à 0 m=00; //mise à 0 des minutes s=00 ; //définir les secondes à 0 return ; //sortie du programme et retour au point d'entrée du programme}
Bibliothèque
C'est la bibliothèque dont vous avez besoin pour LCD.https://github.com/arduino-libraries/LiquidCrystalSchémas
Ceci est un schéma de mon circuit.
Processus de fabrication