Mixer Beatbox

Autor

Introducere

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.

Descriere generală

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.

Schemă bloc

Hardware design

  1. PCB PM2019
  2. Microcontroller ATMega324
  3. Matrice de butoane led (Button Pad 4×4 - LED Compatible)
  4. Card de memorie
  5. Microfon
  6. Difuzor (Difuzor SparkFun 0.25W)
  7. altele (fire, rezistențe, diode, …)

Schemă electrică

Software Design

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.

Rezultate Obţinute

Modul card, convertor USART-USB, matrice de butoane Difuzor și microfon Proiect total

Concluzii

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.

Download

Jurnal

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

Demo

Bibliografie/Resurse

datasheet PM 2019 Pagină PDF

pm/prj2019/dionita/mixer-beatbox.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