Բովանդակություն:

ELECTRONIC DICE USING CLOUDX M633: 5 քայլ
ELECTRONIC DICE USING CLOUDX M633: 5 քայլ

Video: ELECTRONIC DICE USING CLOUDX M633: 5 քայլ

Video: ELECTRONIC DICE USING CLOUDX M633: 5 քայլ
Video: Digital Electronic Dice 2024, Նոյեմբեր
Anonim
ԷԼԵԿՏՐՈՆԱԿԱՆ DԱՌԵՐ ՕԳՏԱԳՈՐՈՄ ԱՄԲՈ M633
ԷԼԵԿՏՐՈՆԱԿԱՆ DԱՌԵՐ ՕԳՏԱԳՈՐՈՄ ԱՄԲՈ M633

Մենք բոլորս այս կամ այն կերպ պետք է խաղայինք պատահական խաղը ՝ օգտագործելով զառախաղը: Իմանալով այն շատ անկանխատեսելի բնույթը, թե զառերի գլորումը ինչ կցուցադրվեր, հետագայում շատ զվարճալի խաղ է ավելացնում:

Սույնով ներկայացնում եմ էլեկտրոնային թվային զառ `օգտագործելով պարզ LED- ներ, սեղմիչ կոճակ և CloudX M633 մոդուլ` այն իրականացնելու համար:

Քայլ 1. Բաղադրիչներ

Բաղադրիչներ
Բաղադրիչներ
Բաղադրիչներ
Բաղադրիչներ
Բաղադրիչներ
Բաղադրիչներ
  • CloudX M633
  • CloudX փափուկ քարտ
  • Լեդս
  • Ռեզիստորներ (100r, 10k)
  • Հացի տախտակ
  • Jumper մետաղալար
  • կոճակ
  • V3 լարը

Քայլ 2: LEDS

LEDS
LEDS

Լույսի արտանետվող դիոդները (LED) դիոդների հատուկ տեսակ են, որոնք փայլում են, երբ հոսանքը անցնում է դրանց միջով: Միայն այդ ծայրահեղ զգուշավորությունը սահմանափակում է դրանց միջով անցնող հոսանքի իրական քանակը, որպեսզի խուսափեն դրանցից ակամայից վնասելուց:

Քայլ 3. LED- ների միացում CloudX M633- ի հետ

LED- ների միացում CloudX M633- ի հետ
LED- ների միացում CloudX M633- ի հետ

Ամբողջ սխեման բաղկացած է երկու բաժնից `համապատասխանաբար միկրոկոնտրոլերը և LED հատվածները: LED- ները կազմակերպված են երկու հավաքածուով `յուրաքանչյուրից (ներառյալ 7 LED), որոնք ներկայացնում են զառի նորմալ դեմքերը. և միացված են P1 կապին մինչև MCU մոդուլի P14 կապին:

Ամբողջ գործողությունը պտտվում է միկրոկառավարիչի մոդուլի շուրջ, որպես ամբողջ նախագծի սրտի բաբախում: Այն (MCU) կարող է սնուցվել.

  • կամ VIN- ի և GND կետերի միջոցով (այսինքն. դրանք միացնելով համապատասխանաբար ձեր արտաքին էներգիայի աղբյուրի +ve և –ve տերմինալներին համապատասխանաբար) տախտակի վրա.
  • կամ ձեր CloudX USB փափուկ քարտի մոդուլի միջոցով:

Ինչպես հստակ պատկերված է վերը նշված սխեմատիկ դիագրամում, LED- ները դասավորված են այնպես, որ երբ դրանք լուսավորվում են, ցույց են տալիս թվերը, ինչպես ցույց կտային իսկական զառախաղը: Եվ մենք աշխատում ենք LED- ների երկու հավաքածուի հետ `զառերի երկու առանձին կտոր ներկայացնելու համար: Նրանք բոլորը կապված են ընթացիկ խորտակման ռեժիմում:

LED- ների առաջին խումբը `D1, D2, D3, D4, D5, D6 և D7; միացված են MCU- ի կապումներին ՝ համապատասխանաբար P1, P2, P3, P4, P5, P6 և P7, 10Ω ռեզիստորների միջոցով: Քանի որ մյուս խումբը `D8, D9, D10, D11, D12, D13 և D14, միացված են MCU- ի կապումներին `համապատասխանաբար P9, P10, P11, P12, P13, P14 և P15, համապատասխանաբար, 10Ω ռեզիստորների միջոցով:

Այնուհետև, կոճակով անջատիչ SW1- ը, որի միջոցով մենք պատահական թվերի ստեղծում ենք անջատիչ մամլիչի միջոցով, միացված է MCU- ի P16 կապին `օգտագործելով 10kΩ քաշող դիմադրություն:

Քայլ 4. Գործողության սկզբունքները

Գործարկման ժամանակ LED- ները սովորաբար անջատված են `նշելու համար, որ համակարգը պատրաստ է ցուցադրման համար ստեղծվող նոր պատահական համար: Անջատիչ սեղմման դեպքում 1 -ից 6 -ի միջև պատահական թիվ է ստեղծվում և ցուցադրվում է LED- ների միջոցով. և մնացեք միացված, երբ այլ սեղմիչ նորից կատարվի:

Քայլ 5: ԿՈԴ

#ներառում

#ներառում

#սահմանել անջատիչ 1 փին 16

#սահմանեք սեղմված LOW

/ *պարունակում է զառերի օրինակներ, որոնք պետք է դուրս գան LED- ների վրա */

անստորագիր նշան = {0, 0x08, 0x14, 0x1C, 0x55, 0x5D, 0x77};

անստորագիր char i, dice1, dice2;

setup () {// setup here / *կարգավորում է նավահանգստի կապում որպես ելք * /portMode (1, OUTPUT); portMode (2, 0b10000000); / *սկզբում անջատում է բոլոր LED- ները */ portWrite (1, LOW); portWrite (2, LOW); randNumLimit (1, 6); // հոգ է տանում randomNumber սերնդի տիրույթի մասին (այսինքն ՝ min, max)

հանգույց () {

// Programրագիր այստեղ եթե (switch1 սեղմված է) {while (switch1- ը OWԱOWՐ է); // սպասում է այստեղ մինչև անջատիչը թողարկվի dice1 = randNumGen (); // առաջացնում է պատահական թիվ dice1- ի համար dice2 = randNumGen (); portWrite (1, մեռնել [զառախաղ 1]); // բերում է զառերի ճիշտ օրինակը և ցուցադրում այն portWrite (2, մեռնում [զառ 2]); } else {portWrite (1, մահանալ [զառախաղ 1]); portWrite (2, մեռնել [զառ 2]); }}} // Endրագրի ավարտը

Խորհուրդ ենք տալիս: