Autorul poate fi contactat la adresa: Login pentru adresa
In cadrul acestui proiect, se va simula utilitatea unui pian cu 8 taste, corespondente notelor din gama. Prin apasarea fiecarui buton, va fi redat un sunet prin difuzor. De asemenea, se vor putea retine o serie de fragmente inregistrate si redate ulterior.
Setul de butoane este input pentru notele din gama, iar butoanele de selectie sunt input pentru decizia de a inregistra, reda fragmente muzicale sau alte optiuni. Ca output, proiectul reda sunetele prin Buzzer si afiseaza si secventa de note pe LCD, sub format text, pentru o interpretare mai facila.
Piesele folosite:
Pentru implementarea software-ului pentru acest device, s-a folosit Programmer's Notepad, la fel ca in cadrul laboratoarelor de PM.
Librariile de care a fost nevoie sunt avr/io.h avr/interrupt.h.
Pentru executie, avem nevoie de cele 2 fisiere: piano.c si piano.h.
Se utilizeaza vectorul de frecvente preluat din scheletul de laborator:
float frecv[8] = { 261.63, 293.66, 329.63, 349.23, 392.0, 440.0, 493.88, 523.25 };
Fiecare nota se reda in felul urmator:
void reda_nota(unsigned int x) { float perioada = 100000 / x; for(int j = 0;j < perioada / 2;j++) _delay_us(1); for(int j = 0;j < perioada / 2;j++) { PORTD ^= (1 << PD5); _delay_ms(2); } for(int j = 0;j < perioada / 2;j++) _delay_us(1); }
Am obtinut un device care poate fi comparat cu un pian electric destul de minimalist.
Astfel, sunetele se rezuma la doar 8 taste, fiecare reprezentand notele DO RE MI FA SOL LA SI DO.
A fost interesant sa lucrez la primul meu proiect care implica si constructia hardware.
Desi a fost dificil de inteles de unde sa incep, ulterior lucrurile au ajuns la forma finala destul de usor. De asemenea, asistentii de la laboratoare au fost foarte de ajutor.
19 aprilie 2016 Am terminat de lipit placa de baza.
3 mai 2016 Am terminat de lipit cea de-a doua placuta.
3-20 mai 2016 Retusuri.
24 mai 2016 Am terminat implementarea software.
1. Laboratoare PM.
2. Hall of Fame proiecte PM