Teodora GULIE (78492) - Pianul electronic

Autorul poate fi contactat la adresa: Login pentru adresa

Introducere

Proiectul consta in construirea unui pian electronic ce il va invata pe utilizator sa cante niste melodii selectate. Astfel, atunci cand o melodie este aleasa, se vor aprinde ledurile din dreptul butoanelor asociate notelor muzicale, astfel incat prin apasarea acestora se vor auzi diverse sunete ce vor alcatui melodia dorita.
Ideea a pornit de la dorinta de a canta la pian, insa neavand cunostintele necesare, mi se pare folositor un dispozitiv ce ne invata sa cantam o melodie prin sugerarea “clapelor” ce trebuie apasate.

Descriere generală


Cu ajutorul butoanelor de control: inainte, inapoi si play va fi selectata o melodie. Atunci cand o melodie este setata pe modul play, placuta va incepe sa aprinda led-urile aferente notelor muzicale ale piesei, iar utilizatorul va apasa unul dintre cele 8 butoane, adica butonul asociat ledului care s-a aprins pentru nota muzicala curenta. Buzzer-ul va difuza sunetul specific notei muzicale -o anumita frecventa si/sau durata .

Hardware Design

Lista de componente

  • placa de baza
  • 8 leduri
  • difuzor
  • 2 butoane pentru meniul de alegere a piesei si unul pentru play/stop
  • 8 butoane pentru claviatura
  • 8 rezistente de 1k pentru leduri
  • condensator de 10uf pentru buzzer
  • 11 rezistente de 10k pentru butoane

Schema electrica

Software Design

Mediu de dezvoltare:

Descriere software:

  • Am retinut notele fiecarui cantec in cate un vector.
  • Am retinut pinii asociati ledurilor si butoanelor in cate un vector.
  • Fiecarei nota i-am asociat o anumita frecventa ( crescatoare).

Functii

  • init_piano(): seteaza butoanele ca intrare, activeaza rezistentele de pull-up, seteaza ledurile ca iesire.
  • nota_pian: primeste o nota si cu ajutorul difuzorului, conectat la PD4 este redata nota.
  • play: prin aceasta functie, putem canta la pian astfel: daca am apasat un anumit buton, va canta nota asociata lui si va aprinde led-ul din dreptul sau.
  • piano_play: cu ajutorul a doua butoane conectate la PD0 si PD1 vom selecta de melodie vrem sa cantam. Se aprinde led-ul asociat tastei respective, si acesta se va stinge in momentul in care apasam butonul pentru nota corecta, timp in care va fi reda si sunetul aferent.

Rezultate Obţinute

Rezultatele obtinute au fost cele dorite: pot canta ce melodie doresc apasand butoane asociate notelor muzicale si totodata pot selecta o melodie pe care sa o cant, apasand taste asociate ledurilor aprinse care reprezinta urmatoarea nota pe care trebuie sa o cant.

Concluzii

Proiectul a fost interesant intrucat a fost prima oara cand am lipit piese, le-am conectat intre ele si asta consider ca m-a ajutat semnificativ sa inteleg niste notiuni teoretice pe care le-am invatat in decursul facultatii. De asemenea, rezultatul final este o placuta functionala pe care o pot folosi pe post de pian.

Download

Jurnal

  • Milestone 1: placa de baza
  • Milestone 2: lipire componente pe placa de test
  • Milestone 3: scrierea codului, debug, conectare hardware si testare
  • Milestone 4: scriere documentatie

Bibliografie/Resurse

  • Documentația în format PDF
pm/prj2018/abirlica/841996.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