Sisukord:

Digitaalkell mikrokontrolleri abil (AT89S52 ilma RTC -ahelata): 4 sammu (piltidega)
Digitaalkell mikrokontrolleri abil (AT89S52 ilma RTC -ahelata): 4 sammu (piltidega)

Video: Digitaalkell mikrokontrolleri abil (AT89S52 ilma RTC -ahelata): 4 sammu (piltidega)

Video: Digitaalkell mikrokontrolleri abil (AT89S52 ilma RTC -ahelata): 4 sammu (piltidega)
Video: AT89s52-24AU - ATMEL - Micro controller - [email protected] 2024, Juuni
Anonim
Digitaalkell mikrokontrolleri abil (AT89S52 ilma RTC -ahelata)
Digitaalkell mikrokontrolleri abil (AT89S52 ilma RTC -ahelata)
Digitaalkell mikrokontrolleri abil (AT89S52 ilma RTC -ahelata)
Digitaalkell mikrokontrolleri abil (AT89S52 ilma RTC -ahelata)

Kirjeldame kella … "Kell on seade, mis loeb ja näitab aega (suhteline)" !!!

Ma arvan, et ma ütlesin õigesti, nii et teeme KELL ALARM -funktsiooniga.

MÄRKUS. Lugemine võtab 2-3 minutit, palun lugege kogu projekt läbi, vastasel juhul ei vastuta ma osade kahjustuste eest

1. samm: VAJALIKUD KOMPONENDID

VAJALIKUD KOMPONENDID
VAJALIKUD KOMPONENDID
VAJALIKUD KOMPONENDID
VAJALIKUD KOMPONENDID
VAJALIKUD KOMPONENDID
VAJALIKUD KOMPONENDID

Vajalik 6 komponenti:

1. Mikrokontroller (olen kasutanud perekonda AT89S52-8051), saab kasutada mis tahes programmeeritavat mikrokontrollerit.

2.7 segmendi ekraan

3. Kristallostsillaator (12 MHz)

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

5. LEDid

6. takistused (330 oomi)

7. summer (pieso)

8. Push lülitid

Ja ma ei sisalda jootekolvi, traati, voogu….. elektrit !!! aita mind:)

2. samm: vooluahela skeem

Lülitusskeem
Lülitusskeem
Lülitusskeem
Lülitusskeem

See on 8051 mikrokontrollerit kasutava digitaalse kella lülitusskeem.

Nagu näeme, on mikrokontroller ühendatud kolme 7 -segmendilise kuvariga, millel on erinevad pordid, mida pole multipleksitud ja viimase tunni number on ühendatud ainult tihvtiga, kuna see näitab ainult 1.

LED ja helisignaal on koodi järgi iseenesestmõistetavad.

1 LED -st on mõeldud AM -i jaoks ja olen häire jaoks ühendanud teise LED -i, mida pole joonisel näidatud.

12MHz kristallostsillaator on ühendatud taktsagedusega ja saavutab täpse 1 sekundilise loenduse, kasutades mikrokontrolleri katkestusomadust.

KESKMISED LEDID, MIS TEISET TÄHENDAVAD, ON ÜHENDATUD "28. JA 32." PIN -koodiga

Palun vabandust, minu valguslaiskuse tõttu pole skeemil näidatud 3 LED -i

28. kontakti LED: vilgub esimene 30 sekundit

32. tihvti LED: puhkus 30 sekundit

**** panustades terve minuti !! *** olen kindel, et pärast seda projekti sain teada, et 60 sekundit teeb minuti !!! WOW

Samm: kodeerimine

Kodeerimine
Kodeerimine
Kodeerimine
Kodeerimine
Kodeerimine
Kodeerimine

Olen kasutanud keili tarkvara, et ehitada RTC jaoks C -kood, kasutades mikrokontrollerit ja heksafaile.

VEEL KODETAMISE PORTSIOONILE, ET TEADA ROHKEM !!

Põhiline asi kodeerimisosas on see, kui iga pordi tihvt lülitub iga 7 -segmendilise kuvariga seotud numbri kuvamiseks.

Katkestusomadust 8051 kasutatakse sekundis loendamiseks ja uuesti laadimiseks. ainult näiteks, just nagu viivitusfunktsiooni loomine argumendiga 1, mis põhjustab 1 sekundilise viivituse. (TMOD, TL0, TH0, IE iga väärtus aitab kaasa ajakulule)

AM -i LED on programmeeritud vaheldumisi 12 tunniks.

Lisaks äratusele saab seadistada ka spetsiaalselt AM või PM ja summeri tihvt edastatakse koos sageduskoodiga häire ajal. Häire seadistamiseks kasutatakse häirenuppu koos min, tund ja salvestus lülitiga. Alarmi kaks korda klõpsamisel lülitatakse häirefunktsioon välja

KOOD: C -kood ainult idee saamiseks (hex -fail on projekti täpne)

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

Samm: lõpuks…

Lõpuks…
Lõpuks…

Kõik tehtud !!! Nüüd on iT aeg nautida eredat ja täpset kella.

Soovitan: