Daftar Isi:
2025 Pengarang: John Day | [email protected]. Terakhir diubah: 2025-01-13 06:57
Berikut adalah panduan sederhana untuk membuat telesketsa menggunakan Arduino. Perancangan ini menggunakan Arduino, dua led matrix berukuran 8x32, sebuah Buzzer, dua buah rotary encoder dan beberapa tombol. Kami harap Anda akan belajar cara menggunakan encoder putar dan matriks led. Dia juga berharap Anda akan bersenang-senang mengikuti langkah-langkah dan membuat telesketsa retro Anda sendiri!!
Langkah 1: Memilih Komponen
Bahan yang dibutuhkan:
Untuk kotak:
- DM 2mm
- Kaca akrilik (putih)
- Cat (warna yang Anda inginkan)
- Penutup cetak 3D untuk rotary encoder (dokumen terlampir)
Untuk elektronik:
- Matriks led 8 x 32 (2 unit)
- Rotary encoder (2 unit)
- Tombol tekan (3 unit)
- Bel
- 220 ohm Resistor (2 unit)
- Kabel jumper (28 unit)
- Baterai 9V
Langkah 2: Membuat Kotak
Untuk membuat kotak Anda mungkin memiliki akses ke laser cuter.
Kami mendesain kotak dengan tampilan retro dan bentuk yang menarik tanpa sudut. Kotak terbuat dari DM sejenis kayu yang lebih murah dan cocok untuk laser cutting.
Untuk memotong kotak, Anda harus mengunduh dokumen terlampir, berisi semua bentuk yang siap dipotong dengan laser.
Untuk merakit bagian-bagian kami sarankan menggunakan perekat panas meleleh yang kuat dan cepat.
- Pertama Anda harus menyatukan 2 tulang rusuk untuk membuat 1 lebih kuat, pada akhirnya Anda akan memiliki 2 tulang rusuk masing-masing terbuat dari 2 tulang rusuk.
- Kemudian pasang dinding ke tulang rusuk.
- Ambil tutup depan dan kaitkan bingkai layar dari belakang.
- Cat semua bagian kayu dengan warna yang Anda suka!! (kami memilih biru elektrik)
- Tempatkan layar kaca akrilik.
- Bergabunglah dengan tutup depan dan dinding dengan tulang rusuk.
- Jangan bergabung dengan penutup belakang sampai elektronik terpasang di tempatnya.
Langkah 3: Memasang Elektronik
Foto di atas menunjukkan pengaturan proyek. Rangkaian harus diatur sebagai berikut:
- Hubungkan kabel merah dari pin 5V pada Arduino ke saluran positif papan tempat memotong roti.
- Hubungkan kabel hitam dari pin GND pada arduino ke saluran negatif papan tempat memotong roti
- Buzzer = pin 8
-
Matriks yang dipimpin
- VCC
- GND
- DIN = pin 12
- CS = pin 11
- CLK = pin 10
-
Enkoder putar (1)
- VCC
- GND
- DT = pin 3
- CLK = pin 4
-
Enkoder putar (2)
- VCC
- GND
- CS = pin 5
- CLK = pin 6
- Tombol tekan (reset) = pin 1
- Tombol tekan (putar) = pin 2
Langkah 4: Kode
Sekarang setelah Anda menyelesaikan pengaturan, saatnya untuk membuat kode. Anda dapat menyalin kode berikut dan memodifikasinya untuk mengupgrade telesketch.
//Kita harus selalu menyertakan perpustakaan
#include "LedControl.h" #include "pitches.h" LedControl lc = LedControl(12, 11, 10, 8); int nilai; int encoder0PinA = 3; int encoder0PinB = 4; int encoder0Pos = 0; int encoder0PinALast = RENDAH; int n = RENDAH; int valo; int encoder1PinA = 5; int encoder1PinB = 6; int encoder1Pos = 0; int encoder1PinALast = RENDAH; int o = RENDAH; int alamat = 3; int perangkat = lc.getDeviceCount(); int melodi = NOTE_D5; int melodi1 = NOTE_C5; int durasi = 50; permainan boolean = salah; menu boolean = salah; waktu tunda lama yang tidak ditandatangani = 500; void setup() { pinMode(2, INPUT); pinMode(1, INPUT); pinMode(7, INPUT); pinMode (encoder0PinA, INPUT); pinMode (encoder0PinB, INPUT); pinMode (encoder1PinA, INPUT); pinMode (encoder1PinB, INPUT); Serial.begin (9600); int perangkat = lc.getDeviceCount(); for (int alamat = 0; alamat = 0) { if (encoder1Pos 4) { if (encoder1Pos > 7) { alamat--; encoder1Pos = 0; } } if (alamat < 3) { if (encoder1Pos 3 && alamat < 7) { if (encoder1Pos 7) { alamat += 4; encoder0Pos = 0; } if (encoder0Pos < 0) { alamat -= 4; encoder0Pos = 7; } } void Gerakan(){ n = digitalRead(encoder0PinA); if ((encoder0PinALast == LOW) && (n == HIGH)) { if (digitalRead(encoder0PinB) == LOW) { encoder0Pos--; nada(8, melodi1, 50); } else { encoder0Pos++; nada(8, melodi, 50); } } encoder0PinALast = n; o = digitalRead(encoder1PinA); if ((encoder1PinALast == LOW) && (o == HIGH)) { if (digitalRead(encoder1PinB) == LOW) { encoder1Pos--; nada(8, melodi1, 50); } else { encoder1Pos++; nada(8, melodi, 50); } } encoder1PinALast = o; int perangkat = lc.getDeviceCount(); } void omple() { perangkat int = lc.getDeviceCount(); for (int baris = 0; baris < 8; baris++) { for (int alamat = 0; alamat < perangkat; alamat++) { lc.setLed(alamat, baris, 7, benar); lc.setLed(alamat, baris, 6, benar); lc.setLed(alamat, baris, 5, benar); lc.setLed(alamat, baris, 4, benar); lc.setLed(alamat, baris, 3, benar); lc.setLed(alamat, baris, 2, benar); lc.setLed(alamat, baris, 1, benar); lc.setLed(alamat, baris, 0, benar); penundaan (50); } } } void neteja() { int perangkat = lc.getDeviceCount(); for (int baris = 0; baris < 8; baris++) { for (int alamat = 0; alamat < perangkat; alamat++) { lc.setLed(alamat, baris, 7, salah); lc.setLed(alamat, baris, 6, salah); lc.setLed(alamat, baris, 5, salah); lc.setLed(alamat, baris, 4, salah); lc.setLed(alamat, baris, 3, salah); lc.setLed(alamat, baris, 2, salah); lc.setLed(alamat, baris, 1, salah); lc.setLed(alamat, baris, 0, salah); } } mainkan = !mainkan; }
Langkah 5: Sentuhan Akhir
Pada titik ini Anda dapat meningkatkan desain kasing dengan menambahkan beberapa vinil dan komponen cetak 3D untuk enkoder putar.
File untuk model 3D ada di akhir dokumen dalam format gaya.
Langkah 6: Mainkan & Nikmati
Ini adalah proyek yang sangat menyenangkan, kami sangat senang membuatnya. Sekarang saatnya bermain dan menghidupkan kembali kenangan masa kecil!!
Kami meninggalkan Anda beberapa gambar untuk Anda coba!!