Proiectul constă într-un dispozitiv capabil să înregistreze și să redea sunete de beatbox și nu numai. Funcționalitatea de bază ar trebui să fie pentru sunete scurte însă în funcție de capacitatea memoriei se pot înregistra și sunete lungi și să le redea instantaneu. În varianta finală, proiectul ar trebui să ofere relaxare și amuzament și un mod a-ți exersa sunete de beatbox și a le combina pentru a obține piese întregi.
Se folosește o matrice de 4×4 butoane luminate. Pentru fiecare buton se va putea asigna câte un sunet care să fie redat printr-un mic difuzor. Pentru a ține minte fiecare sunet cărui buton este asignat voi folosit un card de memorie care conțină datele necesare. Se va folosi un microfon pentru a da sunetele care urmează a fi redate. Va exista un mod prin care să se șteargă un sunet asignat unui singur buton în caz că nu este cel dorit.
Am implementat practic 2 funcții de bază: record și play.
Pentru a înregistra am folosit o frecvență de 16 kHz creată cu întreruperi pe timer0 și timer1. Sunetul nu este de cea mai bună calitate pentru că aș fi avut nevoie de 2 timere cu registre pe 16 biți pentru o calitate mai mare. Pe lângă întreruperile astea am mai folosit întreruperea de la ADC pentru a lua valorile de la microfon.
Pentru redare folosesc tot 2 timere asemănător cu ceea ce este în laboratorul 4 doar că funcția mea se oprește când fișierul se ajunge la finalul fișierului.
Sunetele sunt înregistrate pe un card SD.
Pentru butoane am economisit pini. Am 16 butoane însă nu folosesc 16 pini, folosesc doar 8 astfel: setez pinii de linie ca output și apoi parcurg fiecare pin de coloană pentru a vedea care sunt apăsați și astfel știu care buton este apăsat.
Codul nu este complicat însă a fost greu să fac fiecare componentă în parte să funcționeze așa cum ar trebui.
Pentru microfon am făcut un amplificator după următoarea schemă:
Pentru a proteja pinul pe care se află difuzorul am folosit un tranzisto NPN cu o rezinstență în baza acestuia.
Pentru partea de cod el funcționează în felul următor: Butoanele S4, S8, S12 sunt folosite pentru a selecta fișierul în care se dorește înregistrarea. S16 este folosit pentru test pentru a a fi siguri că sunetul pe care dorim să-l înregistrăm se aude cât mai bine.
Proiectul este funcțional, atenție când se reutilizează codul. Se poate extinde ușor la un număr mai mare de butoane în limita pinilor disponibili. În momentul când am reușit să-l fac să meargă a fost cea mai mare satisfacție. A fost interesant să văd cum funcționează întreruperile și timer-ele pentru a înregistra și reda sunet.
19.04.2019 - Alegere temă proiect
24.04.2019 - Finalizare lipire componente de bază
05.05.2019 - Finalizat schemă electrică
17.05.2019 - 23.05.2019 - Remediere probleme cod laborator și nu numai
23.05.2019 - Finalizare proiect
datasheet PM 2019 Pagină PDF