Gambar rajah jam tangan elektronik DIY. Jam tangan DIY dengan paparan LED

Dengan paparan dinamik. Tiada aduan tentang pengendalian jam tangan: pergerakan tepat, tetapan yang mudah. Tetapi satu kelemahan besar ialah penunjuk LED sukar dilihat pada waktu siang. Untuk menyelesaikan masalah, saya beralih kepada paparan statik dan banyak lagi LED terang. Seperti biasa dalam perisian Terima kasih banyak Soir. Secara umum, saya membawa kepada perhatian anda jam luar yang besar dengan paparan statik; fungsi tetapan tetap sama seperti pada jam sebelumnya.

Ia mempunyai dua paparan - yang utama (di luar di jalan) dan yang tambahan pada penunjuk - di dalam rumah, pada badan peranti. Kecerahan tinggi dicapai dengan menggunakan LED ultra-terang, dengan arus operasi 50mA, dan cip pemacu.

Skim jam elektronik luar dengan LED terang

Untuk menyalakan perisian tegar pengawal dengan fail dan gunakan tetapan fius berikut:

Papan litar bercetak jam, unit kawalan dan modul luaran, dalam format LAY, .


Ciri-ciri litar jam ini:

- Format paparan masa 24 jam.
- Pembetulan digital ketepatan strok.
- Kawalan terbina dalam bekalan kuasa utama.
- Memori mikropengawal tidak meruap.
- Terdapat termometer yang mengukur suhu dalam julat -55 - 125 darjah.
- Adalah mungkin untuk memaparkan maklumat tentang masa dan suhu secara bergantian pada penunjuk.


Menekan butang SET_TIME menggerakkan penunjuk dalam bulatan daripada mod jam utama (memaparkan masa semasa). Dalam semua mod, menahan butang PLUS/MINUS melakukan pemasangan dipercepatkan. Tetapan berubah selepas 10 saat dari peluang terakhir nilai akan ditulis ke memori tidak meruap (EEPROM) dan akan dibaca dari sana apabila mula semula pemakanan.


Satu lagi kelebihan besar pilihan yang dicadangkan ialah kecerahan telah berubah, kini dalam cuaca cerah kecerahannya sangat baik. Bilangan wayar telah berkurangan daripada 14 kepada 5. Panjang wayar ke paparan utama (luar) ialah 20 meter. Saya berpuas hati dengan prestasi jam tangan elektronik; ia ternyata jam tangan yang berfungsi sepenuhnya - siang dan malam. Yang ikhlas, Soir-Alexandrovich.

Jam dari Lampu latar LED dan jarum minit berdenyut Pengawal mikro Arduino
Jam tangan unik dengan lampu latar LED dan jarum minit berdenyut ini dibuat menggunakan cip pengawal TLC5940 PWM. miliknya tugas utama adalah untuk mengembangkan bilangan kenalan dengan modulasi PWM. Satu lagi ciri jam tangan ini ialah ia telah menukar voltmeter analog kepada peranti yang mengukur minit. Untuk melakukan ini, skala baharu telah dicetak pada pencetak standard dan ditampal di atas yang lama. Oleh itu, minit ke-5 tidak dikira, cuma pada minit kelima pembilang masa menunjukkan anak panah menunjuk ke hujung skala (luar skala). Kawalan utama dilaksanakan pada mikropengawal Arduino Uno.

Untuk memastikan lampu latar jam tidak menyala terlalu terang di dalam bilik gelap, litar telah dilaksanakan untuk melaraskan kecerahan secara automatik bergantung pada pencahayaan (fotoperintang telah digunakan).

Langkah 1: Komponen yang Diperlukan



Inilah yang anda perlukan:

  • Modul voltmeter analog 5V DC;
  • Pengawal mikro Arduino UNO atau Arduino lain yang sesuai;
  • perhimpunan Papan Arduino(papan proto);
  • Modul DS1307 Jam Masa Nyata (RTC);
  • Modul dengan pengawal PWM TLC5940;
  • Lampu latar LED kelopak - 12 pcs.;
  • Komponen untuk memasang litar peraturan automatik kecerahan (LDR).

Juga, untuk pengeluaran beberapa komponen lain projek, adalah wajar untuk mempunyai akses kepada pencetak 3D dan mesin pemotong laser. Diandaikan bahawa anda mempunyai akses ini, jadi arahan akan merangkumi lukisan pembuatan pada peringkat yang sesuai.

Langkah 2: Dail




Dail terdiri daripada tiga bahagian (lapisan) yang dipotong pada mesin pemotong laser daripada kepingan MDF 3 mm, yang diikat bersama dengan bolt. Plat tanpa slot (kanan bawah dalam gambar) diletakkan di bawah plat lain untuk meletakkan LED (kiri bawah). Kemudian, LED individu diletakkan di dalam slot yang sesuai, dan panel hadapan(atas dalam gambar). Empat lubang digerudi di sepanjang tepi dail, di mana ketiga-tiga bahagian diikat bersama.

  • Untuk menguji prestasi LED pada peringkat ini, bateri sel syiling CR2032 telah digunakan;
  • Untuk mengamankan LED, jalur kecil pita pelekat digunakan, yang dilekatkan pada bahagian belakang LED;
  • Semua kaki LED telah dibengkokkan dengan sewajarnya;
  • Lubang-lubang di sepanjang tepi telah digerudi semula, di mana bolting dilakukan. Ternyata ini lebih mudah.

Lukisan teknikal bahagian dail boleh didapati di:

Langkah 3: Reka bentuk litar



Pada peringkat ini ia dibangunkan gambarajah elektrik. Pelbagai buku teks dan panduan telah digunakan untuk tujuan ini. Kami tidak akan mendalami proses ini; dua fail di bawah menunjukkan litar elektrik siap yang digunakan dalam projek ini.

Langkah 4: Menyambung Papan Litar Arduino





  1. Langkah pertama ialah menyahpateri semua sesentuh jarum pada papan litar dan papan keratan;
  2. Selanjutnya, disebabkan oleh fakta bahawa kuasa 5V dan GND digunakan oleh begitu banyak papan dan peranti persisian, untuk kebolehpercayaan, dua wayar untuk 5V dan GND telah dipateri pada papan litar;
  3. Seterusnya, pengawal TLC5940 PWM dipasang di sebelah kenalan yang digunakan;
  4. Kemudian pengawal TLC5940 disambungkan mengikut rajah sambungan;
  5. Untuk dapat menggunakan bateri, modul RTC telah dipasang di tepi papan litar. Jika anda menyoldernya di tengah papan, tanda pin tidak akan kelihatan;
  6. Modul RTC telah disambungkan mengikut gambarajah sambungan;
  7. Litar kawalan kecerahan automatik (LDR) telah dipasang, anda boleh melihatnya di pautan
  8. Wayar untuk voltmeter disambungkan dengan menyambung wayar ke pin 6 dan GND.
  9. Pada akhirnya, 13 wayar untuk LED telah dipateri (Dalam praktiknya, ternyata lebih baik untuk melakukan ini sebelum meneruskan ke langkah 3).

Langkah 5: Kod

Kod di bawah telah disusun daripada pelbagai bahagian komponen jam yang terdapat di Internet. Ia telah dinyahpepijat sepenuhnya dan kini berfungsi sepenuhnya, dan beberapa komen yang cukup terperinci telah ditambah. Tetapi sebelum memuatkan ke dalam mikropengawal, pertimbangkan perkara berikut:

  • Sebelum ini Perisian tegar Arduino, anda perlu menyahkomen baris yang menetapkan masa:
    rtc.adjust(DateTime(__DATE__, __TIME__))
    Selepas menyalakan pengawal dengan baris ini (masa ditetapkan), anda perlu mengulasnya sekali lagi dan memancarkan pengawal sekali lagi. Ini membenarkan modul RTC Gunakan bateri untuk mengingati masa jika kuasa utama padam.
  • Setiap kali anda menggunakan "Tlc.set()" anda perlu menggunakan "Tlc.update"

Langkah 6: Lingkaran Luar

Cincin jam tangan luar dicetak 3D menggunakan pencetak Replicator Z18. Ia melekat pada jam tangan menggunakan skru pada muka jam. Di bawah ialah fail dengan model 3D cincin untuk dicetak pada pencetak 3D.

Langkah 7: Memasang Jam


Pengawal mikro Arduino dengan semua elektronik lain diikat ke belakang jam menggunakan skru dan nat sebagai pengatur jarak. Kemudian saya menyambungkan semua LED, voltmeter analog dan LDR ke wayar yang sebelum ini dipateri ke papan litar. Semua LED disambungkan dengan satu kaki dan disambungkan ke pin VCC pada pengawal TLC5940 (sekeping wayar hanya dipateri dalam bulatan).

Walaupun semua ini tidak diasingkan dengan baik litar pintas, tetapi usaha untuk ini akan diteruskan dalam versi akan datang.

Saya sampaikan kepada anda elektronik jam mikropengawal. Litar jam adalah sangat mudah, mengandungi minimum bahagian, dan boleh diulang dengan memulakan radio amatur.

Reka bentuk dipasang pada mikropengawal dan jam masa nyata DS1307. Penunjuk tujuh segmen empat digit digunakan sebagai penunjuk masa semasa. penunjuk yang dipimpin(sangat terang, warna biru cahaya, yang kelihatan baik dalam gelap, dan, pada masa yang sama, jam memainkan peranan sebagai lampu malam). Jam dikawal oleh dua butang. Terima kasih kepada penggunaan cip jam masa nyata DS1307, algoritma program ternyata agak mudah. Pengawal mikro berkomunikasi dengan jam masa nyata melalui bas I2C, dan dianjurkan oleh perisian.

Gambar rajah jam:

Malangnya, terdapat ralat dalam rajah:
— terminal MK perlu disambungkan ke pangkalan transistor:
РВ0 hingga Т4, РВ1 hingga Т3, РВ2 hingga Т2, РВ3 hingga Т1
atau tukar sambungan pengumpul transistor kepada digit penunjuk:
T1 kepada DP1….. T4 kepada DP4

Bahagian yang digunakan dalam litar jam:

♦ Mikropengawal ATTiny26:

♦ jam masa nyata DS1307:

♦ Penunjuk LED tujuh segmen 4 digit – FYQ-5641UB-21 dengan katod biasa (sangat terang, biru):

♦ kuarza 32.768 kHz, dengan kapasiti input 12.5 pF (boleh diambil dari papan induk komputer), ketepatan jam bergantung pada kuarza ini:

♦ semua transistor adalah struktur NPN, anda boleh menggunakan mana-mana (KT3102, KT315 dan analog asingnya), saya menggunakan BC547S
♦ penstabil voltan litar mikro jenis 7805
♦ semua perintang dengan kuasa 0.125 watt
kapasitor kutub pada voltan operasi tidak lebih rendah daripada voltan bekalan
♦ kuasa sandaran DS1307 – 3 volt sel litium CR2032

Anda boleh menggunakan sebarang pengecas yang tidak diperlukan untuk menghidupkan jam tangan anda. telefon bimbit(dalam kes ini, jika voltan keluaran pengecas dalam 5 volt ± 0.5 volt, sebahagian daripada litar adalah penstabil voltan pada litar mikro jenis 7805, boleh dikecualikan)
Penggunaan semasa peranti ialah 30 mA.
Bateri kuasa sandaran Anda tidak perlu menetapkan jam DS1307, tetapi kemudian, jika kuasa sesalur padam, masa semasa perlu dipasang semula.
Papan litar bercetak peranti tidak ditunjukkan; reka bentuk telah dipasang dalam perumah kerana rosak jam mekanikal. LED (dengan frekuensi berkelip 1 Hz, dari pin SQW DS1307) berfungsi untuk memisahkan jam dan minit pada penunjuk.

Tetapan mikropengawal kilang: kekerapan jam— 1 MHz, bit FUSE tidak perlu disentuh.

Algoritma operasi jam(dalam Pembina Algoritma):

1. Menetapkan penuding tindanan
2. Menetapkan pemasa T0:
— kekerapan SK/8
- gangguan limpahan (pada frekuensi pratetap ini, gangguan dipanggil setiap 2 milisaat)
3. Permulaan port (pin PA0-6 dan PB0-3 dikonfigurasikan sebagai output, PA7 dan PB6 sebagai input)
4. Permulaan bas I2C (pin PB4 dan PB5)
5. Menyemak bit ke-7 (CH) sifar daftar DS1307
6. Gangguan global membolehkan
7. Memasuki gelung dan menyemak sama ada butang ditekan

Apabila dihidupkan buat kali pertama, atau dihidupkan semula tanpa ketiadaan kuasa sandaran, DS307 masuk ke pemasangan awal masa semasa. Dalam kes ini: butang S1 – untuk menetapkan masa, butang S2 – beralih ke digit seterusnya. Tetapkan masa– jam dan minit ditulis kepada DS1307 (saat ditetapkan kepada sifar), dan pin SQW/OUT (pin ke-7) dikonfigurasikan untuk menjana denyutan segi empat tepat dengan frekuensi 1 Hz.
Apabila anda menekan butang S2 (S4 - dalam program), gangguan global dilumpuhkan, program masuk ke subrutin pembetulan masa. Dalam kes ini, menggunakan butang S1 dan S2, puluhan dan unit minit ditetapkan, kemudian, dari 0 saat, menekan butang S2 merekodkan masa dikemas kini dalam DS1307, menyelesaikan gangguan global dan kembali ke program utama.

Jam menunjukkan ketepatan yang baik kemajuan, kehilangan masa sebulan - 3 saat.
Untuk meningkatkan ketepatan, disyorkan untuk menyambungkan kuarza ke DS1307, seperti yang ditunjukkan dalam lembaran data:

Program ini ditulis dalam persekitaran Pembina Algoritma.
Menggunakan program jam sebagai contoh, anda boleh membiasakan diri dengan algoritma untuk berkomunikasi antara mikropengawal dan peranti lain melalui bas I2C (setiap baris diulas secara terperinci dalam algoritma).

Foto peranti yang dipasang dan papan litar bercetak dalam format .lay daripada pembaca tapak Anatoly Pilguk, yang mengucapkan ribuan terima kasih kepadanya!

Peranti menggunakan: Transistor - SMD BC847 dan perintang CHIP

Lampiran pada artikel:

(42.9 KiB, 3,038 hits)

(6.3 KiB, 4,058 hits)

(3.1 KiB, 2,500 hits)

(312.1 KiB, 5,833 hits)


Versi kedua program jam dalam AB (bagi mereka yang tidak boleh memuat turun yang atas)

(11.4 KiB, 1,842 hits)

LED jam ringkas boleh dilakukan pada pengawal PIC16F628A yang murah. Sudah tentu, kedai-kedai itu penuh dengan pelbagai jam tangan elektronik, tetapi fungsinya mungkin tidak mempunyai termometer atau jam penggera, atau mungkin tidak bersinar dalam gelap. Dan secara umum, kadang-kadang anda hanya mahu memateri sesuatu sendiri, dan bukannya membeli yang sudah siap. Klik untuk membesarkan gambar rajah.

Jam tangan yang ditawarkan mempunyai kalendar. Ia mempunyai dua pilihan untuk memaparkan tarikh - bulan sebagai nombor atau suku kata, semua ini dikonfigurasikan selepas memasukkan tarikh dengan beralih lebih jauh dengan butang S1 semasa paparan parameter yang diperlukan, termometer. terdapat firmware untuk sensor yang berbeza. Lihat peranti di dalam sarung:


Semua orang tahu bahawa resonator kuarza tidak sesuai dalam ketepatan, dan dalam beberapa minggu ralat terkumpul. Untuk memerangi isu ini, jam tangan mempunyai pembetulan kadar, yang ditetapkan oleh parameter SH Dan SL. Maklumat lanjut:

SH=42 dan SL=40 ke hadapan sebanyak 5 minit setiap hari;
SH=46 dan SL=40 ke belakang sebanyak 3 minit sehari;
SH=40 dan SL=40 ke hadapan sebanyak 2 minit setiap hari;
SH=45 dan SL=40 ke belakang sebanyak 1 minit setiap hari;
SH=44 dan SL=С0 - ini ke hadapan sebanyak 1 minit setiap hari;
SH=45 dan SL=00 - pembetulan ini dilumpuhkan.

Dengan cara ini anda boleh mencapai ketepatan yang sempurna. Walaupun anda perlu melaraskan pembetulan beberapa kali sehingga ia ditetapkan dengan sempurna. Dan kini operasi jam elektronik ditunjukkan dengan jelas:

suhu 29 darjah celcius

Sebagai penunjuk, anda boleh menggunakan sama ada pemasangan dail LED, yang ditunjukkan dalam rajah itu sendiri, atau menggantikannya dengan LED super terang bulat biasa - maka jam ini akan kelihatan dari jauh dan boleh digantung walaupun di jalan.

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 dari 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 jam penggera pertama dihidupkan
D4- Tanda penggera kedua dihidupkan
D5- Penunjuk suapan 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 dengan saiz diameter dalam bekas 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 pengendalian).

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