Isi kandungan:

Arduino Dice untuk Permainan Papan: 4 Langkah
Arduino Dice untuk Permainan Papan: 4 Langkah

Video: Arduino Dice untuk Permainan Papan: 4 Langkah

Video: Arduino Dice untuk Permainan Papan: 4 Langkah
Video: How to Make Electronic Dice | Arduino Random Number With Tilt Sensor | 2024, November
Anonim

Oleh RoboCircuits_comMengikuti Lagi oleh pengarang:

Dadu Elektronik Dengan PENGGUNAAN
Dadu Elektronik Dengan PENGGUNAAN
Dadu Elektronik Dengan PENGGUNAAN
Dadu Elektronik Dengan PENGGUNAAN
Suis Paras Air Menggunakan D882
Suis Paras Air Menggunakan D882
Suis Paras Air Menggunakan D882
Suis Paras Air Menggunakan D882
Jam Masa Nyata Ambient
Jam Masa Nyata Ambient
Jam Masa Nyata Ambient
Jam Masa Nyata Ambient

Mengenai: YouTuber, Drone Manufaturer Lebih Lanjut Mengenai RoboCircuits_com »

Anda mungkin telah menggunakan dadu ini semasa bermain LUDO dan permainan papan lain. Tetapi sebagai peminat elektronik saya harus mengubah trend ini.

Oleh itu, saya memutuskan untuk membuat Dadu elektronik. Saya menggunakan Arduino untuk tujuan saya.

Langkah 1: DIY Arduino

Arduino ini dibuat oleh saya menggunakan mikrokontroler atmega 328p. PCB untuk ini dipesan dari "jlcpcb.com" kerana mereka menyediakan pcbs kelas terbaik dengan harga rendah. Kemudian saya menyolder semua bahagian dan akhirnya mendapat Arduino UNO yang kelihatan comel ini.

Semua Skema dan Fail diberikan dalam Artikel Webiste saya -

Langkah 2: Pembuatan Projek

baik!!!!

cukup mengenai Arduino. Sekarang mari buat projek. Untuk nilai rawak saya menggunakan fungsi rawak dalam idea arduino untuk mendapatkan nilai dari 1 hingga 6 setiap kali saya menekan butang. Oleh itu, tonton video penuh ini untuk mengetahui bagaimana projek ini dibuat.

Langkah 3: Kod

/ * Kod ini direka oleh RoboCircuits

Langgan saya di youtube https://youtube.com/robocircuits atau lawati robocircuits.com Kami selalu perlu memasukkan perpustakaan * /

#sertakan "LedControl.h"

/ * Sekarang kita memerlukan LedControl untuk bekerjasama. ***** Nombor pin ini mungkin tidak akan berfungsi dengan perkakasan anda ***** pin 12 disambungkan ke DataIn pin 11 disambungkan ke CLK pin 10 disambungkan ke LOAD Kami hanya mempunyai satu MAX72XX. * /

LedControl lc = LedControl (12, 11, 10, 1);

/ * kami selalu menunggu sedikit antara kemas kini paparan * / waktu tunda lama yang tidak ditandatangani = 500; bait enam [8] = {B00000000, B11011011, B11011011, B00000000, B00000000, B11011011, B11011011, B00000000}; bait lima [8] = {B00000000, B01100110, B01100110, B00011000, B00011000, B01100110, B01100110, B00000000}; bait empat [8] = {B00000000, B01100110, B01100110, B00000000, B00000000, B01100110, B01100110, B00000000}; bait tiga [8] = {B11000000, B11000000, B00000000, B00011000, B00011000, B00000000, B00000011, B00000011}; bait dua [8] = {B00000000, B00000000, B00000000, B01100110, B01100110, B00000000, B00000000, B00000000}; bait satu [8] = {B00000000, B00000000, B00000000, B00011000, B00011000, B00000000, B00000000, B00000000};

batal persediaan () {/ * MAX72XX berada dalam mod penjimatan kuasa semasa permulaan, kita harus melakukan panggilan bangun * / lc.shutdown (0, false); / * Tetapkan kecerahan ke nilai sederhana * / lc.setIntensity (0, 8); / * dan kosongkan paparan * / lc.clearDisplay (0); }

/ * Kaedah ini akan memaparkan watak (anda memerlukan sekurang-kurangnya 7x7 led untuk melihat keseluruhan watak) * / batal satu1 () {/ * berikut adalah data untuk watak * / / * sekarang memaparkannya satu persatu dengan kecil kelewatan * / lc.setRow (0, 0, satu [0]); lc.setRow (0, 1, satu [1]); lc.setRow (0, 2, satu [2]); lc.setRow (0, 3, satu [3]); lc.setRow (0, 4, satu [4]); lc.setRow (0, 5, satu [5]); lc.setRow (0, 6, satu [6]); lc.setRow (0, 7, satu [7]); kelewatan (waktu tunda); } batal dua2 () {/ * berikut adalah data untuk watak * / / * sekarang memaparkannya satu persatu dengan sedikit kelewatan * / lc.setRow (0, 0, dua [0]); lc.setRow (0, 1, dua [1]); lc.setRow (0, 2, dua [2]); lc.setRow (0, 3, dua [3]); lc.setRow (0, 4, dua [4]); lc.setRow (0, 5, dua [5]); lc.setRow (0, 6, dua [6]); lc.setRow (0, 7, dua [7]); kelewatan (waktu tunda); } batal tiga3 () {/ * berikut adalah data untuk watak * / / * sekarang memaparkannya satu persatu dengan sedikit kelewatan * / lc.setRow (0, 0, tiga [0]); lc.setRow (0, 1, tiga [1]); lc.setRow (0, 2, tiga [2]); lc.setRow (0, 3, tiga [3]); lc.setRow (0, 4, tiga [4]); lc.setRow (0, 5, tiga [5]); lc.setRow (0, 6, tiga [6]); lc.setRow (0, 7, tiga [7]); kelewatan (waktu tunda); } batal empat4 () {/ * berikut adalah data untuk watak * / / * sekarang memaparkannya empat hingga empat dengan sedikit kelewatan * / lc.setRow (0, 0, empat [0]); lc.setRow (0, 1, empat [1]); lc.setRow (0, 2, empat [2]); lc.setRow (0, 3, empat [3]); lc.setRow (0, 4, empat [4]); lc.setRow (0, 5, empat [5]); lc.setRow (0, 6, empat [6]); lc.setRow (0, 7, empat [7]); kelewatan (waktu tunda); } batal lima5 () {/ * berikut adalah data untuk watak * / / * sekarang memaparkannya lima hingga lima dengan sedikit kelewatan * / lc.setRow (0, 0, lima [0]); lc.setRow (0, 1, lima [1]); lc.setRow (0, 2, lima [2]); lc.setRow (0, 3, lima [3]); lc.setRow (0, 4, lima [4]); lc.setRow (0, 5, lima [5]); lc.setRow (0, 6, lima [6]); lc.setRow (0, 7, lima [7]);

kelewatan (waktu tunda); } batal enam6 () {/ * berikut adalah data untuk watak * / / * sekarang memaparkannya enam hingga enam dengan sedikit kelewatan * / lc.setRow (0, 0, enam [0]); lc.setRow (0, 1, enam [1]); lc.setRow (0, 2, enam [2]); lc.setRow (0, 3, enam [3]); lc.setRow (0, 4, enam [4]); lc.setRow (0, 5, enam [5]); lc.setRow (0, 6, enam [6]); lc.setRow (0, 7, enam [7]); kelewatan (waktu tunda); }

gelung kekosongan () {int x; jika (analogRead (A4) == 1000) {x = rawak (1, 6); } suis (x) {kes 1: satu1 (); rehat; kes 2: dua2 (); rehat; kes 3: tiga3 (); rehat; kes 4: empat4 (); rehat; kes 5: lima5 (); rehat; kes 6: enam6 (); rehat;}}

Langkah 4: Suka Kongsi

Langgan kami di YouTube -

Seperti kami di Facebook -

Lawati -

Disyorkan: