Innehållsförteckning:

Digital klocka med mikrokontroller (AT89S52 utan RTC -krets): 4 steg (med bilder)
Digital klocka med mikrokontroller (AT89S52 utan RTC -krets): 4 steg (med bilder)

Video: Digital klocka med mikrokontroller (AT89S52 utan RTC -krets): 4 steg (med bilder)

Video: Digital klocka med mikrokontroller (AT89S52 utan RTC -krets): 4 steg (med bilder)
Video: Minimal Arduino (Subtittle) 2024, November
Anonim
Digital klocka med mikrokontroller (AT89S52 utan RTC -krets)
Digital klocka med mikrokontroller (AT89S52 utan RTC -krets)
Digital klocka med mikrokontroller (AT89S52 utan RTC -krets)
Digital klocka med mikrokontroller (AT89S52 utan RTC -krets)

Låt oss beskriva en klocka … "Klocka är en enhet som räknar och visar tid (relativ)" !!!

Antar att jag sa det rätt så låt oss göra en CLOCK with ALARM -funktion.

OBS: det tar 2-3 minuter att läsa, läs hela projektet, annars ansvarar jag inte för eventuella skador på delar

Steg 1: KRAV KOMPONENTER

KOMPONENTER KRAV
KOMPONENTER KRAV
KOMPONENTER KRAV
KOMPONENTER KRAV
KOMPONENTER KRAV
KOMPONENTER KRAV

6 komponenter behövs:

1. Mikrokontroller (jag har använt AT89S52-8051-familjen), alla programmerbara mikrokontroller kan användas.

2,7 segment display

3. kristalloscillator (12MHz)

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

5. LED -lampor

6. motstånd (330 Ohm)

7. buzzer (piezo)

8. tryckknappar

Och jag inkluderar inte lödkolv, tråd, flux….. el !!! hjälp mig:)

Steg 2: Kretsdiagram

Kretsdiagram
Kretsdiagram
Kretsdiagram
Kretsdiagram

Detta är kretsschemat för den digitala klockan med 8051 mikrokontroller.

Som vi kan se är mikrokontrollern ansluten till tre skärmar med 7 segment med distinkta portar som inte är multiplexerade och den sista timmarsiffran är bara ansluten till en stift eftersom den bara visar 1.

LED och summer summerar sig självt enligt koden.

1 på lysdioden är för AM och jag har anslutit en annan lysdiod som inte visas i figuren för larm.

Kristalloscillator på 12 MHz är ansluten till klockhastigheten och uppnår den exakta 1: a sekundräkningen med hjälp av mikrokontrollerns avbrottsegenskap.

MELLANLEDORNA DENOTERANDE ANDRA ÄR ANSLUTNA till "28: e och 32: a" PIN

Ursäkta mig, tre lysdioder visas inte i kretsschemat för min latskap

28: e pin LED: första 30 sekunders blink

32 -stifts LED: vila 30 sekunders blink

**** bidrar till en hel minut !! *** jag är säker på att efter detta projekt fick jag veta 60 sekunder gör en minut !!! WOW

Steg 3: Kodning

Kodning
Kodning
Kodning
Kodning
Kodning
Kodning

Jag har använt keil -programvara för att bygga en C -kod för RTC med hjälp av mikrokontroller och få hex -fil.

Hänvisa till att koda delen på detta för att veta mer !!

Det grundläggande i kodningsdelen är när stiftet på varje port växlar för att visa siffran som är relaterad till varje 7segments display.

Interrupt -egenskapen 8051 används för att räkna och ladda om per sekund. till exempel bara, precis som att skapa en fördröjningsfunktion med argument 1 som orsakar 1 sekund fördröjning. (TMOD, TL0, TH0, Dvs varje värde bidrar till tidsåtgången)

Lysdioden för AM är programmerad för alternativa 12 timmar.

Samt larm kan också ställas in för AM eller PM specifikt och summern stiftet skickas med frekvenskod för att summera på larmtiden. Larmknapp med min, timme och spara knapp används för att ställa in larm. Om du klickar två gånger på larm inaktiveras larmfunktionen

KOD: C -kod för att bara få idén (hex -filen är den exakta i projektet)

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

Steg 4: Slutligen …

Till sist…
Till sist…

Klart !!! Nu är det dags att njuta av klockan som är ljus och exakt.

Rekommenderad: