Daftar Isi:
Video: Ular di Papan Tempat memotong roti: 3 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:54
"Punya game di ponselmu?"
"Tidak tepat."
pengantar:
Mudah dikendalikan, mudah diprogram, dan diabadikan oleh Nokia 6110, Snake telah menjadi proyek favorit di antara para insinyur. Ini telah diimplementasikan dalam segala hal mulai dari matriks LED, LCD, pencahayaan rak buku, dan bahkan jendela seluruh bangunan. Kami akan menerapkan Snake pada papan tempat memotong roti kecil dan layar OLED. Orang-orang pasti telah membuat pemain ular yang lebih kecil, tetapi ini secara khusus menggunakan papan tempat memotong roti, menghilangkan kebutuhan untuk mendesain PCB atau solder.
(Anda bisa saja membuat aplikasi di ponsel Anda, tetapi kami tidak melakukan sesuatu karena itu mudah.)
Prasyarat:
Pemahaman dasar tentang sirkuit, cara membuat papan tempat memotong roti, dan pemahaman yang kuat tentang pemrograman di Arduino.
Perlengkapan
- Arduino Nano
- 2 resistor yang cukup tinggi (1kOhm)
- Papan tempat memotong roti kecil
- 2 Tombol Tekan
- 22 AWG kawat inti padat
- 128x64 OLED
Ini adalah tautan afiliasi Amazon jadi saya mendapat sedikit komisi dengan setiap penjualan. Jika Anda belum memiliki persediaan ini dan ingin mendukung proyek saya di masa mendatang, ikuti tautan ini!:)
Langkah 1: Papan tempat memotong roti
Untuk membuat produk akhir kami, kami jelas harus merakit perangkat keras untuk memprogram dan menguji proyek kami. Diagram sistem untuk proyek ini cukup sederhana, karena hanya melibatkan total 4 komponen.
1. Susun:
Ambil komponen Anda dan letakkan di papan, pastikan semuanya pas. Visualisasikan kabel dan pin apa yang akan Anda gunakan dan untuk tujuan apa. Pastikan kabel yang Anda antisipasi tidak bersilangan, karena itu membuat papan tempat memotong roti menjadi lebih berantakan. Tuliskan poin apa yang Anda perlukan untuk terhubung! Meskipun ini adalah papan tempat memotong roti sederhana, ini akan membuat hidup Anda jauh lebih mudah selama proses pengkabelan dan secara umum. Karena betapa kecilnya ruang kerja kami, ini adalah langkah yang sangat penting.
Catatan:
Karena OLED menggunakan bus I2C, pin A4 dan A5 harus digunakan. Ukuran papan tempat memotong roti tidak memungkinkan untuk power dan ground rail, jadi saya menggunakan beberapa trik untuk membuat semuanya berhasil. Tegangan positif untuk tombol disuplai oleh pin D13 dan A2. Saya menemukan bahwa pin Arduino tidak hanya dapat memasok arus, tetapi juga mengalirkan arus, jadi saya menggunakan A3 sebagai ground untuk tombol kanan. Untuk memaksimalkan ruang di papan tempat memotong roti, saya menggantung setengah Nano dari papan dan menopang pin sisi kiri dengan sepotong busa.
2. Sambungkan:
Dengan sepasang penari telanjang kawat dan kawat inti padat 22 AWG dalam jumlah yang layak, sambungkan komponen Anda dengan rapi. Menggunakan inti padat untuk membuat proyek papan tempat memotong roti semi permanen adalah kuncinya, karena Anda dapat memotongnya menjadi panjang, tidak seperti kabel jumper. Pastikan Anda tidak meninggalkan banyak kelebihan panjang pada kabel Anda, itu akan membuat papan berantakan. Potong ujung resistor pull-down agar pas dengan papan.
(Anda juga dapat mengikuti apa yang telah saya lakukan di atas.)
Langkah 2: Program dan Tes
Untuk menyelamatkan diri Anda dari sakit kepala nanti, pastikan OLED dan tombol berfungsi sebagaimana mestinya dengan membuat program pengujian dasar.
1. Rencana, rencana, rencana:
Hanya melompat ke dalam kode bukanlah praktik yang bijaksana. Percayalah, saya sudah mencoba! Itu sebabnya Anda harus menguraikan bagaimana program Anda akan bekerja. Bagan alur program adalah cara yang cukup solid untuk merencanakan apa yang perlu dilakukan kode Anda dan pasti akan membuat Anda tetap pada jalurnya. Ambil contoh saya (di atas)
2. Kode, kode, kode:
Terus terang, proyek ini adalah latihan pemrograman yang lebih besar daripada latihan perangkat keras. Satu-satunya perpustakaan yang saya gunakan adalah perpustakaan OLED Adafruit, tidak termasuk perpustakaan GFX dan Wire yang mendukung.
Membuat Anda menginstal perpustakaan OLED Adafruit melalui manajer perpustakaan Arduino IDE.
Saya tidak dapat mendokumentasikan setiap baris kode yang saya tulis, tetapi berikut adalah beberapa tips:
Kiat:
Komentar:
- Pertama dan terpenting, tulis komentar yang rapi dan berguna saat Anda membuat kode. Masa depan Anda dan orang lain yang membaca kode Anda pasti akan berterima kasih.
Penyimpanan:
- Dengan proyek yang lebih kompleks seperti ini, SRAM menjadi komoditas yang cukup panas. Di perpustakaan Adafruit, buffer OLED 128 x 64 hanya membutuhkan 1 kB, yaitu sekitar setengah dari memori dalam ATMega328p. Oleh karena itu manajemen memori cerdas lebih penting dari sebelumnya.
- Dengan struktur data yang besar, data yang disimpan akan menumpuk dan memakan banyak ruang. Untuk mengurangi jejak memori variabel saya, saya menggunakan tipe data yang lebih kecil (seperti short dan byte) jika saya bisa.
- String biasanya disimpan dalam SRAM, tetapi menggunakan fungsi F() akan menempatkannya di PROGMEM sebagai gantinya, menghemat memori yang berharga.
Mili:
- Untuk mencapai waktu siklus permainan yang lebih akurat, gunakan fungsi milis(). Ada banyak tutorial dan contoh bagus di internet.
Tentukan sebelumnya:
- Gunakan #define preprocessor directive sebagai cara mudah untuk menyetel nilai permanen dalam kode.
Tes:
- Uji kode Anda saat Anda pergi. Akan jauh lebih mudah untuk menghilangkan bug.
Langkah 3: Nikmati
Bersenang-senang dengan permainan ular baru Anda!
(Saya tahu saya menang pada 20 poin dalam video di atas, Anda dapat mengatur kondisi menang lebih tinggi dalam kode saya.)
Hal-hal yang perlu diperluas:
- Baterai untuk portabilitas
- Tombol yang lebih aman
- Gim ular yang bahkan lebih kecil
- Lebih banyak game?
Direkomendasikan:
Sakelar Kreatif LED Papan Tempat memotong roti Captain America Shield: 5 Langkah
Captain America Shield Papan Tempat Memotong Roti LED Sakelar Kreatif: Proyek Sakelar Kreatif untuk Seni 150
Ransel #4: Papan tempat memotong roti: 8 Langkah
Ransel #4: Papan tempat memotong roti: Ransel SPIKE Prime adalah ekstensi untuk LEGO Education SPIKE Prime. Ransel ini memungkinkan Anda menghubungkan SPIKE Prime dengan LED, tombol, sakelar, dan joystick untuk membuat prototipe untuk mengontrol SPIKE Prime. Kami juga memiliki Tas Ransel Kamera yang memungkinkan
Piano Sentuh Papan Tempat memotong roti: 5 Langkah
Breadboard Touch Piano: Anda hanya perlu attiny 85, CD4051 (multiplekser analog apa pun) dan buzzer untuk membuat piano sentuh
Elektronik papan tempat memotong roti: 3 Langkah
Elektronik Breadboard: Elektronik papan tempat memotong roti adalah tentang membuat prototipe sirkuit untuk membuktikan sesuatu berfungsi tanpa memasukkan komponen kami ke papan yang disolder. Papan tempat memotong roti memungkinkan kita untuk bermain, belajar, membongkar, dan bermain lagi
TfCD - Papan Tempat Memotong Roti Sendiri: 6 Langkah (dengan Gambar)
TfCD - Breadboard Self-driving: Dalam Instructable ini, kami akan mendemonstrasikan salah satu teknologi yang sering digunakan pada kendaraan otonom: deteksi rintangan ultrasonik.Dalam mobil self-driving, teknologi ini digunakan untuk mengenali rintangan dalam jarak pendek (<4m), f