Mundarija:

CLOUDX M633 dan foydalanadigan elektron zar: 5 qadam
CLOUDX M633 dan foydalanadigan elektron zar: 5 qadam

Video: CLOUDX M633 dan foydalanadigan elektron zar: 5 qadam

Video: CLOUDX M633 dan foydalanadigan elektron zar: 5 qadam
Video: Best Music Mix 2023 🔥Gaming Music Mix ♫♫ NoCopyrightSounds [Remake 2023] 2024, Noyabr
Anonim
CLOUDX M633 dan foydalanadigan elektron zar
CLOUDX M633 dan foydalanadigan elektron zar

Hammamiz tasodif o'yinini u yoki bu tarzda zar ishlatib o'ynagan bo'lsak kerak. Zarni aylantirish nima bo'lishini oldindan aytib bo'lmaydigan tabiatni bilish yanada qiziqarli o'yinni qo'shadi.

Men buni amalga oshirish uchun oddiy LEDlar, tugma va CloudX M633 moduli yordamida elektron raqamli zarni taqdim etaman.

1 -qadam: QOMPONENTLAR

KOMPONENTLAR
KOMPONENTLAR
KOMPONENTLAR
KOMPONENTLAR
KOMPONENTLAR
KOMPONENTLAR
  • CloudX M633
  • CloudX yumshoq kartasi
  • Ledlar
  • Rezistorlar (100r, 10k)
  • Non taxtasi
  • Jumper sim
  • tugma
  • V3 kabeli

2 -qadam: LEDlar

LEDlar
LEDlar

Yorug'lik diodlari (LED) - bu oqim o'tganda yonadigan maxsus turdagi diodlar. Faqat shu jarayonda tasodifan ularga zarar bermaslik uchun, ular orqali o'tadigan tokning haqiqiy miqdorini cheklab qo'yish kerak.

3 -qadam: LEDlarni CloudX M633 bilan o'zaro bog'lash

LEDlarni CloudX M633 bilan o'zaro bog'lash
LEDlarni CloudX M633 bilan o'zaro bog'lash

Butun sxema ikki qismdan iborat: navbati bilan mikrokontroller va LED bo'limlari. LEDlar har biri ikkita to'plamda - (7 ta LEDni o'z ichiga oladi), zarning oddiy yuzlarini ifodalaydi; va P1 pinidan MCU modulining P14 piniga ulangan.

Butun operatsiya butun loyihaning yurak urishi sifatida mikrokontroller moduli atrofida aylanadi. U (MCU) yoqilishi mumkin:

  • bortdagi VIN va GND nuqtalari orqali (ya'ni, ularni mos ravishda tashqi quvvat manbaining +ve va -ve terminallariga ulash);
  • yoki CloudX USB karta moduli orqali.

Yuqoridagi sxematik diagrammada aniq ko'rsatilgandek, LEDlar shunday yoritilganki, ular yonib ketganda raqamlarni haqiqiy zar kabi ko'rsatadilar. Va biz ikkita alohida zar bo'laklarini ko'rsatish uchun ikkita LED to'plami bilan ishlayapmiz. Ularning barchasi hozirgi cho'kish rejimida ulangan.

LEDlarning birinchi guruhi: D1, D2, D3, D4, D5, D6 va D7; MCU pinlariga ulanadi: P1, P2, P3, P4, P5, P6 va P7 mos ravishda 10Ω rezistorlar orqali. Boshqa guruh: D8, D9, D10, D11, D12, D13 va D14; MCU pinlariga ulanadi: P9, P10, P11, P12, P13, P14 va P15 mos ravishda 10Ω qarshilik orqali.

So'ngra, biz tugmachali SW1-tugmachali tugmachani bosib, tasodifiy sonlar hosil qilamiz, MCU ning P16 piniga 10kΩ tortish qarshiligi yordamida ulanadi.

4 -qadam: ishlash tamoyillari

Ishga tushganda, LEDlar odatda o'chirilgan bo'lib, tizim ko'rsatish uchun yangi tasodifiy sonni yaratishga tayyorligini bildiradi. O'chirish tugmachasida 1 dan 6 gacha bo'lgan tasodifiy raqam hosil bo'ladi va LEDlar orqali ko'rsatiladi; va boshqa tugmachani qayta bosish kutilmoqda.

5 -qadam: KODLASH

#qo'shing

#qo'shing

#kalitni belgilang1 pin16

#define LOW bosildi

/ *svetodiodlarda chiqariladigan zar naqshlarini ushlab turadi */

imzosiz char die = {0, 0x08, 0x14, 0x1C, 0x55, 0x5D, 0x77};

imzosiz char i, dice1, dice2;

setup () {// setup here / *port pimlarini chiqish * /portMode (1, OUTPUT) sifatida sozlaydi; portMod (2, 0b10000000); / *boshida barcha LEDlarni o'chiradi */ portWrite (1, LOW); portWrite (2, LOW); randNumLimit (1, 6); // tasodifiy sonlar oralig'iga e'tibor beradi (ya'ni min, max)

pastadir () {

// Bu erda dastur, agar (switch1 bosilsa) {while (switch1 LOW); // bu erda kalit bo'shatilguncha kutadi dice1 = randNumGen (); // dice1 dice2 = randNumGen () uchun tasodifiy son hosil qiladi; portWrite (1, die [dice1]); // to'g'ri zar naqshini oladi va uni portWrite ko'rsatadi (2, die [dice2]); } boshqa {portWrite (1, die [dice1]); portWrite (2, o'lish [zar2]); }}} // Dasturning oxiri

Tavsiya: