Avr mikro nəzarətçisində saat dövrəsi. Mikrokontrollerdə LED saat. Mikrokontrollerdə elektron saat sxemi

Saatın bu versiyası dövrəni mümkün qədər sadələşdirmək, enerji istehlakını azaltmaq və nəticədə cibinizə asanlıqla sığan bir cihaz əldə etmək üçün hazırlanmışdır. Dövrəni gücləndirmək üçün miniatür batareyaları, SMD montajını və miniatür dinamiki (məsələn, işləməyən mobil telefondan) seçməklə, kibrit qutusundan bir qədər böyük dizayn əldə edə bilərsiniz.
Super parlaq göstəricinin istifadəsi dövrə tərəfindən istehlak olunan cərəyanı azaltmağa imkan verir. Cari istehlakın azalması "LoFF" rejimində də əldə edilir - göstərici sönür və yalnız saatın aşağı dərəcəli rəqəminin yanıb-sönən nöqtəsi açılır.

Göstəriş
Göstəricilərin tənzimlənən parlaqlığı oxunuşların ən rahat ekranını seçməyə imkan verir (və yenidən enerji istehlakını azaldır).
Saatın 9 ekran rejimi var. Rejimlər arasında keçid "plus" və "minus" düymələri vasitəsilə həyata keçirilir. Oxunmaların özləri göstərilməzdən əvvəl, göstəricilərdə rejimin adı haqqında qısa bir işarə göstərilir. İpucu ekranının müddəti bir saniyədir. Qısamüddətli göstərişlərin istifadəsi saatın yaxşı erqonomikasına nail olmağa imkan verdi. Ekran rejimləri arasında keçid edərkən (bunlardan adi bir saat kimi sadə bir cihaz üçün çox şey var) heç bir qarışıqlıq yoxdur və göstəricidə hansı oxunuşların göstərildiyi həmişə aydın olur.

Göstəricidə göstərilən oxunuşların düzəldilməsi "Düzəliş" düyməsini basmaqla aktivləşdirilir. Bu halda, 1/4 saniyə ərzində qısa müddətli sorğu göstərilir, bundan sonra tənzimlənən dəyər 2 Hz tezliyində yanıb-sönməyə başlayır. Oxumalar artı və mənfi düymələri ilə düzəldilir. Düyməni uzun müddət basdığınız zaman təyin olunmuş tezlikdə avtomatik təkrarlama rejimi işə salınır. Düyməni basmaq üçün avtomatik təkrarlama tezlikləri bunlardır: saatlar, aylar və həftənin günü üçün - 4 Hz; dəqiqə, il və göstərici parlaqlığı üçün - 10 Hz; düzəliş dəyəri üçün - 100 Hz.
Saatlar, dəqiqələr və saniyələr istisna olmaqla, bütün tənzimlənən dəyərlər EEPROM-a yazılır və enerjini söndürüb yandırdıqdan sonra bərpa olunur. Korreksiya zamanı saniyələr sıfırlanır. Saat-dəqiqə, dəqiqə-saniyə və LoFF istisna olmaqla bütün rejimlər avtomatik olaraq qaytarılır. 10 saniyə ərzində heç bir düymə basılmazsa, saat saat-dəqiqə göstərmə rejiminə keçir.
Düyməni basaraq "On/Off alarm." Zəngli saat açılır/sönür. Siqnalın işə salınması qısa iki tonlu səslə təsdiqlənir. Zəngli saat işə salındıqda, göstəricinin aşağı sıra rəqəmindəki nöqtə yanır.
"Corr" rejimində indikatorda ilkin dəyəri saniyədə 5000 mikrosaniyə olan düzəliş sabiti göstərilir. Saat geridə qaldıqda, sabiti saniyədə mikrosaniyələrlə hesablanmış gecikmə miqdarı ilə artırırıq. Saat tələsirsə, o zaman eyni prinsipə uyğun olaraq sabiti azaldırıq.

Sxem

Bu məqalə rəqəmsal dizaynı təsvir edir Attmega8 mikro nəzarətçisində saat Saniyəölçən, zəngli saat və geri sayım taymeri ilə təchiz edilmişdir. Saat birləşmiş tarix və vaxtı göstərmək imkanı ilə gün və tarix göstərmə funksiyasına malikdir. Mövcuddur avtomatik keçid yay və qış vaxtı üçün, həmçinin sıçrayış illəri nəzərə alınmaqla.

Ekran altı 7 seqmentdən ibarətdir LED göstəriciləri parlaqlıq tənzimlənməsi ilə. Saat həmçinin batareya ehtiyatı ilə təchiz olunub.

Mikrokontroller saat dizaynının təsviri

Yuxarıda qeyd edildiyi kimi, saat multileks rejimində işləyən iki üçrəqəmli T-5631BUY-11 displeyindən ibarət altı rəqəmli displeyə malikdir. Göstərici anodlar kateqoriyaya görə qruplaşdırılır və T1...T6 tranzistorlarından istifadə etməklə dəyişdirilir.

Katodlar seqmentlərə qruplaşdırılıb və birbaşa IO1 Attmega8 mikro nəzarətçisindən qidalanır. Multipleksləmə tezliyi 100Hz-dir.

Saat 32768 Hz tezliyə malik aşağı tezlikli kvars kristal X1 tərəfindən idarə olunur. Kvars üçün daxili 36pF kondansatörlərdən istifadə etməyə imkan verən CKOPT bitini aktivləşdirərək, xarici kondansatörlərdən istifadə etməyə ehtiyac yoxdur.

Generatoru işə salmaqda probleminiz varsa, 2 22pf kondansatör birləşdirməyə cəhd edə bilərsiniz. Daha yüksək saat dəqiqliyi üçün daxili kondansatörləri tamamilə söndürə bilərsiniz (CKOPT bitini sıfırlayın) və yalnız xarici olanları buraxın.

Pyezo emitter REP1 həyəcan siqnalı verir və taymerin bitdiyini bildirir. ərzində səs siqnalı Məntiq 1 pin 16-da görünür (port PB2). Bu siqnal istənilən yükü idarə etmək üçün istifadə edilə bilər.

Saat üç düymə ilə idarə olunur - dəqiqələr, saatlar və rejim. Düymələr Attmega8 mikrokontrollerinin portlarını qoruyan rezistorlar vasitəsilə birləşdirilir. Dövrə 5 voltluq mənbədən (7805) qidalanır. Cari istehlak əsasən aktiv göstəricilərin sayından, həmçinin parlaqlığın tənzimlənməsi dərəcəsindən asılıdır.

Maksimum parlaqlıqda cari istehlak 60 mA-a çatır. Saat təchiz olunub ehtiyat batareya qidalanma. Batareya ilə işləyərkən saat ekranın söndürüldüyü qənaət rejiminə keçir. Həmçinin bu rejimdə, səs siqnalını söndürmək lazım olduğu hallar istisna olmaqla, düymələr aktiv deyil.

Gərginlik ehtiyat güc 3 ilə 4,5 V arasında. Bu bir 3V batareya, üç NiMH və ya NiCd 1,2 V batareya və ya bir ola bilər Li-Pol batareya və ya Li-Ion (3,6 - 3,7 V). 3V batareyadan cari istehlak yalnız 5...12mA təşkil edir. Vaxt batareyanın ömrü Standart tutumu 200 mAh olan 3V CR2032 batareyasından qənaət rejimində saatlar nəzəri olaraq təxminən 2,5 - 3 il davam etməlidir.

Mikrokontroller üçün proqram təminatı məqalənin sonundadır. Konfiqurasiya bitləri aşağıdakı kimi qurulmalıdır:

Saat idarəetməsi

Saat TL1 dəqiqə, saat TL2 və TL3 rejimləri ilə idarə olunur. Saat və dəqiqə düymələri saat və dəqiqə təyin etmək üçün saat rejimində istifadə olunur. Digər rejimlərdə onlar var müxtəlif funksiyalar. Rejim düyməsi arasında dəyişir müxtəlif rejimlər, bunlardan cəmi 8-i var:

Rejim 1 - Saat

Bu rejimdə ekran göstərilir cari vaxt"HH.MM.SS" formatında. Saat düyməsi saatı təyin etmək üçün istifadə olunur. Dəqiqələri təyin etmək üçün dəqiqə düyməsi. Basıldıqda saniyələr sıfırlanır.

Rejim 2 - Yaz vaxtına qənaət və ilin təyin edilməsi

Burada siz yay və qış vaxtları arasında avtomatik keçidi yandıra və ya söndürə və ili təyin edə bilərsiniz. Data aşağıdakı format"AC 'RR" (AC - avtomatik vaxt, boşluq, ilin son iki rəqəmi).

Rejim 3 - Geri sayım taymeri

Bu rejim sizə geri sayımı təşkil etməyə imkan verir dəyəri təyin edin sıfıra. Bu müddət keçdikdən sonra səs siqnalı səslənəcək və LED1 yanacaq. Mode düyməsini basmaqla səs siqnalı dayandırıla bilər. Məlumat aşağıdakı formatdadır: "HH.MM.SS". Maksimum mümkün dəyər 99.59.59 (demək olar ki, 100 saat) təşkil edir.

Rejim 4 – Birləşdirilmiş məlumat çıxışı

Bu rejimdə aşağıdakılar növbə ilə göstərilir:

  1. "HH.MM.SS" formatında cari vaxt
  2. tarix “AA.DD.MM.” formatında

Hər bir format 1 saniyə ərzində göstərilir. Bu rejimdə Saat və Dəqiqə düymələri ekranın parlaqlığını tənzimləmək üçün istifadə olunur (Saat-, Dəqiqə+). Parlaqlıq loqarifmik olaraq 6 addımda dəyişir: 1/1, 1/2, 1/4, 1/8, 1/16 və 1/32. Defolt 1/2-dir

Rejim 5 - Həftənin gününün və həyəcan rejiminin qurulması

Bu rejimdə siz həftənin gününü təyin edə bilərsiniz - bazar ertəsindən bazar gününə qədər (Bazar ertəsi, Çərşənbə axşamı, Çərşənbə, Çərşənbə axşamı, Cümə, Şənbə, Bazar kimi göstərilir), həyəcan siqnalını yandırıb onun iş rejimini seçə bilərsiniz. Məlumat aşağıdakı formatdadır: “AA AL._” (həftənin günü, boşluq, AL., siqnalizasiya).

Saat düyməsi həftənin gününü təyin edir. Dəqiqə düyməsi həyəcan siqnalını yandırmaq/söndürmək və onun iş rejimini seçmək üçün istifadə olunur: “AL._” = həyəcan aktiv deyil, “AL.1” = siqnal 1 dəfə səslənir (sonra avtomatik olaraq “AL._” rejiminə keçir. mövqe), “ AL.5" = həyəcan yalnız iş günləri (Bazar-Cümə, Şənbə-Bazar istisna olmaqla), "AL.7" = hər gün zəng çalır

Rejim 6 – Həftənin gününü və tarixini təyin etmək

Saat düyməsi ayın gününü təyin etməyə imkan verir. Dəqiqə düyməsi ayı təyin etməyə imkan verir.

Rejim 7 - Saniyəölçən

Saniyəölçən 0,1 saniyə dəqiqliklə vaxtı ölçməyə imkan verir. Maksimum ölçmə müddəti 9.59.59.9 (demək olar ki, 10 saat). Məlumat aşağıdakı "H.MM.SS.X" formatındadır. Dəqiqə düyməsi saniyəölçəni işə salmaq və dayandırmaq üçün istifadə olunur. Saat düyməsini sıfırlamaq üçün istifadə olunur.

Rejim 8 - Zəngli saat

Bu rejim zəngli saatı (ALARM) göstərmək və qurmaq üçün istifadə olunur. Məlumat aşağıdakı "HH.MM.AL" formatındadır. Dəqiqələr düyməsi zəngli dəqiqəni, Saat düyməsi zəngli saatı təyin edir.

Aşağıda ümumi katodlu bir göstərici olan oxşar saatın diaqramı verilmişdir

(Yükləmələr: 765)

Bu zəngli saat real vaxt rejimində işləyən saat çipinə əsaslanır ki, bu da ona əsas olmadıqda ehtiyat enerji mənbəyindən işləməyə imkan verir. Vaxt təyin edin zəngli saat və iş rejimi mikrokontrolörün qeyri-sabit yaddaşında saxlanılır. Ekran rejimi - 24 saat. Tərkibində "tikləmə" imitasiyası var və vaxt və iş rejimləri LED göstəriciləri ilə göstərilir.

Əməliyyat prinsipi

Bu saatın əsasını DS1307 mikrosxemi təşkil edir - I2C interfeysi vasitəsilə idarəetmə nəzarətçisi ilə məlumat mübadiləsini həyata keçirən real vaxt saatı. Zamanın göstərilməsi dinamik rejimdə işləyən 4 7 seqmentli göstərici vasitəsilə həyata keçirilir. Vaxtın daxil edilməsi və tənzimlənməsi 5 düymədən istifadə etməklə həyata keçirilir: “+ dəqiqə”, “+ saat”, “quraşdır”, “siqnal” və “sıfırla”. Zəngli saatın səs siqnalı standart piezo emitter vasitəsilə çıxarılır və ikinci fasilələrlə 1 kHz tezliyi olan bir siqnaldır.

Atmega48, mövcudluğu və bortda lazımi periferik qurğuların (hətta artıq) olması səbəbindən idarəetmə mikrokontrolleri kimi seçildi. DS1307 real vaxt saatı nəzarət mikrokontrollerinin I2C aparat çıxışlarına qoşulub. DS1307-ni müstəqil rejimdə işləmək üçün (əsas nəzarətçinin elektrik kəsilməsi halında) istifadə edin litium batareya 3V ehtiyat enerji təchizatı səbəbiylə bir neçə il davam edəcək aşağı enerji istehlakı mikrosxemlər.

Nəzarət proqramına daha yaxından nəzər salaq:

Proqram bayraq taymer maşını prinsipi əsasında işləyir: bütün vəziyyətlər və hadisələr müvafiq 1s, 1ms və 263.17ms taymerin kəsilmələrində yerinə yetirilən müvafiq bayraqlar şəklində təmsil olunur. Proqram 2 aparat taymerindən istifadə edir.

Saat çipi sorğulanır və düymələr 263,17 ms intervalla basılır. Zəng səsi siqnalını yaratmaq üçün 1ms intervalı, onu modulyasiya etmək üçün isə 1s istifadə olunur. İkinci interval eyni zamanda göstəricinin 2-ci rəqəmindəki nöqtənin yanıb-sönməsinə nəzarət edir, saatları və dəqiqələri ayırır və eyni zamanda "gənə" meydana gəlməsinə xidmət edir.
Gəlin nəzərdən keçirək sxematik diaqram saat.

Təyinatlar və nominallar:
S4 - Saat artımı
S3 - dəqiqələri artırın
S2 - Quraşdırma
S1 - Zəngli saatı yandırın
S5 - Sıfırla

R6-R10 - 10k
R1-R5 - 510ohm

Təchizat gərginliyi - 5 volt.

Quraşdırma və istifadə

Düzgün yığılmış saatlar əlavə parametrlər ehtiyac yoxdur. Siz sadəcə olaraq cari vaxtı və zəngli saatı təyin etməlisiniz.
Cari vaxtı təyin etmək aşağıdakı kimidir:
1) Cari vaxtı təyin etmək üçün S1 və S2 düymələrindən istifadə edin (rəqəmlər arasındakı nöqtə yanıb-sönmür)
2) S3 düyməsi ilə saatı işə salın
Siqnalın qurulması:
1) S3 düyməsini basın və 1-ci rəqəmdəki nöqtənin yandığından əmin olun
2) S1 və S2 düymələrindən istifadə edərək zəng vaxtını təyin edin
3) S4 düyməsini istifadə edərək zəngi yandırın
Əlavə xüsusiyyətlər:
İşarəni yandırın - S4 düyməsini basıb saxlayın və xarakterik səslər görünənə qədər S2 düyməsini basın. Eyni şəkildə sönür.
Dəqiqələri və saniyələri göstərin - S4 düyməsini basıb saxlayın və S1 düyməsini basın. Bundan sonra S3 düyməsini basarsanız, saniyələr 00-a sıfırlanacaq. Qayıdın - eyni kombinasiya.

Saatların foto və videoları

Saat işləməyən "elektronikadan" hazırlanmış qutuda yığılmışdır.


Adından da göründüyü kimi, əsas məqsəd bu cihazın- cari vaxtı və tarixi tapın. Ancaq daha çox şey var faydalı funksiyalar. Onun yaradılması ideyası nisbətən böyük (bilək üçün) olan yarı qırıq saatla rastlaşdıqdan sonra ortaya çıxdı. metal korpus. Düşündüm ki, onu ora qoya bilərəm ev saatı, imkanları yalnız öz təxəyyülünüz və bacarığınızla məhdudlaşır. Nəticə aşağıdakı funksiyaları olan bir cihaz oldu:

1. Saat - təqvim:

    Saatları, dəqiqələri, saniyələri, həftənin gününü, günü, ayını, ilini saymaq və göstərmək.

    Hər saat yerinə yetirilən cari vaxtın avtomatik tənzimlənməsinin mövcudluğu ( maksimum dəyərlər+/-9999 ədəd, 1 ədəd. = 3,90625 ms.)

    Bir tarixdən həftənin gününün hesablanması (cari əsr üçün)

    Avtomatik keçid yay və qış vaxtı üçün (söndürilə bilər)

  • Artıq illər nəzərə alınır

2. İki müstəqil zəngli saat (işlədikdə melodiya səslənir)
3. 1 saniyəlik artımlarla taymer. (Maksimum hesablama vaxtı 99 saat 59 dəqiqə 59 saniyə)
4. 0,01 san hesablama ayırdetmə qabiliyyətinə malik iki kanallı saniyəölçən. ( maksimum vaxt 99h 59m 59s sayır)
5. Saniyəölçən sayma dəqiqliyi 1 saniyə. (maksimum hesablama müddəti 99 gün)
6. -5°C aralığında termometr. 55 ° C-yə qədər (temperatur diapazonu ilə məhdudlaşır normal əməliyyat cihazlar) 0,1°C artımlarla.
7. Oxucu və emulyator elektron açarlar- Dallas 1-Wire protokolundan istifadə edən DS1990 tipli planşetlər (artıq bir neçə universal "bütün ərazi açarları" ehtiva edən 50 ədəd yaddaş) açar kodu bayt-bayt keçirmək imkanı ilə.
8. Uzaqdan IR şüalarına nəzarət (yalnız “Şəkil çək” əmri yerinə yetirilir). rəqəmsal kameralar"Pentax", "Nikon", "Canon"
9. LED fənər
10. 7 melodiya
11. Hər saatın əvvəlində səs siqnalı (söndürülə bilər)
12. Düymələrin basılmasının səslə təsdiqlənməsi (söndürülə bilər)
13. Kalibrləmə funksiyası ilə batareya gərginliyinin monitorinqi
14. Rəqəmsal göstərici parlaqlığının tənzimlənməsi

Bəlkə də belə funksionallıq lazımsızdır, amma mən universal şeyləri və üstəlik bu saatın öz əllərimlə hazırlanacağından mənəvi məmnunluğu xoşlayıram.

Saatın sxematik diaqramı

Cihaz ATmega168PA-AU mikro nəzarət cihazı üzərində qurulub. Saat 32768 Hz tezliyində kvars saatından asinxron rejimdə işləyən T2 taymerinə uyğun olaraq işarələnir. Mikrokontroller demək olar ki, hər zaman yuxu rejimindədir (indikator sönür), bu saniyəni cari vaxta əlavə etmək üçün saniyədə bir dəfə oyanır və yenidən yuxuya gedir. Aktiv rejimdə MK daxili RC osilatorundan 8 MHz tezliyində işləyir, lakin daxili preskaler onu 2-yə bölür, nəticədə nüvənin saatı 4 MHz olur. Göstəriş üçün ümumi anodlu və onluq nöqtəsi olan dörd tək rəqəmli LED rəqəmsal yeddi seqmentli göstərici istifadə olunur. Məqsədləri aşağıdakı kimi olan 7 status LED-i də var:
D1- Mənfi dəyər işarəsi (mənfi)
D2- İşləyən saniyəölçən işarəsi (yanıb-sönür)
D3- İlk siqnalın işə salınmasının işarəsi
D4- İkinci siqnalın işə salınmasının işarəsi
D5- Hər saatın əvvəlində səs siqnalının işarəsi
D6- İşləyən taymer işarəsi (yanıb-sönür)
D7 - İşarə aşağı gərginlik güc batareyaları

R1-R8 - HG1-HG4 rəqəmsal göstəricilərinin seqmentlərinin cərəyan məhdudlaşdıran rezistorları və D1-D7 LEDləri. R12,R13 – batareya gərginliyinə nəzarət etmək üçün bölücü. Saat təchizatı gərginliyi 3V olduğundan və ağ LED D9 nominal cərəyan istehlakında təxminən 3.4-3.8V tələb edir, tam gücdə parılmır (lakin qaranlıqda büdrəməmək üçün kifayətdir) və buna görə də cərəyan məhdudlaşdıran rezistor olmadan bağlanır. R14, Q1, R10 elementləri infraqırmızı LED D8 (həyata keçirmə) üçün nəzərdə tutulmuşdur. uzaqdan nəzarət rəqəmsal kameralar üçün). R19, ​​R20, R21 1 telli interfeysə malik cihazlarla əlaqə qurarkən cütləşmə üçün istifadə olunur. Nəzarət şərti olaraq adlandırdığım üç düymə ilə həyata keçirilir: MODE (rejim), UP (yuxarı), DOWN (aşağı). Onlardan birincisi, MK-nı xarici bir kəsmə ilə oyatmaq üçün nəzərdə tutulmuşdur (bu halda göstərici açılır), buna görə də PD3 girişinə ayrıca qoşulur. Qalan düymələrin basılması ADC və R16, R18 rezistorlarından istifadə etməklə müəyyən edilir. Əgər 16 saniyə ərzində düymələr basılmazsa, MK yuxu rejiminə keçir və göstərici sönür. Rejimdə olanda “Kameralar üçün uzaqdan idarəetmə” bu interval 32 saniyə, fənər yandıqda isə 1 dəqiqədir. MK də idarəetmə düymələrindən istifadə edərək əl ilə yuxu rejiminə keçirilə bilər. Saniyəölçən 0,01 saniyə sayma dəqiqliyi ilə işləyərkən. Cihaz yuxu rejiminə keçmir.

Çap dövrə lövhəsi

Cihaz korpusun daxili diametrinin ölçüsünə uyğun olaraq dəyirmi formalı iki tərəfli çap dövrə lövhəsində yığılmışdır. qol saatı. Ancaq istehsalda qalınlığı 0,35 mm olan iki tək tərəfli lövhədən istifadə etdim. Bu qalınlıq yenidən 1,5 mm qalınlığında ikitərəfli şüşə lifli laminatdan soyularaq əldə edilmişdir. Sonra lövhələr bir-birinə yapışdırıldı. Bütün bunlar ona görə edildi ki, mənim nazik ikitərəfli şüşə lifim yox idi və saat qutusunun məhdud daxili məkanında saxlanılan hər millimetr qalınlıq çox qiymətlidir və LUT istifadə edərək çap keçiricilərinin istehsalında hizalanmaya ehtiyac yox idi. üsul. Rəsm çap dövrə lövhəsi və hissələrin yeri əlavə edilmiş fayllardadır. Bir tərəfdə göstəricilər və cərəyanı məhdudlaşdıran R1-R8 rezistorları var. Arxa tərəfdə bütün digər detallar var. Ağ və infraqırmızı LEDlər üçün iki deşik var.

Düymə kontaktları və batareya tutacağı 0,2...0,3 mm qalınlığında çevik yay təbəqə poladdan hazırlanır. və konservləşdirilmiş. Aşağıda hər iki tərəfdən lövhənin fotoşəkilləri var:

Dizayn, hissələri və onların mümkün dəyişdirilməsi

ATmega168PA-AU mikro nəzarət cihazı ATmega168P-AU, ATmega168V-10AU ATmega168-20AU ilə əvəz edilə bilər. Rəqəmsal göstəricilər- 4 ədəd KPSA02-105 rəqəm hündürlüyü 5,08 mm olan super parlaq qırmızı parıltı. Eyni KPSA02-xxx və ya KCSA02-xxx seriyasından təchiz oluna bilər. (yalnız yaşıl olanlar deyil - onlar zəif parlayacaqlar) Mən layiqli parlaqlığı olan oxşar ölçülü digər analoqlardan xəbərdar deyiləm. HG1, HG3-də katod seqmentlərinin əlaqəsi HG2, HG4-dən fərqlidir, çünki çap dövrə lövhəsini çəkmək mənim üçün daha əlverişli idi. Bu baxımdan proqramda onlar üçün fərqli simvol generator cədvəlindən istifadə olunur. Standart ölçüləri 0805 və 1206, LED-lər D1-D7 standart ölçülü 0805. 3 mm diametrli ağ və infraqırmızı LEDlər, səthə montaj üçün istifadə olunan rezistorlar və kondansatörlər SMD. Lövhədə keçidlər quraşdırılmalı olan 13 deşik var. kimi temperatur sensoru 1-telli interfeysli DS18B20 istifadə olunur. LS1 qapağa daxil edilmiş adi pyezoelektrik tvitdir. Bir kontaktla üzərində quraşdırılmış yaydan istifadə edərək lövhəyə, digəri ilə qapağın özü ilə saatın gövdəsinə qoşulur. Qol saatından kvars rezonatoru.

Proqramlaşdırma, proshivka, qoruyucular

Dövrə daxilində proqramlaşdırma üçün lövhədə yalnız 6 dəyirmi əlaqə nöqtəsi (J1) var, çünki tam birləşdirici hündürlüyə uyğun gəlmir. PLD2x3 pin fişindən və onlara lehimlənmiş yaylardan hazırlanmış kontakt cihazından istifadə edərək, onları bir əlimlə ləkələrə basaraq proqramçıya bağladım. Aşağıda cihazın bir fotoşəkili var.

Mən ondan istifadə etdim, çünki sazlama prosesi zamanı MK-nı dəfələrlə təkrarlamalı oldum. Birdəfəlik proqram təminatı ilə proqramçıya qoşulmuş nazik telləri yamaqlara lehimləmək və sonra yenidən lehimləmək daha asandır. MK-ni batareyasız yandırmaq daha rahatdır, ancaq güc ya ondan gəlir xarici mənbə+3V və ya eyni təchizatı gərginliyi olan bir proqramçıdan. Proqram VMLAB 3.15 mühitində assemblerdə yazılmışdır. Mənbə kodları, tətbiqdə FLASH və EEPROM üçün proqram təminatı.

DD1 mikrokontrollerinin FUSE bitləri aşağıdakı kimi proqramlaşdırılmalıdır:
CKSEL3...0 = 0010 - daxili RC osilatorundan 8 MHz saat sürəti;
SUT1...0 =10 - İşə başlama vaxtı: 6 CK + 64 ms;
CKDIV8 = 1 - tezlik bölücü 8-ə bərabərdir;
CKOUT = 1 - CKOUT-da Çıxış Saatı qeyri-aktivdir;
BODLEVEL2…0 = 111 - təchizatı gərginliyinə nəzarət qeyri-aktivdir;
EESAVE = 0 - kristalın proqramlaşdırılması zamanı EEPROM-un silinməsi qadağandır;
WDTON = 1 - Xeyr həmişə Watchdog Timer;
Qalan FUSE bitləri ən yaxşı şəkildə toxunulmaz qalır. FUSE biti “0” olaraq təyin edildikdə proqramlaşdırılır.

Arxivə daxil edilmiş zibillə EEPROM-u yandırmaq tələb olunur.

İlk EEPROM hüceyrələri ehtiva edir ilkin parametrlər cihazlar. Aşağıdakı cədvəl onların bəzilərinin məqbul hədlər daxilində dəyişdirilə bilən məqsədini təsvir edir.

Hüceyrə ünvanı

Məqsəd

Parametr

Qeyd

Aşağı səviyyəli siqnalın meydana gəldiyi batareya gərginliyinin miqdarı

260 ($104) (2,6V)

ölçülmüş batareya gərginliyinin dəyərini düzəltmək üçün əmsalı

yuxu rejiminə keçmək üçün vaxt intervalı

1 ədəd = 1 san

fənər yandırıldıqda yuxu rejiminə keçmək üçün vaxt intervalı

1 ədəd = 1 san

kameralar üçün uzaqdan idarəetmə rejimində olduqda yuxu rejiminə keçmək üçün vaxt intervalı

1 ədəd = 1 san

IButton açar nömrələri burada saxlanılır

Nöqtələrə dair kiçik izahatlar:

1 xal. Bu, LED-in yanacağı batareyadakı gərginlik səviyyəsini göstərir və onun aşağı dəyərini göstərir. Mən onu 2.6V-a təyin etdim (parametr - 260). Əgər başqa bir şeyə ehtiyacınız varsa, məsələn 2.4V, onda siz 240 ($00F0) yazmalısınız. Aşağı bayt xanada $0000 ünvanında, yüksək bayt isə $0001-də saxlanılır.

2 xal. Yer çatışmazlığı səbəbindən batareyanın gərginliyinin ölçülməsinin düzgünlüyünü tənzimləmək üçün lövhədə dəyişən rezistor quraşdırmadığım üçün proqram təminatının kalibrlənməsini tətbiq etdim. üçün kalibrləmə proseduru dəqiq ölçmə növbəti: əvvəlcə bu EEPROM hüceyrəsində 1024 ($400) əmsalı yazılıb, cihazı aktiv rejimə keçirib göstəricidəki gərginliyə baxmaq lazımdır, sonra isə voltmetrlə batareyada real gərginliyi ölçmək lazımdır. Müəyyən edilməli olan düzəliş əmsalı (K) düsturla hesablanır: K=Uр/Ui*1024 burada Ur voltmetrlə ölçülən real gərginlikdir, Ui cihazın özü tərəfindən ölçülən gərginlikdir. “K” əmsalı hesablandıqdan sonra cihaza daxil edilir (istismar təlimatında göstərildiyi kimi). Kalibrləmədən sonra səhvim 3%-i keçmədi.

3 xal. Burada heç bir düyməyə basılmadıqda cihazın yuxu rejiminə keçəcəyi vaxtı təyin edə bilərsiniz. Mənimki 16 saniyəyə başa gəlir. Məsələn, 30 saniyə ərzində yuxuya getməlisənsə, onda 30 (26 dollar) yazmaq lazımdır.

4 və 5-ci bəndlərdə eynidir.

6 xal. $0030 ünvanında sıfır açar ailə kodu (Dallas 1-Wire), sonra onun 48 bitlik nömrəsi və CRC saxlanılır. Beləliklə, ardıcıllıqla 50 düymə.

Quraşdırma, əməliyyat xüsusiyyətləri

Cihazın qurulması yuxarıda təsvir olunduğu kimi batareyanın gərginliyinin ölçülməsinin kalibrlənməsinə aiddir. Həmçinin 1 saat ərzində saat tezliyinin sapmasını aşkar etmək, hesablamaq və müvafiq düzəliş dəyərini daxil etmək lazımdır (prosedur istismar təlimatında təsvir edilmişdir).

Cihaz enerji ilə təchiz edilmişdir litium batareya CR2032 (3V) və indikatorun parlaqlığından asılı olaraq yuxu rejimində təxminən 4 µA, aktiv rejimdə isə 5...20 mA istehlak edir. Gündəlik beş dəqiqəlik istifadə ilə aktiv rejim Batareya parlaqlıqdan asılı olaraq təxminən 2...8 ay davam etməlidir. Saat qutusu mənfi batareyaya bağlıdır.

Açar oxunuşu DS1990-da sınaqdan keçirilmişdir. Emulyasiya METAKOM interkomlarında sınaqdan keçirilmişdir. Altında seriya nömrələri 46-dan 49-a qədər (son 4) yanıb-sönür (bütün düymələr EEPROM-da saxlanılır, onlar yanıb-sönməzdən əvvəl dəyişdirilə bilər) interkomlar üçün universal düymələr. 49 nomresi ile qeydiyyatdan kecirilen açar menim gorduyum butun METAKOM domofonlarini açdi, qalan universal açarlari sınamaq imkanım olmadı, kodlarını şəbəkədən götürdüm.

Kameralar üçün uzaqdan idarəetmə Pentax optio L20 və Nikon D3000 modellərində sınaqdan keçirilib. Canon nəzərdən keçirmək üçün əldə edilə bilmədi.

İstifadəçi təlimatı 13 səhifə tutur, ona görə də onu məqaləyə daxil etməmişəm, PDF formatında əlavəyə daxil etmişəm.

Arxivə daxildir:
Sxem və GIF;
Çaplı elektron lövhənin rəsmini və elementlərin formatda düzülməsini;
Assemblerdə proqram təminatı və mənbə kodu;

Radioelementlərin siyahısı

Təyinat Növ Denominasiya Kəmiyyət QeydMağazaMənim bloknotum
DD1 MK AVR 8 bitlik

ATmega168PA

1 PA-AU Notepad üçün
U2 temperatur sensoru

DS18B20

1 Notepad üçün
Q1 MOSFET tranzistoru

2N7002

1 Notepad üçün
C1, C2 Kondansatör30 pF2 Notepad üçün
C3, C4 Kondansatör0,1 µF2 Notepad üçün
C5 Elektrolitik kondansatör47 µF1 Notepad üçün
R1-R8, R17 Rezistor

100 Ohm

9 Notepad üçün
R9 Rezistor

10 kOhm

1 Notepad üçün
R10 Rezistor

8.2 Ohm

1 Notepad üçün
R11 Rezistor

300 Ohm

1 Notepad üçün
R12 Rezistor

2 MOhm

1 Notepad üçün
R13 Rezistor

220 kOhm

1 Notepad üçün
R14 Rezistor

30 kOhm

1 Notepad üçün
R15, R19 Rezistor

4,7 kOhm

2 Notepad üçün
R16 Rezistor

20 kOhm

1

Elektrik dövrə diaqramı

Bir cihaz iki funksiyanı birləşdirir: temperatur və vaxtın faktiki ölçülməsi (saat). Ekran növbə ilə həyata keçirilir, hər on saniyədən bir dəyişir. Saatı təyin etmək üçün sadə bir Çin elektron saatına bənzər iki düymə istifadə olunur: biri parametr seçmək, ikincisi onu dəyişdirmək üçün cavabdehdir. Cihaz beş volt gərginlikli sabit sabitləşmiş cərəyan mənbəyindən istifadə edərək şəbəkədən qidalanır şarj cihazı telefon).

Temperatur sensoru DS18B20 çipidir. Saat-Termometr cihazının öz akkumulyatoru olmadığından, enerji kəsilərsə, oxunuşlar təbii olaraq itiriləcəkdir. Və bu, insanın həyati məsələlərə gecikməsinə səbəb olmaması üçün maraqlı bir "hiylə" var - güc tətbiq edildikdə, iki parametr düyməsindən birini basana qədər ekranda vaxt əvəzinə tire görünəcək.

Evdə hazırlanmış temperatur ölçən cihazın gövdəsi uyğun bir qol düyməsi qutusu idi. Saat-termometr lövhəsinin özü və telefon şarj cihazından çıxarılan lövhə orada yerləşdirildi. DS18B20 sensoru uzaqdan idarə olunur və konnektor vasitəsilə birləşdirilir.

Tələb olunan hissələrin siyahısı

  • Atmega8 mikro nəzarət cihazı - 1 ədəd.
  • Kvars 32768 Hz - 1 ədəd.
  • Temperatur sensoru DS18B20 - 1 ədəd.
  • Yeddi seqment göstəricisi (4 rəqəm) - 1 ədəd.
  • SMD rezistorlarının ölçüsü 0805:
  • 620 Ohm - 8 ədəd.
  • 0 Ohm (tullanan) - 1 ədəd.
  • 4,7 kOhm - 1 ədəd.
  • Nəzakət düymələri - 2 ədəd.

Cihazın videosu YouTube kanalında