Proiectul consta in realizarea unui pian ce va avea 2 moduri de utilizare. Acestea sunt modul free play si modul guided. In modul guided, pentru fiecare nota muzicala dintr-o melodie aleasa, se va aprinde un led ce se afla langa butonul aferent acelei note, ghidand astfel utilizatorul.
Utilizatorul va alege unul dintre modurile pianului apasand pe un buton. Pianul va porni by default in modul free play. Dupa ce a fost ales modul de utilizare, utilizatorul poate apasa butoanele aferente notelor muzicale. La primirea unui semnal de la un buton, buzzerul va reproduce nota aferenta butonului. In modul guided, un led alaturat butonului se va aprinde si va indica utilizatorului ce buton trebuie apasat pentru a reproduce corect melodia.
In setup am setat intreruperile pe pinii pe care aveam butoane.
In loop, in modul guided al pianului am aprins ledul corespunzator notei care trebuie apasate.
In functiile ISR am preluat intreruperile de la butoane si am cantat nota corespunzatoare butonului folosind tone sau am schimbat modul / melodia.
Melodiile alese au fost scrise in intr-o singura octava.
Consider ca proiectul m-a ajutat sa imi consolidez informatiile invatate le laborator si m-a ajutat si sa vad cat de interesant este lucrul cu diferinte componente. Dificultati: numarul limitat de pini de pe placa arduino, problema pe care am rezolvat-o reducand numarul de butoane necesare.