» Elektronik » Arduino »Jam tangan pada Attiny85 dengan skrin Oled

Jam tangan pada Attiny85 dengan skrin OLED

Jam tangan pada Attiny85 dengan skrin OLED


Sudah petang, hari ini saya mahu berkongsi arahan mengenai membuat jam tangan berdasarkan Attiny 85 dengan paparan Oled. Ciri-ciri jam tangan saya tidak terhad kepada jam tangan saya. Mereka juga boleh digunakan sebagai desktop, dan anda juga boleh menghancurkan sensor suhu digital.

Untuk membuat buatan sendiri kita perlu:

- tali sintetik (sebarang warna)
- Velcro untuk pakaian
- Digispark Attiny85
- Paparan Oled dengan resolusi 128x64, I2C
- ds18b20 - sensor suhu digital (pilihan)
- Resistor 4.7 Kom 0.25 W
- Arduino Digispark papan firmware Attiny85 (programmer ISP)
- Lembaran plastik nipis
- Wayar berwarna
- Dupont 2.54 mm penyambung "wanita"
- Butang 2 pcs.
- Papan litar kecil atau sekeping papan litar kecil
- Pematerian besi, solder, rosin
- Thread, jarum, gunting
- pisau perkeranian
- Gun gam panas
- Gam panas
- Pita bermuka dua

Langkah 1 Menyediakan tali pinggang.
Anda boleh membeli tali di mana-mana kedai kerja. Pilih tali 25 mm lebar. Mana-mana warna. Kami memerlukan jalur kira-kira 50 cm. Lipat tali kami separuh dan menjahit di sepanjang tepi. Kemudian di tengah tali kita membuat slot, tetapi hanya di salah satu bahagian. Tarik Velcro dari hujung tali.

Masukkan benang dengan jarum ke tepi dan ambil seterika pematerian.

Langkah 2 Sediakan paparan papan dan OLED.
"Otak" jam tangan kami akan menjadi pengawal Digispark Attiny85. Mereka boleh didapati dalam beberapa versi. Anda perlu membeli papan dengan penyambung Mikro USB. Versi lain lembaga tidak akan sesuai dengan kes menonton.

Jika anda membeli papan dengan kenalan yang dipateri, anda harus terlebih dahulu menjualnya. Kemudian kita mengambil wayar warna yang berbeza, kita memerlukan 9 warna yang berbeza. Potong kira-kira 15 cm dari setiap wayar, peluk dan solder ke Attiny85. Dengan serta-merta ia perlu menuliskan kawat yang mana pin itu disolder supaya tidak keliru kemudian.

Dalam kes saya, wayar dengan warna kelihatan seperti ini:

PB0 MOSI - Kuning
PB1 MISO - Blue
PB2 CSK - Blue
PB3 - Ungu
PB4 - Putih
PB5 NRES - Grey
GND - hitam
+5 - merah
Vin - Orange

Warna wayar anda mungkin berbeza-beza, perkara utama adalah menulisnya.

Mari kita pergi ke skrin. Kami akan menggunakan paparan berleher. Resolusi skrin 128x64, berfungsi pada bas I2C. Dijual ada skrin warna yang berbeza: putih, biru, biru dengan kuning. Berhati-hati! Perkataan "dua warna" dalam keterangan dan tajuk skrin ini menunjukkan kehadiran jalur warna yang berbeza dari yang utama di bahagian atas skrin, dan bukan keupayaan untuk memaparkan dua warna dengan skrin ini! Semua skrin jenis ini memaparkan hanya satu warna, atau di atas satu jalur satu warna, di bahagian bawah yang lain. Saya suka skrin biru, dengan bar kuning di bahagian atas. Warna tidak memainkan peranan khas, memilih mana yang anda suka. Seperti Attiny85, jika anda membeli skrin dengan kenalan yang dipateri, anda harus terlebih dahulu menjualnya.


Di bahagian belakang skrin anda perlu memasang wayar kecil. Adalah lebih baik menggunakan wayar dengan warna yang sama seperti Attiny85, supaya tidak mengelirukan kemudian. Dalam kes saya, saya menyolder wayar kuning ke SDA skrin, ke SCL - biru, GND - hitam, VCC - merah.


Pada pita bermuka dua kami melampirkan Attiny85 ke bahagian belakang skrin Oled. Attiny85 tidak boleh melampaui papan skrin Oled.


Kami solder Attiny85 dan Oled bersama-sama.

PB0 MOSI Attiny85 - Kuning - SDA Oled
PB2 CSK Attiny85 - Blue - SCL Oled
GND Attiny85 - Black - GND Oled
+5 Attiny85 - Merah - VCC Oled

Kami mengumpul semua wayar dalam satu baris, supaya kami mendapat gelung. Kami mengetuknya dengan pita elektrik di beberapa tempat agar ia tidak runtuh.


Pergi ke kuasa jam tangan kami. Untuk melakukan ini, ambil bateri litium kecil. Solder wayar kepadanya.


Sekiranya tiada bateri, bateri jenis A27 atau A23 boleh digunakan.


Kami meletakkan penumpuk atau bateri di sudut paling jauh dari poket yang dibentuk oleh tali dilipat separuh. Jika menggunakan bateri, sediakan slot untuk menggantikannya.
Di dalam lubang yang dibuat di tengah tali, kami melekatkan kabel kami dari wayar.


Dan kami merentangkannya ke hujung tali, supaya mereka melekat, dan jam tangan itu tepat di atas slot, supaya slot ditutup selama berjam-jam.


Kami memotong kelebihan dan kelimanya semua wayar penyambung Dupont 2.54 mm "ibu". Kami memasukkannya ke dalam kes plastik dan membungkusnya dengan pita elektrik, supaya kami mendapat penyambung yang kemas, dengan semua petunjuk Attiny85. Di sini juga bernilai menulis, atau lebih baik membuat lakaran, semua kenalan penyambung terhasil. GND Attiny, GND Oled dan minus bateri boleh dihubungkan dengan segera dan dikepilkan ke dalam satu kenalan. Untuk mengisi lagi lakaran dan penyambung sambungan, ia adalah lebih mudah untuk mengaturkan hubungan seperti berikut:

PB0 | PB1 | PB2 | PB5 | +5 ATTINY | GND ATTINY

PB3 | PB4 | VCC OLED | GND OLED | Vin ATTINY | + BAT



Sekarang sudah tiba masanya untuk bergerak ke badan.

Langkah 3 Membuat kes itu.
Untuk badan anda akan memerlukan plastik nipis. Ia boleh dibeli di kedai dalam talian. Atau anda boleh membeli sebuah folder dengan penutup plastik tebal di kedai alat tulis dan membuat kes di luar penutup. Pada plastik kami menandakan sapuan jam tangan itu. Garis pepejal dipotong garisan, garis putus-putus - bengkok.


Menggunakan pisau perkeranian, berhati-hati memotong tetingkap di tengah. Kami membengkokkan semua garis putus-putus. Ia sepatutnya seperti ini:


Dan di sebelah belakang:


Kami meletakkan slot pada skrin kami, bengkok tepi dan, dengan menggunakan pelekat panas-mencair, memasang badan kami. Ia juga sengaja menempelkan kes itu ke tali, sebaiknya di dalam, supaya gam tidak keluar.


Langkah 4 Menyediakan persekitaran pengaturcaraan.
Untuk bekerja dengan firmware (atau lakaran) kami akan menggunakan IDE Arduino. Muat turun arkib atau pemasang dari tapak rasmi IDE Arduino.

Di samping itu, kita perlu menambah sokongan Attiny ke IDE Arduino. Untuk melakukan ini, jalankan IDE Arduino, kemudian Fail - Tetapan - dalam "URL Pengurus Papan Tambahan", masukkan pautan:

https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json


Klik OK (anda boleh memasukkan beberapa pautan yang dipisahkan oleh koma dalam bidang ini). Kemudian pergi ke Tools - Board - Board Manager dalam bidang penapis, masukkan Attiny dan pilih "attiny oleh David A. Mellis". Klik Pasang dan tunggu muat turun selesai.

Anda juga memerlukan perpustakaan untuk bekerja dengan skrin Oled. Terdapat banyak daripada mereka, saya suka, dan saya cadangkan menggunakan TinyOzOLED. Ia mudah, dan yang paling penting, sesuai dengan ingatan:
tinyozoled-master.rar [15.99 Kb] (muat turun: 100)


Di masa hadapan, anda boleh memperluaskan fungsi jam tangan dengan menambahkan sensor suhu. Tambah perpustakaan untuk sensor ini dengan serta-merta. Perpustakaan OneWire.
onewire.rar [16.75 Kb] (muat turun: 71)


Pasang perpustakaan-perpustakaan ini. Untuk melakukan ini, anda boleh terus dalam persekitaran pengaturcaraan Arduino IDE, tanpa membongkar arkib yang dimuat turun, pilih menu Sketch - Connect Library. Di bahagian paling atas senarai juntai bawah, pilih item "Tambah .Zip library". Dalam dialog yang muncul, pilih perpustakaan yang anda mahu tambah, dalam kes ini dua yang dimuat turun. Sekarang buka menu Sketch - Connect Library sekali lagi. Di bahagian paling bawah senarai juntai bawah, anda perlu melihat perpustakaan baru. Mulai sekarang, perpustakaan boleh digunakan dalam program. Setelah semua ini, mulakan semula IDE Arduino. Anda juga boleh menggabungkannya ke folder "pustaka" yang terletak di dalam folder dengan Arduino IDE dipasang.

Langkah 5 Menyediakan programmer.
Diginyark Attiny85 boleh diprogramkan melalui penyambung USB mikro di papan menggunakan Arduino IDE. Walau bagaimanapun, anda perlu mengorbankan 2 KB memori 8 KB Flash untuk bootloader.Lukisan watch tidak sesuai dengan bootloader, jadi anda mesti menggunakan programmer ISP, sehingga menghapus bootloader. Jika anda tidak mempunyai programmer ISP di tangan (seperti saya), anda boleh menggunakan papan Arduino sebaliknya. Saya akan menggunakan Arduino Uno. Tetapi anda boleh menggunakan mana-mana lembaga lain. Jadi, kami menyambung Arduino Uno ke komputer. Lancarkan Arduino IDE, buka Fail - Contoh - Arduino ISP. Pilih dalam menu Tools - Board - Arduino Uno. Kami memilih pelabuhan yang disambungkannya, Arduino, dan klik muat turun. Lakaran itu bermula dengan petunjuk bagaimana menghubungkan Arduino ke pengawal diprogramkan.

// 10: set semula hamba
// 11: MOSI
// 12: MISO
// 13: SCK

Skim sambungan ke Digispark Attiny85:
Arduino UNO - Digispark Attiny85

D11 - P0
D12 - P1
D13 - P2
D10 - P5


Langkah 6 Sediakan wayar untuk memuatkan lakaran.
Terdapat beberapa pilihan untuk lakaran, dan hanya untuk kemudahan memuat turun, kami akan mengeluarkan dawai yang menghubungkan Arduino Uno (sebagai programmer ISP) dan jam tangan kami. Di sini saya juga mengesyorkan menggunakan wayar warna yang sepadan dengan warna yang telah kami gunakan. Di satu pihak, perlu ada satu blok:

PB0 Kuning | PB1 Blue | PB2 Blue | PB5 Gray | +5 Merah | GND Black

Blok ini menyambung kepada jam tangan, di bahagian atas blok menonton.
Sebaliknya, terdapat dua pad untuk menyambung ke Arduino Uno:

Pin 10 Kelabu | Pin 11 Kuning | Pin 12 Blue | Pin 13 Blue

+5 Merah | GND Black

Ia sepatutnya kelihatan seperti ini:


Langkah 7 firmware.
Oleh itu, saya menulis beberapa pilihan lakaran untuk jam tangan kami. Saya akan menulis kemudian apa perbezaan dan meletakkan segala-galanya. Untuk mengisi lakaran, jalankan Arduino IDE, pilih menu Alat, tetapkan parameter berikut:

Lembaga - Attiny 25/45/85
Pemproses - Attiny 85
Jam - dalaman 16

Pilih port siri yang mana programmer ISP atau Arduino disambungkan sebagai pengaturcara. Juga, dalam menu Alat - Programmer, pilih "Arduino sebagai ISP". Sekarang pilih Lakaran - Muat turun melalui programmer. Ia masih menunggu muat turun selesai.

Langkah 8 Lakaran.
Pilihan pertama ialah jam tangan dengan tarikh. Untuk menetapkan masa, anda perlu menyambung butang, seperti ini:


Untuk pin PB1, PB3, PB4.
attiny85_oled_spi.rar [1.9 Kb] (muat turun: 110)


Pilihan kedua hanyalah jam tangan. Untuk menetapkan masa yang anda perlukan untuk menggunakan USB-TTL.


Dan pilihan ketiga, jam meja dengan tarikh dan termometer.
attiny85_oled_spi_term_2.rar [2.78 Kb] (muat turun: 101)


Langkah 9 Pelancaran.
Untuk memulakan jam, jika anda menggunakan bateri lithium, anda perlu memasang jumper di blok antara kenalan BAT, +5 dan VCC. Anda boleh menggunakan sekeping kecil nipis. Jika anda mempunyai bateri, anda memerlukan dua jumper, meletakkan yang pertama antara BAT dan Vin, yang kedua - + 5 dan VCC.
8.8
8.9
7.3

Tambah komen

    • senyumtersenyumxaxaokdontknowyahoonea
      bosawalbodohyaya-yaagresifrahsia
      maaftariandance2dance3pengampunanmembantuminuman
      berhentikawan-kawanbaikgoodgoodwiseltolaklidah
      asapbertepuk tangancraymengisytiharkanderisivejangan dengarmuat turun
      panasberalunketawa1mdamesyuaratmoskingnegatif
      not_ipopcornmenghukumbacamenakutkanmenakutkancarian
      mengejekterima kasihinito_clueumnikakutbersetuju
      burukbeeeblack_eyeblum3memerahbermegahkebosanan
      ditapiskesenanganrahsia2mengancamkemenanganyusun_bespectacled
      shokrespektloldiingatiselamat datangkrutoyya_za
      ya_dobryipembantune_huliganne_othodifludlarangantutup

Kami menasihati anda untuk membaca:

Bawa ia untuk telefon pintar ...