Cross Sum Puzzle

Introducere

Sunt o persoană căreia îi plac foarte mult puzzle-urile și sunt mereu în căutarea unor noi forme de a-mi exersa mintea.

Din întâmplare, în iarnă, mă cam plictisisem de sudoku și am dat peste
un joc în AppStore (Puzzle Page) ce întrunește foarte multe tipuri de puzzle-uri de care nu mai auzisem până atunci, printre care și Cross Sum.

La prima vedere, pare un joculeț foarte simplu în comparație cu Sudoku - considerând doar faptul că ai de pus în grid de 9 ori mai puține cifre.

Însă, am rămas plăcut surprinsă să văd că un astfel de puzzle îți poate luam cam același timp de rezolvare ca și cel mai greu Sudoku.

Cross Sum este un puzzle matematic în care trebuie să introduci fiecare cifră de la 1 la 9 o singură dată într-un grid pentru a satisface simultan 6 ecuații diferite.

De precizat este faptul că ordinea operațiilor nu este cea de la matematică ci ce iau de sus în jos în cazul ecuației coloană și de la stânga la dreapta în cazul ecuației rând.

Proiectul constă în implementarea puzzle-ului pe LCD și îi permite utilizatorului să îl rezolve cu ajutorul butoanelor, reprezentând astfel un mod de a-ți exersa mintea dar și de a te relaxa!

Descriere generală

Modul de funcționare:

LCD-ul va afișa grid-ul corespunzător nivelului la care se va afla utilizatorul - acesta conținând operațiile aritmetice și rezultatele ce trebuie obținute în dreapta fiecărei linii și sub fiecare coloană - aferente fiecărei ecuații.

Utilizatorul se va putea deplasa dintr-o căsuță în alta prin intermediul a 4 butoane(UP, DOWN, LEFT, RIGHT).

În momentul în care utilizatorul se afla într-o căsuță goală, prin apăsări repetate ale butonului 5 se va cicla între cifrele posibile iar acestea vor apărea pe rând în căsuța curentă. În momentul în care se decide asupra cifrei finale, ultima cifră setată va rămâne în grid în momentul în care se va trece la altă căsuță.

Schema bloc

Hardware Design

Piese necesare:

  • Placa de Bază
  • Piesele de Bază
  • LCD Nokia 5110
  • 5 Butoane
  • Placă PCB
  • Fire Mamă-Mamă

Schema electrică

Software Design

Mediu de dezvoltare: Visual Studio

Inițial pe LCD se va afișa “CROSS SUM” urmând să apară pe ecran mesajul “Press any button to start the game”. Odată apăsat unul dintre butoanele de pe plăcuța de test va porni jocul începând cu nivelul 1.

Jocul are 3 nivele.

Pentru fiecare nivel completat corect se va afișa mesajul “DONE!”. La finalul fiecări nivel există opțiunea de “replay” sau “next”. Pentru selectarea funcției de replay trebuie apăsat butonul LEFT, iar pentru următorul nivel trebuie apăsat butonul RIGHT.

La finalul jocului (după rezolvarea nivelului 3) exista două posibilități: de a relua nivelul 3 sau opțiunea de a încheia jocul cu aceleași posibilități de apăsare butoane LEFT / RIGHT.

Dacă alegem să terminăm jocul, acesta ne va întreba dacă vrem să jucăm din nou (“Play again?”). Apăsând pe LEFT(Yes) vom relua jocul începând cu nivelul 1 iar pentru varianta RIGHT(No) se va afișa mesajul “Well Done! Thank you!”.

Pentru navigare între căsuțe se folosesc cele 4 butoane UP/DOWN/LEFT/RIGHT iar pentru ușurință va fi afișat un punctuleț ce îți arată în ce căsuță te afli la momentul respectiv. Pentru selectarea uneia dintre cele 9 cifre posibile de completat se folosește butonul din mijloc ce navighează incremental între acele valori.

Pentru LCD-ul Nokia 5110 am folosit biblioteca avr-nokia5110 care mi-a pus la dispoziție funcțiile de afișare.

Rezultate Obținute

Concluzii

A fost un proiect foarte interesant deoarece am reușit să-mi transpun jocul preferat în propria consolă programată special de mine.

Chiar dacă am plecat de la așteptări 0, am reușit să duc la bun sfârși proiectul - acesta ieșind chiar drăguț și cum mi-am propus și, evident, perfect funcțional.

El poate fi extins foarte ușor adăugând mai multe nivele dar și noi funcționalități.

Download

Jurnal

07.05.2019 - am terminat de lipit componentele pe placuța de bază

14.05.2019 - am reușit să conectez LCD-ul și am pregătit butoanele de lipit pe placa PCB

21.05.2019 - am conectat și butoanele la placa de bază

23.05.2019 - am terminat de scris partea software și de testat proiectul final

Bibliografie/Resurse

pm/prj2019/ostiru/crosssum.txt · Last modified: 2021/04/14 17:07 (external edit)
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0