This is an old revision of the document!


Mini Pian Electric

Introducere

Proiectul reprezinta un mini pian electric ce permite:

  • interpretarea unor melodi formate din cateva note muzicale
  • inregistrarea unei melodii
  • redarea ultimei melodii inregistrate

Mini pianul electric reprezinta un instrument conceput pentru relaxarea si petrecerea timpului liber intr-un mod placut. Scopul sau este acela de a fi o unealta anti-stress ce ofera o flexibilitate de exprimare artistica a utilizatorului.

Descriere generală

Structura mini pianului este formata din:

  • blocul “butoane de control” reprezinta butoanele prin intermediul carora se schimba starea de functionare actuala a pianului
  • blocul “butoane muzicale” reprezinta tastele pianului, la a caror apasare se va emite sunetul corespunzator
  • blocul “buzzer” reprezinta difuzorul pianului
  • blocul “leduri de indicare” va semnala tastele apasate, respectiv starea curenta a pianului

Schema bloc

{{ :pm:prj2023:alexau:diagrama_pian_fara_titlu.drawio_1_.png?300 |

Toate componentele interactioneaza prin intermediul microcontrolerului. Cele 2 butoane de control, insotite de ledurile corespunzatoare vor schimba starea curenta a mini pianului astfel:

  • butonul 1 va schimba starea din “free play” in “record” si invers (pentru oprirea inregistrarii)
  • butonul 2 va porni redarea ultimului cantec inregistrat (ledurile corespunzatoare notelor aprinzandu-se corespunzator)

Hardware Design

Schema mini pian

Pianul este realizat din:

  • 7 leduri
  • 7 butoane (5 muzicale si 2 de control)
  • un buzzer
  • placuta arduino uno

Software Design

Pentru dezvoltarea softwareului am folosit ide-ul arduino ca mediu de dezvoltare.

Scurta descriere a codului Prin intermediul intreruperilor pcint se verifica daca un buton este apasat si se apeleaza functia playSound respectiv stopSound. Daca modul record este activat se va retine la apasare si durata apasarii pentru redare. La modul de redare se emite sunetul pentru durata de timp inregistrata, ne mai fiind nevoie de apelarea functie de stopSound. In timpul redarii cantecului inregistrat ledul de avertisment va clipi pentru a avertiza ca cantatul liber si inregistratul nu sunt disponibile pana la incheiere melodiei. Modificare starii ledului se face la un interval periodic de timp, determinat de intreruperea unui timer. Cantecul inregistrat se retine sub forma unui vector de note si duratii ce sunt parcurse daca modul de redare este activ.

Rezultate Obţinute

Care au fost rezultatele obţinute în urma realizării proiectului vostru.

Concluzii

Download

O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului: surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-).

Fişierele se încarcă pe wiki folosind facilitatea Add Images or other files. Namespace-ul în care se încarcă fişierele este de tipul :pm:prj20??:c? sau :pm:prj20??:c?:nume_student (dacă este cazul). Exemplu: Dumitru Alin, 331CC → :pm:prj2009:cc:dumitru_alin.

Bibliografie/Resurse

Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe Resurse Software şi Resurse Hardware.

Export to PDF

pm/prj2023/alexau/minipianelectric.1685048097.txt.gz · Last modified: 2023/05/25 23:54 by ionela.anghel2002
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