- Material requerit
- Diagrama del circuit del temporitzador del compte enrere Arduino
- Codi i explicació del temporitzador de compte enrere Arduino
Un temporitzador és un tipus de rellotge utilitzat per mesurar intervals de temps. Hi ha dos tipus de temporitzador, un que compta a partir de zero, per mesurar el temps transcorregut, anomenat Cronòmetre. I, el segon compte enrere a partir d’una durada de temps especificada proporcionada per l’usuari, anomenada generalment com a compte enrere.
Aquí, en aquest tutorial, us mostrarem com fer un temporitzador de compte enrere mitjançant Arduino. Aquí no fem servir cap mòdul de Rellotge en temps real (RTC) per obtenir el temps. La durada del temps l’ofereix l’usuari amb l’ajut del teclat i del LCD de 16x2. I quan el temporitzador arribi a zero, es produirà un so d'alerta amb l'ajuda de Buzzer.
Material requerit
- Arduino UNO
- LCD 16 * 2
- Teclat de matriu 4 * 4
- Zumbador
- Polsador
- Potenciòmetre (10k)
- Resistència (10 k, 100 ohm)
- Connexió de cables
Diagrama del circuit del temporitzador del compte enrere Arduino

Arduino Uno s’utilitza aquí com a controlador principal. Es fa servir un teclat per alimentar la durada del temps i s’utilitza una pantalla LCD de 16 * 2 per mostrar el compte enrere. El polsador s’utilitza per iniciar l’hora. Consulteu aquí com s’interfata el teclat 4x4 amb Arduino i el LCD 16x2 amb Arduino.
Codi i explicació del temporitzador de compte enrere Arduino
El codi complet del temporitzador Arduino es dóna al final d’aquest projecte.
En aquest codi següent, estem inicialitzant biblioteques per al teclat i la pantalla LCD i les variables utilitzades al codi.
#incloure
Ara, al codi següent, estem inicialitzant el núm. de files i columnes per definir la matriu del teclat.
byte const ROWS = 4; // Quatre files const byte COLS = 4; // Tres columnes de tecles de caràcters = {{'1', '2', '3', 'A'}, {'4', '5', '6', 'B'}, {'7', ' 8 ',' 9 ',' C '}, {' * ',' 0 ',' # ',' D '}};
Per connectar el teclat de matriu 4 * 4 amb Arduino hem de definir els pins de les files i les columnes. Així doncs, a sota del codi hem definit pins per al teclat i LCD de 16x2.
byte rowPins = {6, 7, 8, 9}; // Connecta el teclat ROW0, ROW1, ROW2 i ROW3 a aquests pins Arduino byte colPins = {10, 11, 12, 13}; // Connecta el teclat COL0, COL1 i COL2 a t LiquidCrystal lcd (A0, A1, 5, 4, 3, 2); // Crea un objecte LC. Paràmetres: (rs, enable, d4, d5, d6, d7)
El codi següent s’utilitza per fer el teclat, Teclat kpd = Teclat (makeKeymap (tecles), filaPins, colPins, FILES, COLS);
Al codi de funció void setFeedingTime () , després de prémer el botó podem introduir el temps per al temporitzador i, després d’introduir la durada del temps del temporitzador, hem de prémer D per iniciar el compte enrere.
void setFeedingTime () {feed = true; int i = 0; lcd.clear (); lcd.setCursor (0,0); lcd.print ("Configura el temps d'alimentació"); lcd.clear (); lcd.print ("HH: MM: SS"); lcd.setCursor (0,1); mentre (1) {clau = kpd.getKey (); char j; if (clau! = NO_KEY) {lcd.setCursor (j, 1); lcd.print (clau); r = clau-48; i ++; j ++; if (j == 2 - j == 5) {lcd.print (":"); j ++; } retard (500); } if (clau == 'D') {clau = 0; trencar; }} lcd.clear (); }
A la funció void setup () , hem inicialitzat la comunicació LCD i sèrie i hem definit els pins com a INPUT i OUTPUT al codi següent.
void setup () {lcd.begin (16,2); Serial.begin (9600); pinMode (A0, OUTPUT); pinMode (A1, OUTPUT); pinMode (A3, INPUT); pinMode (A4, OUTPUT); }
El treball d’aquest temporitzador de compte enrere d’Arduino és senzill, però el codi és una mica complex. El codi s’explica pels comentaris del codi.
Inicialment, s’imprimirà “Arduino Timer” a la pantalla LCD fins que premeu el botó. Tan bon punt premeu el botó, us demanarà que introduïu la durada del temps de compte enrere trucant a la funció " setFeedingTime ". A continuació, podeu introduir la durada del temps amb l'ajut del teclat. A continuació, haureu de prémer "D" per estalviar el temps i començar el temporitzador de compte enrere. Aquí, en funció de bucle buit () , hem fet alguns càlculs per disminuir el temps segon per segon i mostrar els valors adequats d’Hora, Minuts i Segons (HH: MM: SS) segons el temps restant. Tot el codi s’explica bé pels comentaris. A continuació, podeu consultar el codi complet i el vídeo de demostració.

Quan el temporitzador arriba a zero, el timbre comença a emetre un so i emet un so només 100 vegades (segons el codi). Per aturar el brunzidor, manteniu premut el botó. Podeu utilitzar el polsador en qualsevol moment per aturar el temporitzador entre el recompte.

