Nenaprogramujem ti Mastermind! Postupuj podľa etického kódexu študenta tvojej univerzity!

Hra je určená pre dvoch hráčov, ktorí hru hrajú


Hráč 1 (háda)


  • Úlohou hráča je uhádnuť čísla druhého hráča a aj ich poradie
  • Hráč na vstup do systému využíva 5x pushbutton, pričom 4 z tlačidiel fungujú ako inkrementátor čísla na tej danej pozícii v rozsahu 0-9.
  • Piatym tlačidlom sa údaje odošlú na kontrolu. Priráta sa pokus, vyhodnotí sa kombinácia.
  • Dáta sa zapisujú a sú vizualizované aj na LCD displej.
  • V prípade, že hráč uhádne číslo a aj jeho pozíciu, rozsvieti sa zelená dióda na tej danej pozícii.
  • V opačnom prípade pri neuhádnutí čísla, respektíve pri uhádnutí čísla ale neuhádnutí pozície sa zosvieti červená dióda na znak nepravdy.
  • Pre hráča sa hra končí pri presiahnutí 10 pokusov, alebo pri uhádnutí kombinácie.

  • Hráč 2 (určuje kombináciu farieb a poradia)


  • V úlohe mikrokontróler Arduino Uno, alebo iný, prípadne AtMega čip.
  • Vygeneruje číslo 0000-9999, ktoré bude hráč hádať
  • Odoslané dáta od používateľa overí jednoduchou podmienkovou logikou
  • V prípade uhádnutia farby i pozície rozsvieti príslušnú diódu na zeleno.
  • V prípade neuhádnutia farby, alebo pozície rozsvieti príslušnú diódu na červeno.
  • Arduino overuje aj počet krokov (ťahov), ktoré hráč použil, skúma, či je hra ukončená.
  • Hra sa končí, ak hráč 1 uhádne všetky čísla aj ich pozície (všetky 4 diódy budú zelené), vstup sa zablokuje, alebo pri neúspešnej hre s dosiahnutím 10 pokusov.
  • O stave hry je používateľ vždy informovaný na displeji.

  • Hardvér pre projekt

  • Arduino Uno R3
  • 4x RGB LED WS2812 (jeden modul)
  • 5x tlačidlo - spínacie
  • LCD 20x4 alebo 16x2
  • I2C prevodník pre LCD
  • Zapojenie



    LCD displej s I2C prevodníkom Arduino Uno
    Vcc 5V
    GND GND
    SDA A4 (SDA)
    SCK/SCL A5 (SCK/SCL)
    Pushbutton Arduino Uno
    IN 1 D6
    IN 2 D5
    IN 3 D4
    IN 4 D3
    Enter D2
    RGB led diódy Arduino Uno
    DIN D13
    GND GND
    5V -
    5V pin sa pripája na externý zdroj z dôvodu veľkého nárazového odberu prúdu zvlášť pri rozsvietení všetkých diód, rádovo 200mA.

    Zapojenie