Iliescu Valentina-Florentina -- Pian Digital

Introducere

Acest proiect se referă la implementarea unui pian digital care să poată ajuta utilizatorul în învățarea unei melodii urmând notele de pe LCD. Proiectul este realizat cu scop didactic în ceea ce privește teoria muzicală.

Descriere generală

Pe lângă funcționalitatea de bază de a reda notele dintr-o gamă cu ajutorul unor butoane și al unui difuzor, proiectul oferă și posibilitatea de a cânta o melodie urmărind pas cu pas notele afișate pe LCD. În plus, utilizatorul poate schimba gama în care dorește să cânte. La finalul interpretării unei melodii acesta își poate reda melodia cântată de el la pian, dacă înainte a optat și pentru înregistrarea ei. Trecerile între aceste stări de play, learn, recording se face cu ajutorul unor butoane, iar schimbarea unei game se realizează tot cu ajutorul unui buton. Schimbările între modurile de utilizare ale pianului vor fi vizibile prin modificările culorilor unor led-uri RGB.

Schema bloc

pm_bloc.jpg

Hardware Design

Schema electrică

Clape

clape.jpg

Led-uri clape

led_clape.jpg

Butoane control

control.jpg

Led RGB moduri pian

led_rgb.jpg

Speaker

speaker.jpg

LCD

lcd.jpg

Listă piese

  • 12 butoane – clape + control moduri
  • 1 Speaker
  • 8 Led-uri simple
  • Cabluri
  • 1 LCD
  • Perfboard
  • 8 Rezistori 220 Ohm
  • Headere de pini
  • 1 Condensator 100uF

Software Design

Am reusit sa implementez aproape toate functionalitatile pe care mi le propusesem. Mai exact pianul poate pe langa interpretarea obisnuita a unei melodii, sa inregistreze si sa redea melodia inregistrata si sa redea o melodie in modul de learning. Nu am reusit sa implementez schimbarea unei game deoarece am constatat destul de tarziu ca 4 pini sunt folositi pe placa de baza. Astfel am ramas fara pini pentru a mai rezolva si aceste functionalitati.

Ca implementare software, programul se foloseste de intreruperi pentru a detecta cand sunt apasate butoanele de pe claviatura si butoanele de control. Speaker-ul este controlat prim PWM de pe pinul PD4. Am implementat functiile de baza care ajuta la aprinderea, stingerea unui led, redarea unei note, afisarea pe LCD, pentru a fi mai usor de urmarit codul.

Rezultate Obtinute

iv_img2.jpg

iv_img1.jpg

Concluzie

Mi-a facut placere sa lucrez la acest proiect mai ales ca imi doream sa fac un lucru orientat mai mult spre dificultate hardware. Astfel ca am reusit sa gasesc un proiect la care sa petrec destul de mult timp la lipit componente si la imbinarea lor.

Cod sursa

Bibliografie/Resurse

Pagina format PDF

  • Laborator 3 exercitiul 6
  • Schema electrica placa de baza
  • Biblioteca LCD din laborator
pm/prj2019/mandrei/29397.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