Timer menyikat gigi

Selamat siang, Habr!



Artikel ini diperuntukkan bagi mereka yang tidak memiliki semua sikat di kamar mandi dengan timer, dan yang tidak ingin menggunakan jam pasir.

Kami memiliki dua anak perempuan. Setiap kali mereka memasuki kamar mandi untuk menyikat gigi, mereka meminta untuk terlihat selama dua menit (dari empat sikat anak-anak, hanya satu yang memiliki pewaktu untuk menyikat gigi). Untuk membuat proses ini lebih menarik, dan kami tidak perlu mengingatkan anak-anak untuk meninggalkan kamar mandi empat kali sehari, saya memutuskan untuk mencari tahu penghitung waktu. Jam pasir langsung jatuh - entah bagaimana tidak sporty.


Fig. 1. Sirkuit pengatur waktu

Sirkuit pengatur waktu sangat sederhana dan ditunjukkan pada Gambar. 1. Tombol mekanis sangat tidak cocok untuk kamar mandi, karena dari menekan dengan tangan basah mereka bisa gagal (saya akan pernis papan), jadi diputuskan untuk membuat tombol sentuh. Saya sebelumnya menggunakan chip TTP223, dan saya menginstalnya sesuai, tetapi sekarang akan berfungsi sebagai reset untuk mikrokontroler. Saya pikir karena penghitung waktu dimatikan hampir sepanjang waktu (jika Anda tidak memperhitungkan bahwa anak-anak akan terus-menerus menusuknya, akan mencuci tangan mereka), maka Anda dapat menggunakan mode siaga, dan ketika Anda menekan tombol, cukup reset MK.

Mikrokontroler menggunakan yang tersedia - STM32F031G4. UFQFPN-28 kecil sangat nyaman untuk kerajinan miniatur. Khususnya tidak menambahkan tweeter (untuk menghemat baterai) dan buck-boost, sehingga dimensinya minimal.


Fig. 2. Papan sirkuit tercetak

Di papan sirkuit, saya hanya membuat sepuluh vias, dan agar tidak membuat mata saya sakit, delapan di antaranya terletak di platform LED. Saya juga sangat ingin menempelkan gambar sidik jari di suatu tempat.


Fig. 3. Papan sirkuit tercetak di bagian bawah Saya

mencoba membuat papan sirkuit sekecil mungkin, karena saya belum tahu apakah saya akan mencetak kasing atau hanya menempelkan selotip dua sisi ke ubin atau cermin di kompartemen baterai.


Fig. 4. Papan dengan komponen bawah.

Firmware juga cukup sederhana (dihasilkan di CubeMX untuk IAR). Kedip dioda saat startup dan padam, lalu nyalakan dengan interval 30 detik satu per satu, dan berkedip lagi sebelum tidur.

Untuk siaga, hanya beberapa baris yang digunakan:

DBGMCU->CR |= DBGMCU_CR_DBG_STANDBY;  

HAL_PWR_EnterSTANDBYMode();

Setelah tertidur, SWD jatuh, tetapi karena saya memiliki sensor di reset, kami hanya menekan sentuhan dan mem-flash-nya.

LED menggunakan bahasa Cina dengan ali. Dengan multimeter (UNI-T UT70A) ternyata mengukur sesuatu seperti ini:

  • 1 LED - 3,2mA;
  • 2 LED - 3.4mA;
  • 3 LED - 3.6mA;
  • 4 LED - 3,8mA;
  • Dalam mode siaga 8uA.

Saya pikir bermain dengan frekuensi STM, dan dalam mode operasi untuk membuatnya minimal.

Saya harap anak-anak akan senang)

PS:


Anak-anak senang!

Terimakasih atas perhatiannya!

All Articles