Mădălina HURMUZ (78488) - Piano Hero

Autorul poate fi contactat la adresa: Login pentru adresa

Introducere

Proiectul ales de mine este un joc care își propune să fie distractiv și ușor de utilizat. Scopul în sine al proiectului este mai mult unul didactic, deoarece pe piață exista deja foarte multe versiuni ale acestui joc.

Ideea de la care am plecat a fost jocul Guitar Hero. Aceasta este unul din jocurile cele mai populare ale anilor 2005 - 2010 și continuă să fie foarte îndrăgit până în ziua de azi. Proiectul meu va fi mai simplist decât jocul în sine: se vor reda sunete, utilizatorul recunoaște și apasă pe tastatură, iar, în funcție de cât se apropie de sunetele redate, se va afișa un scor pe ecran.

Consider ca proiectul meu este util, în primul rând, pentru mine, deoarece până acum nu am făcut ceva asemănător, iar, pentru ceilalți, va fi o modalitate bună de a se distra la târgul de proiecte. :)

Descriere generală

Schema bloc a proiectului este:

Câteva detalii despre fiecare modul și felul în care interacționează:

  • Modulul “Butoane de control” va avea o serie de butoane care controlează funcționarea jocului. De exemplu, se va putea cicla prin lista de melodii sau se va schimba secțiunea din melodie.
  • Modulul “Claviatură” va cuprinde 8 butoane (corespunzătoare 8 tonuri dintr-o octavă).
  • Difuzorul va emite note muzicale atunci când sunt apăsate butoanele de pe claviatură sau când se redau porțiuni de melodii.
  • Pe ecranul LCD vor fi afișate informații despre melodia curentă și scorul utilizatorului.

Hardware Design

Lista inițială de piese:

  1. Placa de bază cu ATMega324A-PU (1 bucată)
  2. Butoane (control + claviatura) (12 bucăți)
  3. Rezistențe 1KΩ (8 bucăți)
  4. Buzzer pasiv (1 bucată)
  5. Ecran LCD (1 bucată)

*Adăugat la 5.05.2018

  • O mie de fire mama-mama, mama-tata, tata-mama
  • 8 led-uri rosii
  • Placa de test

Scheme electrice

Software Design

Mediul de dezvoltare 8-O

Am folosit pentru a dezvolta proiectul urmatoarele:

Biblioteci utilizate m(

Singura biblioteca de care a fost nevoie pentru realizarea proiectului a fost, din fericire, biblioteca folosita pentru LCD din laboratorul 1. A fost nevoie de cateva modificari pentru definirea piniilor folositi in conectare, dar, in rest, conectarea LCD-ului cu restul montajului nu a fost dificila.

Noi schimbari la LCD - 25 MAI Biblioteca folosita pentru LCD

Logica 8-) Jocul se va desfasura in felul urmator: se vor alege random cateva note si se va canta o melodie. Mai apoi, utilizatorul va trebui sa incerce sa reproduca sunetele auzite si, in urma acuratetii va primi un scor. La final se va afisa pe ecran scorul. Dificultatea in scrierea codului a fost doar modalitatea de a incerca sa scriu un cod care sa nu foloseasca BUSY-WAITING, ci intreruperi.

Rezultate Obţinute

Am reusit sa conectez toate piesele pe care le avem initial in plan. Dupa cum se vede, se deschide mai intai ecranul afisand numele jocului si creatoarea (eu 8-O), apoi utilizatorul va fi invitat sa cante pe cele 8 note, fiecare nota va fi redata pe buzer, iar mai apoi se afiseaza un scor. Pentru demonstratii, PM fair 8-)

Concluzii

Cred ca as putea vorbi foarte mult despre tot ce cred eu despre acest proiect. Desi ma declar o iubitoare de algoritmi, limbaje functionale, metode numerice si alte nebunii facute in facultate, sa lucrez la proiectul de PM nu a fost cel mai rau lucru. Arareori, chiar mi-a placut. As fi vrut si mai mult timp pentru o mai buna implementare si software, dar, cred ca o persoana care a pornit ca mine de la 0, sa ajunga la ceva functional e cel mai mare progres, deci, personal, I'm happy:) Partea mea preferata a fost sa aranjez proiectul, sa-l pun intr-o cutie, sa-l impachetez, sa decupesc, sa lipesc si, daca nu e cel mai bun proiect de la PM fair, va fi cel mai cu stil. ^_^

Download

Jurnal

  • 19 Aprilie: Alegerea proiectului și aprobarea de către asistent.8-o
  • 22 Aprilie: Adăugarea schemei bloc.:-D
  • 5 Mai: Adăugarea schemei electrice.8-O
  • 9 Mai: Nimic functional, pe langa placa de baza.:-(
  • 16 Mai: Inca nimic functional, pe langa placa de baza.:-(:-(:-(
  • 19 Mai: Fludor ✔, letcon ✔, pompa ✔, lipit ✔.8-)
  • 20 Mai: Procesul continua.:-|
  • 21 Mai: Procesul inca continua…m(
  • 22 Mai: Schimbare LCD, buzzer functional ✔.
  • 23 Mai: Butoane functionale ✔, LCD functional ✔.
  • 23 Mai: Schimbarea schemei eletrice.LOL
  • 24 Mai: Scriem cod 8-O
  • 24 Mai: Ora 23:44 - Am schimbat LCD-ul cu LCD-ul initial. Munca si lipitul continua.
  • 25 Mai: Invatam si noi pentru prima oara sa folosim intreruperi. GG Madi :*

Bibliografie/Resurse

Resurse software

Wiki-ul de PM: http://cs.curs.pub.ro/wiki/pm/start

Datasheet ATMega324: http://cs.curs.pub.ro/wiki/pm/_media/doc8272.pdf

Resurse hardware

Sfaturile necontenite, venite la orice ora din zi sau din noapte de la indrumatorul meu LOL

pm/prj2018/dghilinta/29.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