Litar jam pada mikropengawal avr. Jam LED pada mikropengawal. Litar jam elektronik pada mikropengawal

Versi jam tangan ini dibuat sedemikian rupa untuk memudahkan litar sebanyak mungkin, mengurangkan penggunaan kuasa dan akhirnya mendapatkan peranti yang mudah dimuatkan di dalam poket anda. Dengan memilih bateri kecil untuk menghidupkan litar, pelekap SMD dan pembesar suara kecil (contohnya, daripada telefon mudah alih yang tidak berfungsi), anda boleh mendapatkan reka bentuk yang lebih besar sedikit daripada kotak mancis.
Penggunaan penunjuk yang sangat terang membolehkan anda mengurangkan arus yang digunakan oleh litar. Pengurangan dalam penggunaan semasa juga dicapai dalam mod "LoFF" - penunjuk dimatikan, dan hanya titik berkelip bagi digit tertib rendah jam dihidupkan.

Petunjuk
Kecerahan penunjuk boleh laras membolehkan anda memilih paparan bacaan yang paling selesa (dan sekali lagi mengurangkan penggunaan tenaga).
Jam tangan mempunyai 9 mod paparan. Bertukar antara mod dijalankan menggunakan butang "tambah" dan "tolak". Sebelum bacaan itu sendiri dipaparkan, petunjuk ringkas tentang nama mod dipaparkan pada penunjuk. Tempoh paparan pembayang adalah satu saat. Penggunaan gesaan jangka pendek memungkinkan untuk mencapai ergonomik jam tangan yang baik. Apabila bertukar antara mod paparan (yang terdapat banyak untuk peranti mudah seperti jam tangan biasa), tidak ada kekeliruan, dan sentiasa jelas bacaan mana yang dipaparkan pada penunjuk.

Pembetulan bacaan yang dipaparkan pada penunjuk diaktifkan dengan menekan butang "Pembetulan". Dalam kes ini, gesaan jangka pendek dipaparkan selama 1/4 saat, selepas itu nilai yang dilaraskan mula berkelip pada frekuensi 2 Hz. Bacaan diperbetulkan menggunakan butang tambah dan tolak. Apabila anda menekan butang untuk masa yang lama, mod auto ulang diaktifkan pada frekuensi yang ditentukan. Kekerapan auto ulang untuk menekan butang ialah: untuk jam, bulan dan hari dalam seminggu - 4 Hz; untuk minit, tahun dan kecerahan penunjuk - 10 Hz; untuk nilai pembetulan - 100 Hz.
Semua nilai yang dilaraskan, kecuali jam, minit dan saat, ditulis ke EEPROM dan dipulihkan selepas mematikan dan menghidupkan kuasa. Detik semasa pembetulan ditetapkan semula kepada sifar. Semua mod kecuali jam-minit, minit-saat dan LoFF dikembalikan secara automatik. Jika tiada butang ditekan dalam masa 10 saat, jam akan bertukar kepada mod paparan jam minit.
Dengan menekan butang "Hidup/Mati penggera." Jam penggera dihidupkan/dimatikan. Pengaktifan penggera disahkan oleh bunyi dua nada pendek. Apabila jam penggera dihidupkan, titik dalam digit tertib rendah penunjuk menyala.
Dalam mod "Corr", pemalar pembetulan dipaparkan pada penunjuk, nilai awalnya ialah 5000 mikrosaat sesaat. Apabila jam ketinggalan, kami meningkatkan pemalar dengan jumlah ketinggalan yang dikira dalam mikrosaat sesaat. Sekiranya jam tergesa-gesa, maka kami mengurangkan pemalar mengikut prinsip yang sama.

Skim

Artikel ini menerangkan reka bentuk digital jam pada mikropengawal Attmega8, yang dilengkapi dengan jam randik, jam penggera dan pemasa undur. Jam tangan mempunyai fungsi paparan hari dan tarikh dengan keupayaan untuk memaparkan tarikh dan masa digabungkan. Tersedia pensuisan automatik untuk musim panas dan musim sejuk, serta mengambil kira tahun lompat.

Paparan dibina pada enam 7-segmen Penunjuk LED dengan pelarasan kecerahan. Jam tangan ini juga dilengkapi dengan sandaran bateri.

Penerangan mengenai reka bentuk jam mikropengawal

Seperti yang dinyatakan di atas, jam tangan ini mempunyai paparan enam digit, yang terdiri daripada dua paparan T-5631BUY-11 tiga digit, beroperasi dalam mod multipleks. Anod penunjuk dikumpulkan mengikut kategori dan ditukar menggunakan transistor T1...T6.

Katod dikumpulkan ke dalam segmen dan dikuasakan terus daripada mikropengawal IO1 Attmega8. Kekerapan pemultipleksan ialah 100Hz.

Jam ini dikawal oleh kristal kuarza frekuensi rendah X1 dengan frekuensi 32768 Hz. Dengan mengaktifkan bit CKOPT, yang membolehkan penggunaan kapasitor 36pF dalaman untuk kuarza, tidak perlu menggunakan kapasitor luaran.

Jika anda menghadapi masalah memulakan penjana, anda boleh cuba menyambungkan 2 kapasitor 22pf. Untuk ketepatan jam yang lebih besar, anda boleh mematikan sepenuhnya kapasitor dalaman (menetapkan semula bit CKOPT) dan meninggalkan hanya yang luaran.

Pemancar piezo REP1 mengeluarkan bunyi penggera dan menandakan pemasa tamat. semasa isyarat bunyi Logik 1 muncul pada pin 16 (port PB2). Isyarat ini boleh digunakan untuk mengawal sebarang beban.

Jam tangan dikawal oleh tiga butang - minit, jam dan mod. Butang disambungkan melalui perintang yang melindungi port mikropengawal Attmega8. Litar ini dikuasakan oleh sumber 5 volt (7805). Penggunaan semasa terutamanya bergantung pada bilangan penunjuk aktif, serta pada tahap pelarasan kecerahan.

Pada kecerahan maksimum, penggunaan semasa mencapai 60 mA. Jam tangan dilengkapi bateri sandaran pemakanan. Semasa menggunakan kuasa bateri, jam tangan memasuki mod ekonomi di mana paparan dimatikan. Juga dalam mod ini, butang tidak aktif, kecuali apabila perlu untuk mematikan isyarat bunyi.

voltan kuasa sandaran dari 3 hingga 4.5 V. Ini boleh menjadi satu bateri 3V, tiga bateri NiMH atau NiCd 1.2 V, atau satu Bateri Li-Pol atau Li-Ion (3.6 hingga 3.7 V). Penggunaan semasa daripada bateri 3V hanya 5...12mA. Masa hayat bateri Jam dalam mod ekonomi daripada bateri 3V CR2032 dengan kapasiti standard 200mAh secara teorinya akan bertahan selama kira-kira 2.5 - 3 tahun.

Perisian untuk mikropengawal ada di penghujung artikel. Bit konfigurasi mesti ditetapkan seperti berikut:

Pengurusan jam

Jam dikawal menggunakan mod TL1-minit, jam-TL2 dan TL3. Butang jam dan minit digunakan dalam mod jam untuk menetapkan jam dan minit. Dalam mod lain yang mereka ada pelbagai fungsi. Butang mod bertukar antara pelbagai mod, yang mana terdapat 8 kesemuanya:

Mod 1 - Jam

Dalam mod ini paparan menunjukkan masa semasa dalam format "HH.MM.SS". Butang jam digunakan untuk menetapkan jam. Butang minit untuk menetapkan minit. Apabila ditekan, detik ditetapkan semula.

Mod 2 - Mendayakan masa penjimatan siang dan menetapkan tahun

Di sini anda boleh menghidupkan atau mematikan pertukaran automatik antara masa musim panas dan musim sejuk dan menetapkan tahun. Data format berikut"AC 'RR" (AC - masa automatik, ruang, dua digit terakhir tahun).

Mod 3 - Pemasa undur

Mod ini membolehkan anda mengatur kira detik dari tetapkan nilai kepada sifar. Selepas masa ini berlalu, bip akan berbunyi dan LED1 akan menyala. Bunyi bip boleh dihentikan dengan menekan butang Mod. Data adalah dalam format berikut: "HH.MM.SS". Nilai maksimum yang mungkin ialah 99.59.59 (hampir 100 jam).

Mod 4 – Output maklumat gabungan

Dalam mod ini, yang berikut dipaparkan secara bergilir-gilir:

  1. masa semasa dalam format "HH.MM.SS"
  2. tarikh dalam format "AA.DD.MM."

Setiap format dipaparkan selama 1 saat. Dalam mod ini, butang Jam dan Minit digunakan untuk melaraskan kecerahan paparan (Jam-, Minit+). Kecerahan berubah secara logaritma dalam 6 langkah: 1/1, 1/2, 1/4, 1/8, 1/16 dan 1/32. Lalai ialah 1/2

Mod 5 - Menetapkan hari dalam minggu dan mod penggera

Dalam mod ini, anda boleh menetapkan hari dalam seminggu - dari Isnin hingga Ahad (dipaparkan sebagai Isn, Sel, Rab, Kha, Jum, Sab, Ahad), hidupkan penggera dan pilih mod pengendaliannya. Data adalah dalam format berikut: “AA AL._” (hari dalam minggu, ruang, AL., tetapan penggera).

Butang jam menetapkan hari dalam seminggu. Butang minit digunakan untuk menghidupkan/mematikan bunyi penggera dan memilih mod pengendaliannya: “AL._” = penggera tidak aktif, “AL.1” = penggera berbunyi bip 1 kali (kemudian bertukar secara automatik kepada “AL._” kedudukan), “ AL.5" = penggera berbunyi hanya pada hari bekerja (Isnin-Jumaat, kecuali Sabtu-Ahad), "AL.7" = penggera berdering setiap hari

Mod 6 – Menetapkan hari dalam minggu dan tarikh

Butang jam membolehkan anda menetapkan hari dalam sebulan. Butang minit membolehkan anda menetapkan bulan.

Mod 7 - Jam randik

Jam randik membolehkan anda mengukur masa dengan ketepatan 0.1 saat. Masa pengukuran maksimum ialah 9.59.59.9 (hampir 10 jam). Data adalah dalam format berikut "H.MM.SS.X". Butang minit digunakan untuk memulakan dan menghentikan jam randik. Butang jam digunakan untuk menetapkan semula.

Mod 8 - Jam penggera

Mod ini digunakan untuk memaparkan dan menetapkan masa penggera (ALARM). Data adalah dalam format berikut "HH.MM.AL". Butang Minit menetapkan minit penggera, butang Jam menetapkan jam penggera.

Di bawah ialah gambar rajah jam tangan serupa yang mempunyai penunjuk dengan katod biasa

(muat turun: 765)

Jam penggera ini adalah berdasarkan cip jam masa nyata, yang membolehkan ia beroperasi daripada sumber kuasa sandaran jika tiada yang utama. Tetapkan masa jam penggera dan mod pengendalian disimpan dalam memori tidak meruap mikropengawal. Mod paparan - 24 jam. Mengandungi tiruan "berdetik". Masa dan mod operasi ditunjukkan menggunakan penunjuk LED.

Prinsip operasi

Asas jam ini ialah litar mikro DS1307 - jam masa nyata yang bertukar maklumat dengan pengawal kawalan melalui antara muka I2C. Penunjuk masa dijalankan melalui 4 penunjuk 7-segmen yang beroperasi dalam mod dinamik. Memasuki dan melaraskan masa dilakukan menggunakan 5 butang: "+ minit", "+ jam", "set", "penggera" dan "set semula". Isyarat bunyi jam penggera dikeluarkan melalui pemancar piezo standard dan merupakan isyarat dengan frekuensi 1 kHz dengan jeda kedua.

Atmega48 dipilih sebagai kawalan mikropengawal kerana ketersediaannya dan kehadiran peranti yang diperlukan di atas kapal (walaupun berlebihan). Jam masa nyata DS1307 disambungkan kepada output perkakasan I2C pengawal mikro kawalan. Untuk mengendalikan DS1307 dalam mod bersendirian (sekiranya berlaku kegagalan kuasa pengawal utama), gunakan bateri litium Bekalan kuasa sandaran 3V, yang akan bertahan selama beberapa tahun disebabkan oleh penggunaan kuasa yang rendah litar mikro.

Mari kita lihat lebih dekat pada program kawalan:

Program ini berfungsi berdasarkan prinsip mesin pemasa bendera: semua keadaan dan peristiwa diwakili dalam bentuk bendera yang sepadan, dilaksanakan dalam gangguan pemasa yang sepadan 1s, 1ms dan 263.17ms. Program ini menggunakan 2 pemasa perkakasan.

Cip jam ditinjau dan butang ditekan pada selang 263.17ms. Selang 1ms digunakan untuk menjana isyarat bunyi loceng, dan 1s digunakan untuk memodulasinya. Selang kedua juga mengawal kelipan titik dalam digit ke-2 penunjuk, memisahkan jam dan minit dan juga berfungsi sebagai pembentukan "tanda".
Mari kita pertimbangkan gambarajah skematik Jam.

Jawatan dan denominasi:
S4 - Peningkatan jam
S3 - Tambah minit
S2 - Pemasangan
S1 - Hidupkan penggera
S5 - Tetapkan semula

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

Voltan bekalan - 5 volt.

Persediaan dan penggunaan

Jam tangan yang dipasang dengan betul tetapan tambahan tidak perlu. Anda hanya perlu menetapkan masa dan penggera semasa.
Menetapkan masa semasa adalah seperti berikut:
1) Gunakan butang S1 dan S2 untuk menetapkan masa semasa (titik antara digit tidak berkelip)
2) Mulakan jam dengan butang S3
Menetapkan penggera:
1) Tekan S3 dan pastikan titik dalam digit pertama menyala
2) Tetapkan masa panggilan menggunakan butang S1 dan S2
3) Hidupkan panggilan menggunakan butang S4
Ciri-ciri tambahan:
Hidupkan berdetik - tahan S4 dan tekan S2 sehingga bunyi ciri muncul. Ia dimatikan dengan cara yang sama.
Paparkan minit dan saat - tahan S4 dan tekan S1. Jika anda menekan S3 selepas ini, detik akan ditetapkan semula kepada 00. Kembali - gabungan yang sama.

Foto dan video jam tangan

Jam itu dipasang dalam bekas yang diperbuat daripada "elektronik" yang tidak berfungsi.


Seperti namanya, tujuan utama peranti ini- ketahui masa dan tarikh semasa. Tetapi ia mempunyai banyak lagi fungsi yang berguna. Idea penciptaannya muncul selepas saya terjumpa jam tangan separuh patah dengan jam yang agak besar (untuk pergelangan tangan) badan logam. Saya fikir saya boleh meletakkannya di sana jam tangan buatan sendiri, kemungkinan yang terhad hanya oleh imaginasi dan kemahiran anda sendiri. Hasilnya ialah peranti dengan fungsi berikut:

1. Jam - kalendar:

    Mengira dan memaparkan jam, minit, saat, hari dalam seminggu, hari, bulan, tahun.

    Ketersediaan pelarasan automatik masa semasa, yang dilakukan setiap jam ( nilai maksimum+/-9999 unit, 1 unit. = 3.90625 ms.)

    Mengira hari dalam seminggu dari tarikh (untuk abad semasa)

    Peralihan automatik untuk musim panas dan musim sejuk (boleh dimatikan)

  • Tahun lompat diambil kira

2. Dua jam penggera bebas (melodi berbunyi apabila dicetuskan)
3. Pemasa dengan kenaikan 1 saat. (Masa pengiraan maksimum 99j 59m 59s)
4. Jam randik dua saluran dengan resolusi pengiraan 0.01 saat. ( masa maksimum kiraan 99j 59m 59s)
5. Jam randik dengan resolusi mengira 1 saat. (masa pengiraan maksimum 99 hari)
6. Termometer dalam julat dari -5°C. sehingga 55°C (terhad oleh julat suhu Operasi biasa peranti) dalam kenaikan 0.1°C.
7. Pembaca dan emulator kunci elektronik- tablet jenis DS1990 menggunakan protokol Dallas 1-Wire (memori untuk 50 keping, yang sudah mengandungi beberapa "kunci semua rupa bumi") dengan keupayaan untuk melihat kod kunci bait demi bait.
8. Jauh kawalan pada sinar IR (hanya arahan "Ambil foto" dilaksanakan) untuk kamera digital"Pentax", "Nikon", "Canon"
9. Lampu suluh LED
10. 7 melodi
11. Isyarat bunyi pada awal setiap jam (boleh dimatikan)
12. Pengesahan bunyi penekanan butang (boleh dimatikan)
13. Pemantauan voltan bateri dengan fungsi penentukuran
14. Pelarasan kecerahan penunjuk digital

Mungkin fungsi sedemikian adalah berlebihan, tetapi saya suka perkara universal, dan ditambah dengan kepuasan moral bahawa jam tangan ini akan dibuat dengan tangan saya sendiri.

Gambarajah skematik jam

Peranti ini dibina pada mikropengawal ATmega168PA-AU. Jam berdetik mengikut pemasa T2, beroperasi dalam mod tak segerak daripada kuarza jam pada 32768 Hz. Mikropengawal berada dalam mod tidur hampir sepanjang masa (penunjuk dimatikan), bangun sekali sesaat untuk menambah detik ini pada masa semasa dan tertidur semula. Dalam mod aktif, MK dicatatkan daripada pengayun RC dalaman pada 8 MHz, tetapi prascaler dalaman membahagikannya dengan 2, akibatnya, teras diclock pada 4 MHz. Untuk petunjuk, empat penunjuk tujuh segmen digital LED satu digit dengan anod sepunya dan titik perpuluhan digunakan. Terdapat juga 7 status LED, tujuannya adalah seperti berikut:
D1- Tanda nilai negatif (tolak)
D2- Tanda jam randik yang sedang berjalan (berkelip)
D3- Tanda penggera pertama dihidupkan
D4- Tanda penggera kedua dihidupkan
D5- Tanda isyarat bunyi pada awal setiap jam
D6- Tanda pemasa berjalan (berkelip)
D7- Tandatangan voltan rendah bateri kuasa

R1-R8 - perintang pengehad arus bagi segmen penunjuk digital HG1-HG4 dan LED D1-D7. R12,R13 – pembahagi untuk memantau voltan bateri. Oleh kerana voltan bekalan jam ialah 3V, dan LED putih D9 memerlukan kira-kira 3.4-3.8V pada penggunaan arus undian, ia tidak bersinar pada kekuatan penuh (tetapi ia cukup untuk tidak tersandung dalam gelap) dan oleh itu disambungkan tanpa perintang mengehadkan arus. Elemen R14, Q1, R10 direka untuk mengawal D8 LED inframerah (pelaksanaan alat kawalan jauh untuk kamera digital). R19, ​​​​R20, R21 digunakan untuk berpasangan apabila berkomunikasi dengan peranti yang mempunyai antara muka 1-Wayar. Kawalan dijalankan oleh tiga butang, yang saya panggil secara konvensional: MOD (mod), UP (atas), BAWAH (bawah). Yang pertama daripada mereka juga direka bentuk untuk membangunkan MK dengan gangguan luaran (dalam kes ini petunjuk dihidupkan), jadi ia disambungkan secara berasingan ke input PD3. Penekanan butang yang tinggal ditentukan menggunakan ADC dan perintang R16, R18. Jika butang tidak ditekan dalam masa 16 saat, MK akan tidur dan penunjuk padam. Apabila dalam mod “Kawalan jauh untuk kamera” selang ini ialah 32 saat, dan dengan lampu suluh dihidupkan - 1 minit. MK juga boleh ditidurkan secara manual menggunakan butang kawalan. Apabila jam randik berjalan dengan resolusi kiraan 0.01 saat. Peranti tidak masuk ke mod tidur.

Papan litar bercetak

Peranti dipasang pada papan litar bercetak dua muka berbentuk bulat mengikut saiz diameter dalaman kes itu jam tangan. Tetapi dalam pengeluaran saya menggunakan dua papan satu sisi dengan ketebalan 0.35 mm. Ketebalan ini sekali lagi diperoleh dengan mengelupasnya daripada lamina gentian kaca dua muka dengan ketebalan 1.5 mm. Papan itu kemudiannya dilekatkan bersama. Semua ini dilakukan kerana saya tidak mempunyai gentian kaca dua sisi yang nipis, dan setiap milimeter ketebalan yang disimpan dalam ruang dalaman terhad kotak jam tangan adalah sangat berharga, dan tidak ada keperluan untuk penjajaran dalam pembuatan konduktor bercetak menggunakan LUT kaedah. Melukis papan litar bercetak dan lokasi bahagian adalah dalam fail yang dilampirkan. Di satu sisi terdapat penunjuk dan perintang pembatas arus R1-R8. Di belakang adalah semua butiran lain. Terdapat dua lubang melalui untuk LED putih dan inframerah.

Sesentuh butang dan pemegang bateri diperbuat daripada keluli kepingan spring fleksibel dengan ketebalan 0.2...0.3 mm. dan tin. Di bawah adalah gambar papan dari kedua-dua belah pihak:

Reka bentuk, bahagian dan kemungkinan penggantiannya

Mikropengawal ATmega168PA-AU boleh digantikan dengan ATmega168P-AU, ATmega168V-10AU ATmega168-20AU. Penunjuk digital- 4 keping KPSA02-105 cahaya merah sangat terang dengan ketinggian digit 5.08mm. Boleh dibekalkan daripada siri yang sama KPSA02-xxx atau KCSA02-xxx. (hanya bukan yang hijau - mereka akan bercahaya samar-samar) Saya tidak mengetahui analog lain yang mempunyai saiz yang sama dengan kecerahan yang baik. Dalam HG1, HG3, sambungan segmen katod berbeza daripada HG2, HG4, kerana ia lebih mudah bagi saya untuk pendawaian papan litar bercetak. Dalam hal ini, jadual penjana aksara yang berbeza digunakan untuk mereka dalam program ini. Perintang dan kapasitor terpakai SMD untuk pemasangan permukaan saiz standard 0805 dan 1206, LED D1-D7 saiz standard 0805. LED putih dan inframerah dengan diameter 3 mm. Papan mempunyai 13 lubang melalui mana pelompat mesti dipasang. Sebagai Pengesan suhu DS18B20 dengan antara muka 1-Wayar digunakan. LS1 ialah tweeter piezoelektrik biasa, dimasukkan ke dalam penutup. Dengan satu sentuhan ia disambungkan ke papan menggunakan spring yang dipasang di atasnya, dengan yang lain ia disambungkan ke badan jam tangan dengan penutup itu sendiri. Resonator kuarza daripada jam tangan.

Pengaturcaraan, perisian tegar, fius

Untuk pengaturcaraan dalam litar, papan hanya mempunyai 6 titik sentuhan bulat (J1), kerana penyambung penuh tidak sesuai dengan ketinggian. Saya menyambungkannya kepada pengaturcara menggunakan peranti kenalan yang diperbuat daripada palam pin PLD2x3 dan pegas yang dipateri padanya, menekannya dengan satu tangan ke bintik-bintik. Di bawah ialah foto peranti.

Saya menggunakannya kerana semasa proses penyahpepijatan saya terpaksa mengemas semula MK berkali-kali. Apabila memasang perisian tegar sekali, lebih mudah untuk menyolder wayar nipis yang disambungkan kepada pengaturcara ke patch, dan kemudian menyahpaterinya semula. Ia lebih mudah untuk menyalakan MK tanpa bateri, tetapi supaya kuasa datang sama ada dari sumber luar+3V, atau daripada pengaturcara dengan voltan bekalan yang sama. Program ini ditulis dalam pemasang dalam persekitaran VMLAB 3.15. Kod sumber, perisian tegar untuk FLASH dan EEPROM dalam aplikasi.

Bit FUSE mikropengawal DD1 mesti diprogramkan seperti berikut:
CKSEL3...0 = 0010 - masa dari pengayun RC dalaman 8 MHz;
SUT1...0 =10 - Masa mula: 6 CK + 64 ms;
CKDIV8 = 1 - pembahagi kekerapan sebanyak 8 dinyahdayakan;
CKOUT = 1 - Jam Output pada CKOUT dinyahdayakan;
BODLEVEL2…0 = 111 - kawalan voltan bekalan dinyahdayakan;
EESAVE = 0 - memadam EEPROM apabila pengaturcaraan kristal adalah dilarang;
WDTON = 1 - No sentiasa hidup Pemasa Anjing Pemerhati;
Bit FUSE yang tinggal sebaiknya dibiarkan tanpa disentuh. Bit FUSE diprogramkan jika ditetapkan kepada "0".

Memerlukan EEPROM dengan tempat pembuangan yang disertakan dalam arkib.

Sel EEPROM pertama mengandungi parameter awal peranti. Jadual di bawah menerangkan tujuan sesetengah daripadanya, yang boleh diubah dalam had yang munasabah.

Alamat sel

Tujuan

Parameter

Catatan

Jumlah voltan bateri di mana isyarat tahap rendah berlaku

260 ($104) (2.6V)

pekali untuk membetulkan nilai voltan bateri yang diukur

selang masa untuk bertukar kepada mod tidur

1 unit = 1 saat

selang masa untuk bertukar kepada mod tidur apabila lampu suluh dihidupkan

1 unit = 1 saat

selang masa untuk bertukar kepada mod tidur apabila dalam mod kawalan jauh untuk kamera

1 unit = 1 saat

Nombor kunci IButton disimpan di sini

Penjelasan kecil tentang perkara:

1 mata. Ini menunjukkan tahap voltan pada bateri di mana LED akan menyala, menunjukkan nilainya rendah. Saya menetapkannya kepada 2.6V (parameter - 260). Jika anda memerlukan sesuatu yang lain, contohnya 2.4V, maka anda perlu menulis 240 ($00F0). Bait rendah disimpan dalam sel pada alamat $0000 dan bait tinggi disimpan dalam $0001.

2 mata. Memandangkan saya tidak memasang perintang boleh ubah pada papan untuk melaraskan ketepatan pengukuran voltan bateri kerana kekurangan ruang, saya memperkenalkan penentukuran perisian. Prosedur penentukuran untuk ukuran yang tepat seterusnya: pada mulanya, pekali 1024 ($400) ditulis dalam sel EEPROM ini, anda perlu menukar peranti ke mod aktif dan melihat voltan pada penunjuk, dan kemudian mengukur voltan sebenar pada bateri dengan voltmeter. Faktor pembetulan (K), yang mesti ditetapkan, dikira dengan formula: K=Uр/Ui*1024 di mana Uр ialah voltan sebenar yang diukur oleh voltmeter, Ui ialah voltan yang diukur oleh peranti itu sendiri. Selepas mengira pekali "K", ia dimasukkan ke dalam peranti (seperti yang dinyatakan dalam arahan pengendalian). Selepas penentukuran, ralat saya tidak melebihi 3%.

3 mata. Di sini anda boleh menetapkan masa selepas itu peranti akan masuk ke mod tidur jika tiada butang ditekan. Tambang berharga 16 saat. Jika, sebagai contoh, anda perlu tertidur dalam 30 saat, maka anda perlu menulis 30 ($26).

Dalam mata 4 dan 5 sama.

6 mata. Di alamat $0030 kod keluarga kunci sifar (Dallas 1-Wire) disimpan, kemudian nombor 48-bit dan CRCnya. Dan seterusnya 50 kekunci dalam urutan.

Persediaan, ciri pengendalian

Penyediaan peranti adalah untuk menentukur pengukuran voltan bateri, seperti yang diterangkan di atas. Ia juga perlu untuk mengesan sisihan kadar jam selama 1 jam, mengira dan masukkan nilai pembetulan yang sesuai (prosedur diterangkan dalam arahan operasi).

Peranti ini dikuasakan oleh bateri litium CR2032 (3V) dan menggunakan kira-kira 4 µA dalam mod tidur, dan 5...20 mA dalam mod aktif, bergantung pada kecerahan penunjuk. Dengan penggunaan lima minit setiap hari mod aktif Bateri harus bertahan lebih kurang 2...8 bulan bergantung pada kecerahan. Bekas jam tangan disambungkan kepada negatif bateri.

Bacaan utama telah diuji pada DS1990. Emulasi telah diuji pada interkom METAKOM. Di bawah nombor siri dari 46 hingga 49 (4 terakhir) dinyalakan (semua kekunci disimpan dalam EEPROM, ia boleh ditukar sebelum berkelip) kekunci universal untuk interkom. Kunci yang didaftarkan di bawah nombor 49 membuka semua interkom METAKOM yang saya temui, saya tidak mempunyai peluang untuk menguji kunci universal yang lain, saya mengambil kod mereka dari rangkaian.

Alat kawalan jauh untuk kamera telah diuji pada model Pentax optio L20 dan Nikon D3000. Canon tidak dapat diperoleh untuk semakan.

Manual pengguna mengandungi 13 halaman, jadi saya tidak memasukkannya ke dalam artikel, tetapi memasukkannya ke dalam lampiran dalam format PDF.

Arkib mengandungi:
Skim masuk dan GIF;
Lukisan papan litar bercetak dan susunan elemen dalam format;
Perisian tegar dan kod sumber dalam pemasang;

Senarai unsur radio

Jawatan taip Denominasi Kuantiti Catatankedaipad nota saya
DD1 MK AVR 8-bit

ATMega168PA

1 PA-AU Ke pad nota
U2 Pengesan suhu

DS18B20

1 Ke pad nota
S1 transistor MOSFET

2N7002

1 Ke pad nota
C1, C2 Kapasitor30 pF2 Ke pad nota
C3, C4 Kapasitor0.1 µF2 Ke pad nota
C5 Kapasitor elektrolitik47 µF1 Ke pad nota
R1-R8, R17 Perintang

100 Ohm

9 Ke pad nota
R9 Perintang

10 kOhm

1 Ke pad nota
R10 Perintang

8.2 Ohm

1 Ke pad nota
R11 Perintang

300 Ohm

1 Ke pad nota
R12 Perintang

2 MOhm

1 Ke pad nota
R13 Perintang

220 kOhm

1 Ke pad nota
R14 Perintang

30 kOhm

1 Ke pad nota
R15, R19 Perintang

4.7 kOhm

2 Ke pad nota
R16 Perintang

20 kOhm

1

Gambar rajah litar elektrik

Satu peranti menggabungkan dua fungsi: ukuran sebenar suhu dan masa (jam). Paparan dilakukan secara bergilir-gilir, berubah setiap sepuluh saat. Untuk menetapkan jam, dua butang digunakan, serupa dengan jam elektronik Cina yang mudah: satu bertanggungjawab untuk memilih parameter, yang kedua untuk menukarnya. Peranti dikuasakan daripada rangkaian menggunakan sumber arus stabil yang malar dengan voltan lima volt (papan dari pengecas telefon).

Penderia suhu ialah cip DS18B20. Memandangkan peranti Jam-Termometer tidak mempunyai bateri sendiri, jika kuasa hilang, bacaan akan hilang secara semula jadi. Dan supaya ini tidak menyebabkan seseorang terlewat untuk urusan penting, terdapat "helah" yang menarik - apabila kuasa digunakan, sengkang akan dipaparkan pada paparan dan bukannya masa sehingga anda menekan salah satu daripada dua butang tetapan.

Badan meter suhu buatan sendiri adalah kotak manset yang sesuai. Papan termometer jam itu sendiri dan papan yang dikeluarkan dari pengecas telefon diletakkan di dalamnya. Sensor DS18B20 dibuat jauh dan disambungkan melalui penyambung.

Senarai bahagian yang diperlukan

  • Pengawal mikro Atmega8 - 1 pc.
  • Kuarza 32768 Hz - 1 pc.
  • Penderia suhu DS18B20 - 1 pc.
  • Penunjuk tujuh segmen (4 digit) - 1 pc.
  • Saiz perintang SMD 0805:
  • 620 Ohm - 8 keping.
  • 0 Ohm (jumper) - 1 pc.
  • 4.7 kOhm - 1 pc.
  • Butang kebijaksanaan - 2 pcs.

Video peranti pada saluran YouTube