Si të konfiguroni telefonat inteligjentë dhe PC. Portali informativ

Orën bëjeni vetë në një mikrokontrollues. Orë e thjeshtë në mikrokontrolluesin Attiny2313

Kjo orë me zile bazohet në një çip të orës në kohë reale, i cili e lejon atë të funksionojë nga një burim energjie rezervë në mungesë të atij kryesor. Koha e caktuar e alarmit dhe mënyra e funksionimit ruhen në memorien e paqëndrueshme të mikrokontrolluesit. Modaliteti i shfaqjes - 24 orë. Përmbajnë imitimin e "tikimit" Tregimi i kohës dhe mënyrave të funksionimit kryhet me anë të treguesve të diodës që lëshojnë dritë.

Parimi i funksionimit

Baza e kësaj ore është mikroqarku DS1307 - një orë në kohë reale që shkëmben informacion me kontrolluesin e kontrollit nëpërmjet ndërfaqes I2C. Tregimi i kohës kryhet përmes 4 treguesve me 7 segmente që funksionojnë në modalitetin dinamik. Futja dhe rregullimi i orës kryhet nga 5 butona: "+ minuta", "+ orë", "vendos", "ora me zile" dhe "rivendosje". Sinjali i zërit i orës së ziles del përmes një emetuesi standard piezo dhe është një sinjal me frekuencë 1 kHz me pauza të dyta.

Atmega48 u zgjodh si një mikrokontrollues kontrolli për shkak të disponueshmërisë së tij dhe pranisë së pajisjeve periferike të nevojshme në bord (madje edhe në tepricë). Ora në kohë reale DS1307 është e lidhur me daljet harduerike I2C të mikrokontrolluesit të kontrollit. Për të funksionuar DS1307 në modalitetin e pavarur (në rast të një ndërprerjeje të energjisë së kontrolluesit kryesor), përdoret një bateri rezervë litium 3V, burimi i së cilës do të zgjasë për disa vjet për shkak të konsumit të ulët të energjisë së mikroqarkullimit.

Le të hedhim një vështrim më të afërt në programin e kontrollit:

Programi funksionon në parimin e një automati me kohëmatës flamuri: të gjitha gjendjet dhe ngjarjet përfaqësohen si flamujt përkatës që ekzekutohen në ndërprerje të kohëmatësit përkatës 1s, 1ms dhe 263.17ms. Programi përdor 2 kohëmatës harduerësh.

Sondazhi i çipit të orës dhe shtypja e butonave kryhet me një interval prej 263.17 ms. Një interval prej 1ms përdoret për të gjeneruar një sinjal zanor të një thirrjeje, dhe 1s - për ta modifikuar atë. Intervali i dytë kontrollon gjithashtu pulsimin e pikës në shifrën e dytë të treguesit, duke ndarë orët dhe minutat dhe gjithashtu shërben si formimi i një "tikulli".
Merrni parasysh diagramin e qarkut të orës.

Emërtimet dhe emërtimet:
S4 - Rritja e orës
S3 - Rritja e minutave
S2 - Instalimi
S1 - Ndiz alarmin
S5 - Rivendos

R6-R10 - 10 mijë
R1-R5 - 510 ohm

Tensioni i furnizimit është 5 volt.

Konfiguro dhe përdor

Orët e montuara siç duhet nuk kanë nevojë për rregullim shtesë. Thjesht duhet të vendosni orën aktuale dhe alarmin.
Vendosja e orës aktuale kryhet si më poshtë:
1) Përdorni butonat S1 dhe S2 për të vendosur kohën aktuale (pika midis shifrave nuk pulson)
2) Nisni orën me butonin S3
Vendosja e alarmit:
1) Shtypni S3 dhe sigurohuni që pika në shifrën e parë të ndizet
2) Vendosni kohën e telefonatës me butonat S1 dhe S2
3) Aktivizoni thirrjen me butonin S4
Karakteristikat shtesë:
Aktivizo tik-takimin - duke mbajtur S4, shtypni S2 derisa të shfaqen tingujt karakteristikë. Fiket në të njëjtën mënyrë.
Shfaq minutat dhe sekondat - duke mbajtur S4, shtypni S1. Nëse pas kësaj shtypni S3, sekondat do të rivendosen në 00. Kthimi është i njëjti kombinim.

Orari i fotove dhe videove

Ora është montuar në një kuti nga "elektronika" jo funksionale.


Siç nënkupton edhe emri, qëllimi kryesor i kësaj pajisjeje është të zbulojë kohën dhe datën aktuale. Por ka shumë veçori më të dobishme. Ideja e krijimit të saj u shfaq pasi hasa në një orë gjysmë të thyer me një kuti metalike relativisht të madhe (për një orë dore). Mendova se aty mund të fusja një orë të bërë vetë, mundësitë e së cilës janë të kufizuara vetëm nga imagjinata dhe aftësia ime. Rezultati është një pajisje me karakteristikat e mëposhtme:

1. Ora - kalendar:

    Numërimi dhe prodhimi në treguesin orë, minuta, sekonda, ditë të javës, ditë, muaj, vit.

    Prania e rregullimit automatik të kohës aktuale, e cila kryhet çdo orë (vlerat maksimale +/-9999 njësi, 1 njësi = 3,90625 ms.)

    Llogaritja e ditës së javës nga një datë (për shekullin aktual)

    Kalimi automatik në orën verore dhe dimërore (i ndërrueshëm)

  • Vitet e brishtë numërohen

2. Dy orë alarmi të pavarura (kur aktivizohet, tingëllon një melodi)
3. Kohëmatësi me rezolucion 1 sek. (Koha maksimale e numërimit mbrapsht 99h 59m 59s)
4. Kronometër me dy kanale me rezolucion numërimi 0,01 sek. (koha maksimale e numërimit 99h 59m 59s)
5. Kronometër me rezolucion numërimi 1 sek. (Koha maksimale e numërimit 99 ditë)
6. Termometri në intervalin prej -5°С. deri në 55°С (i kufizuar nga diapazoni i temperaturës së funksionimit normal të pajisjes) me ngritje prej 0,1°С.
7. Lexues dhe emulator i çelësave elektronikë - tableta të llojit DS1990 sipas protokollit Dallas 1-Wire (memorie për 50 copë, në të cilat tashmë ka disa "çelësat e automjeteve të të gjithë terrenit") universale me aftësinë për të parë çelësin kodi bajt pas bajt.
8. Telekomanda IR (është zbatuar vetëm komanda "Bëni një foto") për kamerat dixhitale "Pentax", "Nikon", "Canon"
9. Elektrik dore LED
10. 7 melodi
11. Sinjali zanor në fillim të çdo ore (i ndërrueshëm)
12. Konfirmimi i zërit të shtypjes së butonave (i ndërrueshëm)
13. Kontrolli i tensionit të baterisë me funksion kalibrimi
14. Rregullimi i ndriçimit të treguesit dixhital

Ndoshta një funksionalitet i tillë është i tepërt, por mua më pëlqejnë gjërat universale, mirë, plus kënaqësi morale nga fakti që kjo orë do të bëhet me dorë.

Diagrami skematik i orës

Pajisja bazohet në mikrokontrolluesin ATmega168PA-AU. Ora shënon në kohëmatësin T2, që funksionon në modalitetin asinkron nga kuarci i orës në 32768 Hz. Mikrokontrolluesi është pothuajse gjatë gjithë kohës në modalitetin e fjetjes (treguesi është i fikur), zgjohet një herë në sekondë për të shtuar këtë sekondë në kohën aktuale dhe bie sërish në gjumë. Në modalitetin aktiv, MK është i akorduar nga oshilatori i brendshëm RC në 8 MHz, por parashkallëzuesi i brendshëm e ndan atë me 2, si rezultat, bërthama është e fiksuar nga 4 MHz. Për tregues, përdoren katër tregues dixhital LED me shtatë segmente me një shifër me një anodë të përbashkët dhe një pikë dhjetore. Ekzistojnë gjithashtu 7 LED të statusit, qëllimi i të cilave është si më poshtë:
D1- Shenja e një vlere negative (minus)
D2- Shenja e një kronometër që funksionon (duke pulsuar)
D3- Shenja e ndezjes së alarmit të parë
D4- Shenja e orës së dytë të alarmit të ndezur
D5- Shenja e një sinjali zanor në fillim të çdo ore
D6- Shenja e një kohëmatësi që funksionon (duke pulsuar)
D7- Shenja e tensionit të ulët të baterisë

R1-R8 - rezistorë kufizues të rrymës së segmenteve të treguesve dixhitalë HG1-HG4 dhe LED D1-D7. R12, R13 - ndarës për të kontrolluar tensionin e baterisë. Meqenëse voltazhi i furnizimit të orës është 3V, dhe LED i bardhë D9 ka nevojë për rreth 3.4-3.8V në konsumin e vlerësuar të rrymës, ai nuk shkëlqen me forcë të plotë (por mjafton të mos pengoheni në errësirë) dhe për këtë arsye është i lidhur pa një rezistencë kufizuese të rrymës. Elementet R14, Q1, R10 janë krijuar për të kontrolluar LED-in infra të kuqe D8 (zbatimi i telekomandës për kamerat dixhitale). R19, ​​R20, R21 përdoren për çiftim kur komunikoni me pajisje që kanë një ndërfaqe 1-Wire. Menaxhimi kryhet nga tre butona, të cilët i quajta me kusht: MODE (modaliteti), LARTË (lart), DOWN (poshtë). E para prej tyre është krijuar gjithashtu për të zgjuar MK nga një ndërprerje e jashtme (në këtë rast, treguesi ndizet), kështu që lidhet veçmas me hyrjen PD3. Shtypja e butonave të mbetur përcaktohet duke përdorur ADC dhe rezistorët R16, R18. Nëse butonat nuk shtypen brenda 16 sekondave, atëherë MK bie në gjumë dhe treguesi fiket. Kur është në modalitet "Telekomandë për kamera" ky interval është 32 sekonda, dhe me elektrik dore të ndezur - 1 minutë. Gjithashtu, MK mund të vihet në gjumë manualisht duke përdorur butonat e kontrollit. Kur kronometri funksionon me një rezolucion numërimi prej 0,01 sek. Pajisja nuk kalon në modalitetin e fjetjes.

Pllaka e qarkut të printuar

Pajisja është montuar në një tabelë qarku të printuar të dyanshëm në formë të rrumbullakët sipas madhësisë së diametrit të brendshëm të kutisë së orës. Por në prodhim kam përdorur dy dërrasa të njëanshme me trashësi 0.35 mm. Përsëri, kjo trashësi është marrë duke e qëruar atë nga një tekstil me fije qelqi të dyanshme me trashësi 1.5 mm. Bordet pastaj ngjitur. E gjithë kjo u bë sepse nuk kisha një tekstil me fije qelqi të hollë me dy anë dhe çdo milimetër trashësi e kursyer në hapësirën e brendshme të kufizuar të kutisë së orës është shumë e vlefshme dhe nuk kishte nevojë të kombinohej në prodhimin e përçuesve të printuar duke përdorur Metoda LUT. Vizatimi i PCB-së dhe vendndodhja e pjesëve janë në skedarët e bashkangjitur. Në njërën anë ka tregues dhe rezistorë kufizues të rrymës R1-R8. Në anën e pasme janë të gjitha detajet e tjera. Ka dy vrima për LED të bardha dhe infra të kuqe.

Kontaktet e butonit dhe mbajtësja e baterisë janë bërë prej fletë çeliku fleksibël elastik me trashësi 0,2…0,3 mm. dhe të konservuara. Më poshtë janë fotot e bordit nga të dyja anët:

Dizajni, pjesët dhe zëvendësimi i mundshëm i tyre

Mikrokontrolluesi ATmega168PA-AU mund të zëvendësohet nga ATmega168P-AU, ATmega168V-10AU ATmega168-20AU. Treguesit dixhitalë - 4 copë KPSA02-105 Shkëlqim i kuq super i ndezur me një lartësi shifrore 5.08 mm. Mund të furnizohet nga e njëjta seri KPSA02-xxx ose KCSA02-xxx. (vetëm jo ato jeshile - ato do të shkëlqejnë dobët) Analogë të tjerë të madhësive të ngjashme me shkëlqim të mirë janë të panjohur për mua. Për HG1, HG3, lidhja e katodave të segmentit ndryshon nga HG2, HG4, sepse ishte më i përshtatshëm për mua për paraqitjen e PCB. Në këtë drejtim, një tabelë e ndryshme gjeneruese të karaktereve përdoret për ta në program. Rezistenca dhe kondensatorë SMD të përdorur për montim në sipërfaqe, përmasat 0805 dhe 1206, LED D1-D7, madhësia 0805. LED të bardha dhe infra të kuqe me diametër 3mm. Ka 13 vrima në tabelë në të cilat duhet të instaloni kërcyesit. DS18B20 me ndërfaqe 1-Wire përdoret si sensor i temperaturës. LS1 - një sinjalizues piezoelektrik konvencional, i futur në mbulesë. Me njërin kontakt lidhet me tabelën me ndihmën e një suste të instaluar në të, me tjetrin lidhet me kutinë e orës nga vetë mbulesa. Rezonator kuarci nga një orë dore.

Programim, firmware, siguresa

Për programimin në qark, ka vetëm 6 arna kontakti të rrumbullakëta (J1) në tabelë, pasi një lidhës i plotë nuk përshtatej në lartësi. I lidha me programuesin duke përdorur një pajisje kontakti të bërë nga një prizë pin PLD2x3 dhe susta të ngjitura mbi to, duke i shtypur me njërën dorë te arna. Bashkangjitur është një foto e instalimit.

E përdora sepse gjatë procesit të korrigjimit më duhej të rifreskoja MK-në shumë herë. Me një firmware një herë, është më e lehtë të bashkoni telat e hollë të lidhur me programuesin në arna dhe më pas t'i bashkoni ato përsëri. Është më i përshtatshëm për të ndezur MK pa bateri, por në mënyrë që energjia të vijë ose nga një burim i jashtëm + 3V ose nga një programues me të njëjtin tension furnizimi. Programi është shkruar në asembler në mjedisin VMLAB 3.15. Kodet burimore, firmware për FLASH dhe EEPROM në aplikacion.

Bitët FUSE të mikrokontrolluesit DD1 duhet të programohen si më poshtë:
CKSEL3...0 = 0010 - klikimi nga oshilatori i brendshëm RC 8 MHz;
SUT1...0 =10 - Koha e fillimit: 6 CK + 64 ms;
CKDIV8 = 1 - pjesëtuesi i frekuencës me 8 është i çaktivizuar;
CKOUT = 1 - Ora e daljes në CKOUT është çaktivizuar;
BODLEVEL2…0 = 111 - kontrolli i tensionit të furnizimit është i çaktivizuar;
EESAVE = 0 - fshirja e EEPROM gjatë programimit të çipit është çaktivizuar;
WDTON = 1 - Nuk ka aktivizim të përhershëm të Watchdog Timer;
Pjesa tjetër e FUSE - pjesët janë më mirë të lihen të paprekura. Biti FUSE programohet nëse vendoset në "0".

Kërkohet ndezja e EEPROM me deponinë e përfshirë në arkiv.

Qelizat e para të EEPROM përmbajnë parametrat fillestarë të pajisjes. Tabela e mëposhtme përshkruan qëllimin e disa prej tyre, të cilat mund të ndryshohen brenda kufijve të arsyeshëm.

adresa e qelisë

Qëllimi

Parametri

shënim

Sasia e tensionit të baterisë në të cilën shfaqet një sinjal për nivelin e ulët të tij

260 (104 dollarë) (2,6 V)

koeficienti për korrigjimin e vlerës së tensionit të matur të baterisë

intervali kohor i gjumit

1 njësi = 1 sek

intervali kohor për kalimin në modalitetin e fjetjes kur elektrik dore është i ndezur

1 njësi = 1 sek

sasia e kohës për të hyrë në modalitetin e fjetjes kur është në modalitetin e telekomandës së kamerës

1 njësi = 1 sek

Këtu ruhen numrat e çelësave IButton

Pak sqarim mbi pikat:

1 pikë. Kjo tregon sasinë e tensionit në bateri, në të cilën LED do të ndizet, duke sinjalizuar vlerën e saj të ulët. Kam vendosur 2.6V (parametri - 260). Nëse keni nevojë për diçka tjetër, për shembull 2.4V, atëherë duhet të shkruani 240 (00F0 dollarë). Bajt i ulët futet në qelizë në adresën $0000, përkatësisht, bajt i lartë futet në $0001.

2 pikë. Meqenëse nuk instalova një rezistencë të ndryshueshme në tabelë për të rregulluar saktësinë e matjes së tensionit të baterisë për shkak të mungesës së hapësirës, ​​futa kalibrimin e softuerit. Procedura e kalibrimit për matjen e saktë është si më poshtë: fillimisht, një koeficient prej 1024 (400 dollarë) u regjistrua në këtë qelizë EEPROM, duhet ta vendosni pajisjen në modalitetin aktiv dhe të shikoni tensionin në tregues dhe menjëherë të matni realin tension në bateri me një voltmetër. Faktori i korrigjimit (K), i cili duhet të vendoset, llogaritet me formulën: K \u003d Up / Ui * 1024 ku Up është voltazhi real i matur nga voltmetri, Ui është voltazhi i matur nga vetë pajisja. Pas llogaritjes së koeficientit "K", ai futet në pajisje (siç bëhet në manualin e udhëzimeve). Pas kalibrimit, gabimi im nuk kaloi 3%.

3 pikë. Këtu mund të vendosni kohën pas së cilës pajisja do të kalojë në modalitetin e fjetjes nëse nuk shtypet asnjë buton. Kam 16 sekonda. Nëse supozojmë se është e nevojshme që të bie në gjumë për 30 sekonda, atëherë është e nevojshme të shënoni 30 (26 dollarë).

Në paragrafët 4 dhe 5 është e ngjashme.

6 pikë. Adresa $0030 ruan kodin e familjes zero të çelësit (dallas 1-Wire), më pas numrin e tij 48 bit dhe CRC. Dhe kështu 50 çelësa në seri.

Vendosja, veçoritë e punës

Vendosja e pajisjes zbret në kalibrimin e matjes së tensionit të baterisë siç përshkruhet më sipër. Është gjithashtu e nevojshme të zbulohet devijimi i orës për 1 orë, të llogaritet dhe të futet vlera e duhur e korrigjimit (procedura përshkruhet në manualin e udhëzimeve).

Pajisja mundësohet nga një bateri litiumi CR2032 (3V) dhe konsumon rreth 4 μA në modalitetin e fjetjes dhe 5 ... 20 mA në modalitetin aktiv, në varësi të ndriçimit të treguesit. Me një përdorim ditor prej pesë minutash të modalitetit aktiv, bateria duhet të zgjasë për rreth 2 .... 8 muaj, në varësi të ndriçimit. Kutia e orës është e lidhur me minusin e baterisë.

Leximi i çelësit u testua në DS1990. Emulimi është testuar në telefonat me telefon METAKOM. Nën numrat serialë nga 46 në 49 (4 të fundit) ndizen (të gjithë çelësat ruhen në EEPROM, ato mund të ndryshohen para ndezjes) çelësat universalë për intercom. Çelësi i regjistruar në numrin 49 hapi të gjitha interfonet METAKOM që hasa, nuk pata mundësinë të testoja pjesën tjetër të çelësave universalë, mora kodet e tyre nga rrjeti.

Telekomanda për kamerat është testuar në modelet Pentax optio L20, Nikon D3000. Canon nuk mund të merrej për shqyrtim.

Manuali i përdorimit zë 13 faqe, kështu që nuk e përfshiva në artikull, por e vendosa në shtojcë në formatin PDF.

Arkivi përmban:
Skema në dhe GIF;
Vizatimi me PCB dhe rregullimi i elementeve në format;
Firmware dhe kodet burimore në asembler;

Lista e elementeve të radios

Emërtimi Lloji Emërtimi sasi shënimDyqanblloku im i shënimeve
DD1 MK AVR 8-bit

ATmega168PA

1 PA-AU Në bllokun e shënimeve
U2 sensor temperature

DS18B20

1 Në bllokun e shënimeve
Q1 Transistor MOSFET

2N7002

1 Në bllokun e shënimeve
C1, C2 Kondensator30 pF2 Në bllokun e shënimeve
C3, C4 Kondensator0.1uF2 Në bllokun e shënimeve
C5 kondensator elektrolitik47uF1 Në bllokun e shënimeve
R1-R8, R17 Rezistencë

100 ohm

9 Në bllokun e shënimeve
R9 Rezistencë

10 kOhm

1 Në bllokun e shënimeve
R10 Rezistencë

8.2 ohm

1 Në bllokun e shënimeve
R11 Rezistencë

300 ohm

1 Në bllokun e shënimeve
R12 Rezistencë

2 MΩ

1 Në bllokun e shënimeve
R13 Rezistencë

220 kOhm

1 Në bllokun e shënimeve
R14 Rezistencë

30 kOhm

1 Në bllokun e shënimeve
R15, R19 Rezistencë

4.7 kOhm

2 Në bllokun e shënimeve
R16 Rezistencë

20 kOhm

1
Unë propozoj të përsërisni qarkun elektronik të orës në mikrokontrolluesin ATmega 8, me shfaqjen e informacionit nga LED të mëdhenj. Orari punon dhe testohet. Firmware aktualisht është duke u finalizuar. Është duke u bërë më shumë dërrasë, e cila do të jetë në një distancë nga blloku kryesor, rreth 5 metra, gjithashtu do të ketë një tregues në bllokun kryesor - për të dubluar tabelën e madhe. Diagrami skematik i orës LED është paraqitur në figurë - klikoni për ta zmadhuar.

Përshkrimi i pajisjes

1. Funksionet.
1.1 Ora. Formati i shfaqjes së kohës është 24 orë. Korrigjimi dixhital i saktësisë së udhëtimit.


1.2 Termometri. Matja e temperaturës nga dy sensorë në intervalin -55,0 °C - 125,0 °C.


1.3 Shfaqja alternative e informacionit në tregues.
1.4 Kontrolli i furnizimit kryesor me energji elektrike.
1.5 Përdorimi i memories jo të paqëndrueshme të mikrokontrolluesit për të ruajtur cilësimet dhe cilësimet kur rryma është e fikur.
1.6 Tre butona për vendosjen dhe vendosjen: PLUS, MINUS, SET.

Funksionimi i pajisjes

Kur ndizni për herë të parë mbrojtësin e ekranit të reklamave për 1 sekondë. Pastaj shfaqni kohën.
Duke klikuar mbi VENDOS OREN ndërron treguesin në një rreth nga modaliteti kryesor i orës (duke shfaqur kohën aktuale):
– Modaliteti i shfaqjes së minutave dhe sekondave. Nëse në këtë modalitet shtypni njëkohësisht butonin PLUS Dhe MINUS, atëherë sekondat do të rivendosen.
– vendosja e minutave të kohës aktuale.
– vendosja e orës së kohës aktuale.
– vlera e korrigjimit ditor të saktësisë së orës. Simboli c dhe vlera korrigjuese. Vendosja e kufijve -25?25 sek. Vlera e zgjedhur do të jetë çdo ditë në 0 orë 0 minuta dhe 30 sekonda të shtuar/zbritur nga koha aktuale.
- simbol t. Vendosni se sa kohë do të shfaqet ora.
- simbol i. Koha e shfaqjes së simboleve të treguesit të temperaturës së brendshme ( ndër).
- simbol d. vendosja e kohës së treguesit të temperaturës nga sensori i brendshëm.
- simbol o. Koha e shfaqjes së simboleve të shfaqjes së temperaturës së jashtme ( jashtë).
- simbol u. vendosja e kohës së treguesit të temperaturës nga një sensor i jashtëm.
- simbol P. vendosja e kohës së shfaqjes së mbrojtësit të ekranit të reklamave.
Vendosja e kufijve për kohën e shfaqjes 0-60 sek. Nëse është vendosur 0, ky parametër nuk shfaqet në tregues. Nëse të gjithë parametrat janë vendosur në 0, treguesi do të shfaq një orë.

Vendosja e orës

3.1 Në të gjitha mënyrat duke mbajtur butonat PLUS/MINUS instalim i shpejtë.
3.2 Nëse cilësimet janë ndryshuar, 10 sekonda pas ndryshimit të fundit, vlerat e reja do të shkruhen në memorien e paqëndrueshme (EEPROM) dhe do të lexohen prej andej kur energjia të ndizet përsëri. Treguesi do të kalojë në modalitetin kryesor të kohës.
3.3 Cilësimet e reja hyjnë në fuqi gjatë instalimit.

Kontrolli i fuqisë

Mikrokontrolluesi monitoron praninë e furnizimit kryesor me energji elektrike. Kur është i fikur, pajisja furnizohet me energji nga një burim i brendshëm. Për të zvogëluar konsumin aktual, treguesi, sensorët dhe butonat fiken. Ora vazhdon të numërojë kohën. Kur rikthehet energjia elektrike, të gjitha funksionet rikthehen.


Për momentin, bordet e qarkut të printuar janë duke u zhvilluar, qarku po korrigjohet dhe është e mundur kolektivisht. Nëse ka ide dhe sugjerime për përmirësimin e orës - shkruani në forum. Autorët e dizajnit: Aleksandrovich & SOIR (Soir&C.E.A)

Unë propozoj dy qarqe shumë të thjeshta për vetë-montim, përkatësisht një orë në një mikrokontrollues PIC dhe AVR. Baza e një mikrokontrollues qarku AVR Attiny2313 dhe tjetri PIC16F628A

Këto qarqe orësh në një mikrokontrollues do t'i ndihmojnë shumë radio amatorët fillestarë të merren me funksionimin dhe programimin e mikrokontrolluesve.

Le të hedhim një vështrim më të afërt në këtë qark të thjeshtë: Energjia mund të furnizohet si nga tre bateri AA, ashtu edhe nga


Mikrokontrolluesi Attiny2313 është i fiksuar me kuarc 16 MHz. Si numërues i kohës, qarku i brendshëm i mikrokontrolluesit përdor një kohëmatës 16-bit të ndarë me 256. Sapo numëruesi i brendshëm të arrijë në 625, do të shkaktohet një ndërprerje. Prandaj, do të kemi ndërprerje 100 herë në sekondë.

Intervali kohor merret parasysh në variablat globale dhe çdo herë kërkohet ndërprerja për të rritur vlerën e milisekondave me një. Sapo numri i milisekondave të arrijë në 100, atëherë duhet të rrisni vlerën e sekondave me një dhe të rivendosni milisekondat. Dhe kështu me radhë, në përputhje me të njëjtin algoritëm, deri në dhjetëra orë, të cilat rivendosen vetëm kur arrihet vlera 24 dhe tashmë pa rritur shifrën tjetër.

Në përputhje me këtë parim, ne krijojmë vlerën e kohës aktuale të regjistruar në variabla globale. Tani duhet t'i shfaqim vizualisht këto të dhëna. Meqenëse mikrokontrolluesi ka një numër të kufizuar portash, ne do të përdorim një veçori të tillë si inercia e treguesit të segmentit dixhital sa15-11gwa. Katodat e treguesve të saj janë të lidhur paralelisht, dhe anodat kanë kontroll të veçantë, i cili ju lejon të shfaqni një numër në cilindo nga katër treguesit në çdo kohë.

Duke ndërruar shpejt portën e mikrokontrolluesit me të cilin janë lidhur të gjitha katoda dhe duke ndërruar shpejt anodat, krijohet një iluzion që të katër shifrat shfaqen në treguesin e segmentit, megjithëse vetëm një nga segmentet funksionon në të vërtetë. Nëse ora aktuale është 11:57, atëherë së pari shfaqim numrin një në treguesin e orës së parë, pas 1 ms shfaqim numrin 1 në treguesin e dytë, pas 1 ms tjetër shfaqim 5 në treguesin 3, pas 1 ms. ne shfaqim 7 në treguesin 4 dhe kështu me radhë në mënyrë ciklike, duke përditësuar çdo tregues pas 1ms.

Gjendja e butonave të kontrollit të orës analizohet në fund të çdo cikli ekrani rreth 40 herë në sekondë.

Vizatimi i tabelës së qarkut të printuar i bërë në program dhe firmware-i për mikrokontrolluesin shkarkohen nga lidhja e mësipërme. dhe drejtpërdrejt në lidhje me ndërlikimet e firmuerit, lexoni këtu.

Ky dizajn, megjithëse në një lloj tjetër mikrokontrollues, nuk është më pak i komplikuar se qarku i mëparshëm.


Algoritmi i firmuerit është gjithashtu i thjeshtë në arkiv ka komente shumë të detajuara për kodin e programit. Dy ndërprerës kn1 dhe kn2 janë krijuar për të korrigjuar kohën - orët dhe minutat. Saktësia e orës varet nga frekuenca e kuarcit të përdorur.

Strukturisht, ora është bërë në dy borde të qarkut të printuar të vendosura krah për krah në një kënd prej 90 gradë. Treguesi ndodhet në tabelën e parë, dhe pjesa tjetër e elektronikës në të dytën. Fuqia rezervë në rolin e së cilës përdoren tre bateri të vendosura në një mbajtëse nga një çakmak i vjetër kinez me LED. Për energji AC, çdo rrymë 5V dhe 150 mA do të bëjë.


Arkivi që mund të shkarkoni nga lidhja jeshile përmban paraqitjen e të dy bordeve të qarkut të printuar në programin Sprint Layout dhe firmware për mikrokontrolluesin PIC me kodin burimor për programin nën MP_LAB IDE, me komente të hollësishme.

Dhe vetë programin, gjithashtu mund ta gjeni këtu

Ky dizajn ka një korrigjim dixhital të saktësisë së kursit, si dhe një termometër të integruar, i cili tregon në mënyrë alternative leximet e temperaturës në ekranin LED me kohën e saktë. Dizajni i orës përdor një memorie jo të paqëndrueshme të mikrokontrolluesit, i cili ruan cilësimet dhe cilësimet edhe kur humbet energjia e jashtme.


Për të kontrolluar anodat e treguesve LED, çelsat e tranzistorit përdoren sipas qarkut standard të kalimit.

Kur e ndizni për herë të parë, në ekran shfaqet një mbrojtës i ekranit për një sekondë. Pastaj shfaqet koha. Shtypja e butonit SET_TIME e kalon treguesin në një rreth nga modaliteti kryesor i orës:

Absolutisht, në të gjitha qelizat, duke mbajtur të shtypur butonat PLUS / MINUS kryen instalimin e përshpejtuar. Nëse cilësimet janë ndryshuar nga përdoruesi, atëherë pas 10 sekondash vlerat e reja do të ruhen në memorien jo të paqëndrueshme të mikrokontrolluesit dhe do të lexohen. kur ndezni MK, vendoseni si më poshtë:


Ju mund të vlerësoni modelin e jashtëm të pajisjes nga fotot më poshtë, firmware dhe skedarë shtesë për dizajnin mund të shkarkohen nga lidhja e mësipërme.


Firmware-i i alarmit zbaton oraret e ndërrimeve: 4/5 (katër deri në të pestën) - 4 ditë për 1 turn, 1 ditë pushim, 4 ditë për 2 turne, 1 ditë pushim, 4 ditë natën, 1 ditë pushim; - ditë, natë, 2 ditë pushim; Në ditët e javës - Hënë-Premte - ditë pune, Sat-Die - Ditë pushimi; (pushimet nuk merren parasysh); Ditore.

Vetë përdoruesi zgjedh llojin e orarit të orës së alarmit dhe vendos çdo orë alarmi. Në opsionet 4/5 dhe ditë, natë, 2 ditë pushimi - duhet të zgjidhni gjithashtu ndërrimin aktual.

Përveç kësaj, funksionet e mëposhtme janë implementuar në firmware-in e MK: Kalimi në periudhën verë-dimër; Rregullimi i kohës; Sinjali i alarmit përshpejtues; Shfaq zero në shifrën e orës dhe në shifrën e datës

Qarku i orës bazohet në çipin e orës DS1307 dhe mikrokontrolluesin MEGA8. Qarku (i vendosur në arkiv me firmware MK dhe vizatimet e bordit të qarkut të printuar) është krijuar për përdorimin e treguesve dixhitalë me shtatë segmente me një anodë të përbashkët për një tension prej 5V. (KUJDES! Rezistencat e çakëllit nuk janë vizatuar në diagram për thjeshtësi. Ato duhen instaluar në çdo segment të treguesve. Vetëm 112 copë. Vlerësimi është llogaritur sipas dokumentacionit. Unë kam përdorur tregues të segmentit si fys15011 dhe fyd-5622 Nëse përdorni më të fuqishëm, atëherë ka shumë të ngjarë që pa ndërprerës shtesë të tranzistorit janë të domosdoshëm.

Vizatimi i PCB-së u zhvillua për një kuti ekzistuese nga një orë e vjetër e thyer. Mund të lidhni një ngarkesë me fuqi të ulët me lidhësin e alarmit (ora me zile), për shembull, një kartolinë muzikore, dhe me kërcyesin JP1, ne shkëputim sinjalizimin e brendshëm. Mikrokontrolluesi mund të ndizet menjëherë në tabelë, gjë që thjeshton shumë konfigurimin në rast të modifikimeve të dizajnit.

Vendosja e orës
Për ta bërë këtë, futni modalitetin e cilësimit të parametrave:
Parametri-Vlera-Mbaje në memorie
P.01 - ORË [-]
P.02 - MINUTAT [-]
P.03 - DITA [-]
P.04 - MUAJ [-]
P.05 - VITI [-]
P.06 - Lloji i alarmit [+] (1-4/5; 2-5/8; 3-orari hekurudhor; 4-ditor)
P.07 - NDRYSHO [+]
P.08 - Bud.1.HH [+]
P.09 - Bud.1.MM [+]
P.10 - Bud.2.HH [+]
P.11 - Bud.2.MM [+]
P.12 - Bud.3.HH [+]
P.13 - Bud.3.MM [+]
P.14 - Korrigjim (D.H) [+]
F.15 - Verë/Dimër [+]
P.16 - Bipues përshpejtues [+]
P.17 - Shfaq zero të parëndësishme në shifrën e orës [+]
P.18 - Shfaq zero të parëndësishme në shifrën e datës [+]

Cilësimi i alarmit: Butoni On / On Bud. - Kryhet On / On, ndërsa: Me llojin e orës me zile 1: Bud.1 - 1 turn; Bud.2 - ndryshim; Bud.3 - turni i 3-të;
Orari i turnit: 1,2,3,4 - turni i parë; 5 - ditë pushimi; 6,7,8,9 - ndërrimi i dytë; 10 - ditë pushimi; 11,12,13,14 - turni i 3-të; 15.16 - ditë pushimi; Pastaj ditët përsëriten.
Me llojin e parë të orës me zile 2: Bud.1 - vendos orën e alarmit; Bud.2, Bud.3 - nuk funksionon; Orari i ndërrimit: Ditëve të javës.
Me llojin e tretë të orës me zile: Bud.1 - caktohet ora e ditës; Bud.2 - cakton orën për natën; Bud.3 - nuk funksionon;
Orari i turneve: - ditë, natë, 2 ditë pushim; Nëse lloji i alarmit është 4 Bud.1, Bud.2, Bud.3 - vendosni kohën; Nëse planifikoni të përdorni vetëm një orë me zile, caktoni orën për tre të jetë e njëjtë.
Orari i ndërrimit: ditor. Nëse shtypni butonin Off.Bud. në modalitetin e cilësimit të parametrave - cilësimet do të dalin pa kursim.
Rregullimi: Gjatë rregullimit, përdoret metoda e mëposhtme: +/- BH, ku: H - numri i sekondave që do të korrigjohen në orë (maksimumi 9). D - sekonda të korrigjueshme në ditë. KUJDES! Kur rryma është e fikur, nuk bëhet asnjë rregullim. Kur e ndizni, kontrolloni që ora të jetë e saktë.

Kjo orë tashmë është rishikuar disa herë, por shpresoj që rishikimi im të jetë gjithashtu me interes për ju. U shtua përshkrimi i punës dhe udhëzimet.

Projektuesi u ble në ebay.com për 1,38 paund (0,99 + 0,39 transport), që është e barabartë me 2,16 dollarë. Në momentin e blerjes, ky është çmimi më i ulët i ofruar.

Dorëzimi zgjati rreth 3 javë, kompleti erdhi në një qese plastike të rregullt, e cila nga ana e saj ishte e paketuar në një qese të vogël "puçrrash". Kishte një copë të vogël shkume në kapakët e treguesit, pjesa tjetër e pjesëve ishin pa asnjë mbrojtje.

Nga dokumentacioni, vetëm një fletë e vogël e formatit A5 me një listë të komponentëve të radios nga njëra anë dhe një diagram qarku nga ana tjetër.

1. Skema e qarkut elektrik, pjesët e përdorura dhe parimi i punës



Baza ose "zemra" e orës është një mikrokontrollues 8-bit AT89C2051-24PU CMOS i pajisur me një ROM 2 kb Flash të programueshëm dhe të fshirë.
Asambleja e gjeneratorit të orës montuar sipas skemës (Fig. 1) dhe përbëhet nga një rezonator kuarci Y1 i dy kondensatorëve C2 dhe C3, të cilët së bashku formojnë një qark oscilues paralel.


Duke ndryshuar kapacitetin e kondensatorëve, është e mundur të ndryshoni frekuencën e gjeneratorit të orës brenda një diapazoni të vogël dhe, në përputhje me rrethanat, saktësinë e orës. Figura 2 tregon një variant të qarkut të gjeneratorit të orës me aftësinë për të rregulluar gabimin e orës.

Nyja fillestare e rivendosjes shërben për vendosjen e regjistrave të brendshëm të mikrokontrolluesit në gjendjen fillestare. Shërben për të furnizuar, pas lidhjes së fuqisë me 1 dalje të MK, një impuls të vetëm me një kohëzgjatje prej të paktën 1 μs (12 periudha të frekuencës së orës).
Përbëhet nga një zinxhir RC i formuar nga një rezistencë R1 dhe një kondensator C1.

Skema e hyrjes përbëhet nga butonat S1 dhe S2. Bëhet në mënyrë programore në mënyrë që kur shtypni një nga butonat një herë, në altoparlant dëgjohet një sinjal i vetëm dhe kur e mbani të shtypur, një i dyfishtë.

Moduli i ekranit montuar në një tregues katër-shifror me shtatë segmente me një katodë të përbashkët DS1 dhe një montim rezistent PR1.
Asambleja rezistente është një grup rezistencash në një paketë:


Pjesa e zërit qark është një qark i montuar në një rezistencë 10kΩ R2, një tranzistor pnp Q1 SS8550 (që vepron si një përforcues) dhe një element piezoelektrik LS1.

Të ushqyerit furnizohet përmes lidhësit J1 me kondensator zbutës C4 të lidhur paralelisht. Gama e tensionit të furnizimit nga 3 në 6 V.

2. Montimi i konstruktorit

Asambleja nuk ka shkaktuar ndonjë vështirësi, është e nënshkruar në tabelë se cilat pjesë të bashkohen.

Shumë foto - montimi i konstruktorit është i fshehur nën spoiler

Fillova me panelin, pasi është i vetmi që nuk është komponent radio:

Hapi tjetër i bashkova rezistorët. Është e pamundur t'i ngatërroni ato, të dyja janë 10 kΩ:


Pas kësaj, instalova një kondensator elektrolitik në tabelë, duke vëzhguar polaritetin, një montim rezistence (duke i kushtuar vëmendje gjithashtu daljes së parë) dhe elementët e gjeneratorit të orës - 2 kondensatorë dhe një rezonator kuarci

Hapi tjetër është bashkimi i butonave dhe kondensatorit të filtrit të energjisë:

Pas kësaj, kthesa për një element piezoelektrik të shëndoshë dhe një transistor. Në tranzistor, gjëja kryesore është të instaloni anën e duhur dhe të mos ngatërroni përfundimet:

Së fundi, bashkoj treguesin dhe lidhësin e energjisë:

Unë lidhem me një furnizim me energji 5V. Gjithçka funksionon!!!


3. Vendosni kohën aktuale, alarmet dhe sinjalin për orë.

Pasi të jetë ndezur energjia, ekrani është në modalitetin ("HOURS: MINUTES") dhe tregon orën e paracaktuar prej 12:59. Bipi për orë është i ndezur. Të dy alarmet janë ndezur. I pari është caktuar të funksionojë në orën 13:01 dhe i dyti në orën 13:02.


Sa herë që shtypni shkurtimisht butonin S2, ekrani do të kalojë ndërmjet ("HOURS: MINUTES") dhe ("MINUTES: SECONDS").
Një shtypje e gjatë e butonit S1 hyn në menunë e cilësimeve, e përbërë nga 9 nënmenu, të shënuara me shkronjat A, B, C, D, E, F, G, H, I. Nënmenytë ndërrohen me butonin S1, vlerat ndryshohen me butonin S2. Nënmenyja I pasohet nga dalja nga menyja e cilësimeve.

A: Vendosja e orës aktuale
Duke shtypur butonin S2, vlera e orës ndryshon nga 0 në 23. Pas caktimit të orëve, duhet të shtypni S1 për të shkuar te nënmenyja B.

B: Vendosja e minutave të kohës aktuale


C: Aktivizo zilen për orë
Si parazgjedhje, është i aktivizuar (ON) - çdo orë nga ora 8:00 deri në 20:00 tingëllon një sinjal zanor. Shtypja e butonit S2 ndryshon vlerën midis ON dhe OFF. Pas vendosjes së vlerës, duhet të shtypni S1 për të shkuar te nënmenyja D.

D: Aktivizoni/fikni alarmin e parë
Si parazgjedhje, ora e ziles është e aktivizuar (ON). Shtypja e butonit S2 ndryshon vlerën midis ON dhe OFF. Pas vendosjes së vlerës, duhet të shtypni S1 për të shkuar te nënmenyja tjetër. Nëse alarmi është i fikur, nënmenytë E dhe F janë anashkaluar.

E: Vendosja e orës së parë me zile
Duke shtypur butonin S2, vlera e orës ndryshon nga 0 në 23. Pas vendosjes së orëve, duhet të shtypni S1 për të shkuar te nënmenyja F.

F: Vendosja e minutave të alarmit të parë
Duke shtypur butonin S2, vlera e minutave ndryshon nga 0 në 59. Pas vendosjes së minutave, duhet të shtypni S1 për të shkuar te nënmenyja C.

G: Aktivizoni/fikni alarmin e dytë
Si parazgjedhje, ora e ziles është e aktivizuar (ON). Shtypja e butonit S2 ndryshon vlerën midis ON dhe OFF. Pas vendosjes së vlerës, duhet të shtypni S1 për të shkuar te nënmenyja tjetër. Nëse alarmi është i fikur, nënmenytë H dhe I anashkalohen dhe menyja e cilësimeve del.

H: Vendosja e orës së dytë të ziles
Duke shtypur butonin S2, vlera e orës ndryshon nga 0 në 23. Pas vendosjes së orëve, duhet të shtypni S1 për të shkuar te nënmenyja I.

I: Vendosja e minutave të alarmit të dytë
Duke shtypur butonin S2, vlera e minutave ndryshon nga 0 në 59. Pas vendosjes së minutave, duhet të shtypni S1 për të dalë nga menyja e cilësimeve.

Korrigjimi i sekondave
Në modalitetin ("MINUTA: SECONDS"), është e nevojshme të mbani të shtypur butonin S2 për të rivendosur sekondat. Më pas, duke shtypur shkurt butonin S2, filloni numërimin mbrapsht të sekondave.

4. Përshtypjet e përgjithshme të orës.

Të mirat:
+ Çmimi i ulët
+ Montim i lehtë, pjesë minimale
+ Kënaqësia e vetë-montimit
+ Gabim mjaft i ulët (kam disa sekonda prapa në ditë)

Minuset:
- Nuk mban kohë pas fikjes
- Mungesa e ndonjë dokumentacioni, përveç skemës (ky artikull e zgjidhi pjesërisht këtë minus)
- Firmware në mikrokontrollues është i mbrojtur nga leximi

5. Opsionale:

1) Në hapësirat e pakufishme të internetit, gjeta udhëzimet për këtë orë në anglisht dhe e përktheva në Rusisht. Mund ta shkarkoni

Artikujt kryesorë të lidhur