Mundarija:
Video: Stol o'yinlari uchun Arduino Dice: 4 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:25
Muallif tomonidan batafsil:
Haqida: YouTuber, Drone Manufaturer RoboCircuits_com haqida batafsil »
Siz bu zarlarni LUDO va boshqa stol o'yinlarini o'ynab ishlatgan bo'lishingiz mumkin. Ammo elektron ixlosmand sifatida men bu tendentsiyani o'zgartirishim kerak.
Shunday qilib, men elektron zar yasashga qaror qildim. Men o'z maqsadim uchun Arduino -dan foydalandim.
1 -qadam: DIY Arduino
Bu arduino men tomonidan atmega 328p mikrokontroller yordamida qilingan. PCB "jlcpcb.com" dan buyurtma qilinadi, chunki ular arzon narxlarda eng yaxshi kompyuterlarni taqdim etadi. Keyin men barcha qismlarni lehimladim va nihoyat shunday yoqimli ko'rinishga ega bo'ldim Arduino UNO.
Barcha sxemalar va fayllar mening veb -saytim maqolasida keltirilgan -
2 -qadam: Loyihani tuzish
xop!!!!
Arduino haqida etarli. Endi loyihani tuzamiz. Tasodifiy qiymatlar uchun men tugmani bosganimda 1dan 6gacha qiymatlarni olish uchun arduino ideda tasodifiy funktsiyadan foydalanardim. Loyihaning qanday amalga oshirilganligini bilish uchun ushbu to'liq videoni tomosha qiling.
3 -qadam: kod
/* Bu kod RoboCircuits tomonidan ishlab chiqilgan
Menga youtube -da https://youtube.com/robocircuits yozing yoki robocircuits.com saytiga tashrif buyuring. Biz doimo kutubxonani kiritishimiz kerak*/
#"LedControl.h" ni qo'shing
/* Endi biz bilan ishlash uchun LedControl kerak. ***** Bu pin raqamlari sizning apparatingiz bilan ishlamasligi mumkin ***** pin 12 DataInga ulangan CLK piniga ulangan 10 LOADga ulangan Bizda faqat bitta MAX72XX bor. */
LedControl lc = LedControl (12, 11, 10, 1);
/ * biz har doim displey yangilanishlari o'rtasida biroz kutamiz */ imzosiz uzoq kechikish vaqti = 500; olti bayt [8] = {B00000000, B11011011, B11011011, B00000000, B00000000, B11011011, B11011011, B00000000}; besh bayt [8] = {B00000000, B01100110, B01100110, B00011000, B00011000, B01100110, B01100110, B00000000}; to'rt bayt [8] = {B00000000, B01100110, B01100110, B00000000, B00000000, B01100110, B01100110, B00000000}; bayt uch [8] = {B11000000, B11000000, B00000000, B00011000, B00011000, B00000000, B00000011, B00000011}; ikki bayt [8] = {B00000000, B00000000, B00000000, B01100110, B01100110, B00000000, B00000000, B00000000}; bayt bir [8] = {B00000000, B00000000, B00000000, B00011000, B00011000, B00000000, B00000000, B00000000};
void setup () { / * MAX72XX ishga tushganda quvvatni tejash rejimida, biz uyg'onish qo'ng'irog'ini qilishimiz kerak * / lc.shutdown (0, noto'g'ri); / * Yorqinlikni o'rta qiymatlarga o'rnating */ lc.setIntensity (0, 8); / * va displeyni tozalang */ lc.clearDisplay (0); }
/* Bu usul belgilarni ko'rsatadi (butun belgilarni ko'rish uchun sizga kamida 7x7 diod kerak)* /void one1 () { /* bu erda* / /* belgilariga oid ma'lumotlar, ularni kichik harflar bilan birma -bir ko'rsatish. kechiktirish */ lc.setRow (0, 0, bitta [0]); lc.setRow (0, 1, bitta [1]); lc.setRow (0, 2, bitta [2]); lc.setRow (0, 3, bitta [3]); lc.setRow (0, 4, bitta [4]); lc.setRow (0, 5, bitta [5]); lc.setRow (0, 6, bitta [6]); lc.setRow (0, 7, bitta [7]); kechikish (kechikish); } void two2 () { / * bu erda * / / * belgilariga oid ma'lumotlar, ularni kichik kechikish bilan birma -bir ko'rsatadi * / lc.setRow (0, 0, two [0]); lc.setRow (0, 1, ikkita [1]); lc.setRow (0, 2, ikkita [2]); lc.setRow (0, 3, ikkita [3]); lc.setRow (0, 4, ikkita [4]); lc.setRow (0, 5, ikkita [5]); lc.setRow (0, 6, ikkita [6]); lc.setRow (0, 7, ikkita [7]); kechikish (kechikish); } void three3 () { / * bu erda * / / * belgilariga oid ma'lumotlar, ularni kichik kechikish bilan * / lc.setRow (0, 0, uch [0]) birma -bir ko'rsatadi; lc.setRow (0, 1, uch [1]); lc.setRow (0, 2, uch [2]); lc.setRow (0, 3, uch [3]); lc.setRow (0, 4, uch [4]); lc.setRow (0, 5, uch [5]); lc.setRow (0, 6, uch [6]); lc.setRow (0, 7, uch [7]); kechikish (kechikish); } void four4 () { / * bu erda * / / * belgilariga oid ma'lumotlar, ularni kechiktirib * / lc.setRow (0, 0, to'rt [0]) bilan to'rtdan to'rtgacha ko'rsatiladi; lc.setRow (0, 1, to'rt [1]); lc.setRow (0, 2, to'rt [2]); lc.setRow (0, 3, to'rt [3]); lc.setRow (0, 4, to'rt [4]); lc.setRow (0, 5, to'rt [5]); lc.setRow (0, 6, to'rt [6]); lc.setRow (0, 7, to'rt [7]); kechikish (kechikish); } void five5 () { / * bu erda * / / * belgilariga oid ma'lumotlar, ularni beshdan beshga kichik kechiktirish bilan ko'rsatadi * / lc.setRow (0, 0, besh [0]); lc.setRow (0, 1, besh [1]); lc.setRow (0, 2, besh [2]); lc.setRow (0, 3, besh [3]); lc.setRow (0, 4, besh [4]); lc.setRow (0, 5, besh [5]); lc.setRow (0, 6, besh [6]); lc.setRow (0, 7, besh [7]);
kechikish (kechikish); } void six6 () { / * bu erda * / / * belgilariga oid ma'lumotlar, ularni oltidan oltigacha kichik kechikish bilan ko'rsatadi * / lc.setRow (0, 0, six [0]); lc.setRow (0, 1, olti [1]); lc.setRow (0, 2, olti [2]); lc.setRow (0, 3, olti [3]); lc.setRow (0, 4, olti [4]); lc.setRow (0, 5, olti [5]); lc.setRow (0, 6, olti [6]); lc.setRow (0, 7, olti [7]); kechikish (kechikish); }
void loop () {int x; agar (analogRead (A4) == 1000) {x = tasodifiy (1, 6); } switch (x) {1 holat: one1 (); tanaffus; 2 -holat: two2 (); tanaffus; 3 -holat: three3 (); tanaffus; ish 4: four4 (); tanaffus; ish 5: besh5 (); tanaffus; holat 6: olti (); tanaffus;}}
4 -qadam: Yoqtirishni yoqtirish
Bizga YouTube -da obuna bo'ling -
Biz kabi Facebookda -
Tashrif -
Tavsiya:
LED displeyli Arduino o'yinlari: 7 qadam (rasmlar bilan)
Arduino o'yinlari: LED zinapoyali displeyli o'yin tizimi. Attiny-85, "video" aksiyalarini o'ynash uchun apparat va dasturiy ta'minot bilan jihozlangan. O'yinlar, LED displeyda. U 12 LEDli zinapoyali multipleksli displeyga ega va 6 tagacha tugmali kirishni qo'llab -quvvatlaydi
DIY shaxsiy kompyuter rullari va kartondan pedallar! (Teskari aloqa, Paddle Shifters, Displey) poyga simulyatorlari va o'yinlari uchun: 9 qadam
DIY shaxsiy kompyuter rullari va kartondan pedallar! Poyga simulyatorlari va o'yinlari uchun (Teskari aloqa, Paddle Shifters, Display): Salom hammaga! Bu zerikarli paytlarda biz hammamiz nima qilishni qidiramiz. Haqiqiy hayot poygalari bekor qilindi va ularning o'rnini simulyatorlar egalladi. Men muammosiz ishlaydigan arzon simulyator qurishga qaror qildim
Stol o'yinlari uchun Arduino "Birinchi o'yinchi": 4 qadam
Stol o'yinlari uchun Arduino "Birinchi o'yinchi": Bu loyiha "birinchi o'yinchi" dan ilhomlangan. erim va men telefonimizda ishlatgan ilovalar. Biz stol o'yinlarini o'ynashni yaxshi ko'ramiz va " birinchi o'yinchi " kim birinchi bo'lib ketishini hal qilish uchun ilovalar. Men o'z Arduino versiyasini yaratishga harakat qildim
Paragliding o'yinlari uchun DIY boshqaruvchisi: 5 qadam (rasmlar bilan)
Paragliding o'yinlari uchun DIY boshqaruvchisi: Men bir nechta paraplanli uchish o'yinlarini o'ynadim va har doim siz qanday boshqaruv elementlarini ishlatayotganingizni topdingiz. Sichqoncha va klaviatura unchalik yaxshi emas, chunki paraglider uchishi juda o'xshash. Bu parvoz simulyatori yoki avtopoyga o'yiniga o'xshaydi, sizga quvonch kerak
Poyga o'yinlari yoki qirg'oq simulyatorlari uchun tezlik simulyatori: 5 qadam (rasmlar bilan)
Racing Games yoki Coaster simulyatorlari uchun tezlik simulyatori: oddiy loyiha, muxlis o'yin ichidagi tezligiga qarab yuzingizga havo uradi. Qilish oson va kulgili