- Erforderliches Material
- Arduino Countdown Timer Schaltplan
- Arduino Countdown Timer Code und Erklärung
Ein Timer ist eine Art Uhr, die zur Messung von Zeitintervallen verwendet wird. Für die Messung der verstrichenen Zeit gibt es zwei Arten von Timern, von denen einer von Null aufwärts zählt und als Stoppuhr bezeichnet wird. Und der zweite zählt ab einer vom Benutzer angegebenen Zeitdauer herunter, die allgemein als Countdown-Timer bezeichnet wird.
In diesem Tutorial zeigen wir Ihnen, wie Sie mit Arduino einen Countdown-Timer erstellen. Hier verwenden wir kein Echtzeituhrmodul (RTC), um die Zeit zu ermitteln. Die Zeitdauer wird vom Benutzer mit Hilfe der Tastatur und des 16x2-LCD angegeben. Und wenn der Timer Null erreicht, wird mit Hilfe von Buzzer ein Alarmton erzeugt.
Erforderliches Material
- Arduino UNO
- LCD 16 * 2
- 4 * 4-Matrixtastatur
- Summer
- Druckknopf
- Potentiometer (10k)
- Widerstand (10k, 100 Ohm)
- Kabel anschließen
Arduino Countdown Timer Schaltplan
Arduino Uno wird hier als Hauptcontroller verwendet. Ein Tastenfeld dient zur Eingabe der Zeitdauer und ein 16 * 2-LCD zur Anzeige des Countdowns. Mit der Taste wird die Uhrzeit gestartet. Überprüfen Sie hier, wie Sie die 4x4-Tastatur mit Arduino und das 16x2-LCD mit Arduino verbinden.
Arduino Countdown Timer Code und Erklärung
Der vollständige Arduino-Timer-Code ist am Ende dieses Projekts angegeben.
In diesem Code unten initialisieren wir Bibliotheken für Tastatur und LCD sowie die im Code verwendeten Variablen.
#einschließen
Im folgenden Code initialisieren wir nun die Nr. von Zeilen und Spalten zum Definieren der Matrix für die Tastatur.
const byte ROWS = 4; // Vier Zeilen const byte COLS = 4; // Drei Spalten char keys = {{'1', '2', '3', 'A'}, {'4', '5', '6', 'B'}, {'7', ' 8 ',' 9 ',' C '}, {' * ',' 0 ',' # ',' D '}};
Um die 4 * 4-Matrixtastatur mit Arduino zu verbinden, müssen wir die Pins für die Zeilen und Spalten definieren. Im folgenden Code haben wir also Pins für Tastatur und 16x2-LCD definiert.
Byte rowPins = {6, 7, 8, 9}; // Verbinde die Tastatur ROW0, ROW1, ROW2 und ROW3 mit diesen Arduino-Pins. Byte colPins = {10, 11, 12, 13}; // Verbinde die Tastatur COL0, COL1 und COL2 zu t LiquidCrystal lcd (A0, A1, 5, 4, 3, 2); // Erstellt ein LC-Objekt. Parameter: (rs, enable, d4, d5, d6, d7)
Der folgende Code wird zum Erstellen der Tastatur verwendet.
Tastatur kpd = Tastatur (makeKeymap (Schlüssel), rowPins, colPins, ROWS, COLS);
Im Funktionscode void setFeedingTime () können wir nach Drücken der Taste die Zeit für den Timer eingeben. Nach Eingabe der Zeitdauer des Timers müssen wir D drücken, um den Countdown zu starten.
void setFeedingTime () {feed = true; int i = 0; lcd.clear (); lcd.setCursor (0,0); lcd.print ("Fütterungszeit einstellen"); lcd.clear (); lcd.print ("HH: MM: SS"); lcd.setCursor (0,1); while (1) {key = kpd.getKey (); char j; if (key! = NO_KEY) {lcd.setCursor (j, 1); lcd.print (Schlüssel); r = Schlüssel-48; i ++; j ++; if (j == 2 - j == 5) {lcd.print (":"); j ++; } delay (500); } if (key == 'D') {key = 0; Unterbrechung; }} lcd.clear (); }}
In der Funktion void setup () haben wir die LCD- und serielle Kommunikation initialisiert und die Pins im folgenden Code als INPUT und OUTPUT definiert.
void setup () {lcd.begin (16,2); Serial.begin (9600); PinMode (A0, OUTPUT); PinMode (A1, OUTPUT); PinMode (A3, INPUT); PinMode (A4, OUTPUT); }}
Die Arbeit mit diesem Arduino Countdown Timer ist einfach, aber der Code ist etwas komplex. Der Code wird durch die Kommentare im Code erklärt.
Zunächst wird „Arduino Timer“ auf dem LCD-Display gedruckt, bis Sie den Druckknopf drücken. Sobald Sie die Drucktaste drücken, werden Sie aufgefordert, die Countdown-Zeitdauer einzugeben, indem Sie die Funktion „ setFeedingTime “ aufrufen. Anschließend können Sie die Zeitdauer mit Hilfe der Tastatur eingeben. Dann müssen Sie 'D' drücken, um die Zeit zu sparen und den Countdown-Timer zu starten. Hier in der Funktion void loop () haben wir einige Berechnungen durchgeführt, um die Zeit von Sekunde zu Sekunde zu dekrementieren und die richtigen Werte für Stunde, Minuten und Sekunden (HH: MM: SS) entsprechend der verbleibenden Zeit anzuzeigen. Der gesamte Code wird durch Kommentare gut erklärt. Sie können den vollständigen Code und das Demonstrationsvideo unten überprüfen.
Wenn der Timer Null erreicht, piept der Summer und piept nur 100 Mal (gemäß Code). Halten Sie die Taste gedrückt, um den Summer anzuhalten. Sie können den Druckknopf jederzeit verwenden, um den Timer zwischen dem Zählen anzuhalten.