Inhaltsverzeichnis:

Digitaluhr mit Mikrocontroller (AT89S52 ohne RTC-Schaltung) - Gunook
Digitaluhr mit Mikrocontroller (AT89S52 ohne RTC-Schaltung) - Gunook

Video: Digitaluhr mit Mikrocontroller (AT89S52 ohne RTC-Schaltung) - Gunook

Video: Digitaluhr mit Mikrocontroller (AT89S52 ohne RTC-Schaltung) - Gunook
Video: DIGITAL CLOCK WITH ALARM USING 89S52 MICROCONTROLLER 2024, Juni
Anonim
Digitaluhr mit Mikrocontroller (AT89S52 ohne RTC-Schaltung)
Digitaluhr mit Mikrocontroller (AT89S52 ohne RTC-Schaltung)
Digitaluhr mit Mikrocontroller (AT89S52 ohne RTC-Schaltung)
Digitaluhr mit Mikrocontroller (AT89S52 ohne RTC-Schaltung)

Lassen Sie uns eine Uhr beschreiben… "Uhr ist ein Gerät, das zählt und die Zeit (relativ) anzeigt"!!!

Ich glaube, ich habe es richtig gesagt, also machen wir eine UHR mit ALARM-Funktion.

HINWEIS: Es dauert 2-3 Minuten, bitte lesen Sie das gesamte Projekt durch, sonst übernehme ich keine Verantwortung für Schäden an Teilen

Schritt 1: ERFORDERLICHE KOMPONENTEN

ERFORDERLICHE KOMPONENTEN
ERFORDERLICHE KOMPONENTEN
ERFORDERLICHE KOMPONENTEN
ERFORDERLICHE KOMPONENTEN
ERFORDERLICHE KOMPONENTEN
ERFORDERLICHE KOMPONENTEN

6 benötigte Komponenten:

1. Mikrocontroller (ich habe die AT89S52-8051-Familie verwendet), jeder programmierbare Mikrocontroller kann verwendet werden.

2,7-Segment-Anzeige

3. Kristalloszillator (12 MHz)

4. Kondensator (10uF, 33pF/22pF)

5. LEDs

6. Widerstände (330 Ohm)

7. Summer (Piezo)

8. Druckschalter

Und ich zähle nicht Lötkolben, Draht, Flussmittel….. Strom !!! helfen Sie mir:)

Schritt 2: Schaltplan

Schaltplan
Schaltplan
Schaltplan
Schaltplan

Dies ist das Schaltbild der Digitaluhr mit 8051-Mikrocontroller.

Wie wir sehen können, ist der Mikrocontroller mit drei 7-Segment-Anzeigen mit unterschiedlichen Ports verbunden, die nicht gemultiplext sind, und die letzte Stundenziffer ist nur mit einem Pin verbunden, da sie nur 1 anzeigt.

LED und Summer sind laut Code selbsterklärend.

1 der LED ist für AM und ich habe eine andere LED, die in der Abbildung nicht gezeigt ist, für den Alarm angeschlossen.

Quarzoszillator von 12MHz ist mit Taktfrequenz verbunden und erreicht die genaue 1-Sekunden-Zählung unter Verwendung der Interrupt-Eigenschaft des Mikrocontrollers.

DIE ZWEITEN MITTLEREN LEDS SIND MIT DEM "28. UND 32." PIN VERBUNDEN

Bitte entschuldigen Sie, 3 LEDs sind im Schaltplan wegen meiner Faulheit nicht abgebildet

28. Pin LED: erste 30 Sekunden blinken

32. Pin LED: Rest 30 Sekunden blinken

****zu einer ganzen Minute beitragen!!*** Ich bin mir sicher, nach diesem Projekt habe ich erfahren, dass 60 Sekunden eine Minute sind!!! BEEINDRUCKEND

Schritt 3: Codierung

Codierung
Codierung
Codierung
Codierung
Codierung
Codierung

Ich habe Keil-Software verwendet, um einen C-Code für die RTC mit einem Mikrocontroller zu erstellen und eine Hex-Datei zu erhalten.

SIEHE DEN CODIERUNGSTEIL AUF DIESEM, UM MEHR ZU WISSEN!!

Die grundlegende Sache im Kodierungsteil ist, wenn der Pin jedes Ports umschaltet, um die Ziffer für jede 7-Segment-Anzeige anzuzeigen.

Die Interrupt-Eigenschaft von 8051 wird verwendet, um pro Sekunde zu zählen und neu zu laden. nur als Beispiel, Genau wie das Erstellen einer Verzögerungsfunktion mit Argument 1, die eine Verzögerung von 1 Sekunde verursacht. (TMOD, TL0, TH0, IE jeder Wert trägt zur Zeiterfassung bei)

Die LED für AM ist auf abwechselnde 12 Stunden programmiert.

Außerdem kann der Alarm auch speziell für AM oder PM eingestellt werden und der Summer-Pin wird mit einem Frequenzcode übergeben, um die Alarmzeit zu summen. Die Alarmtaste mit Min-, Stunden- und Sparschalter wird zum Einstellen des Alarms verwendet. Wenn Sie zweimal auf Alarm klicken, wird die Alarmfunktion deaktiviert

CODE: C-Code, um nur die Idee zu erhalten (Hex-Datei ist die genaue des Projekts)

github.com/abhrodeep/Arduino_projs/blob/master/digitalclock.c

Schritt 4: Endlich…

Schließlich…
Schließlich…

Alles erledigt !!! Jetzt ist es Zeit, die Uhr zu genießen, die hell und genau ist.

Empfohlen: