This is an old revision of the document!
Sintetizator MIDI
Introducere
Proiectul este un sintetizator cu input MIDI. Acesta va primi semnale MIDI de la un controller (in cazul meu o claviatura) si va genera unde audio pe baza notei apasate. Totodata sintetizatorul va putea reda fisiere MIDI de pe un card SD. Un ecran va afisa in timp real ce nota este redata si in ce mod de input este dispozitivul.
Descriere generală
Clapa va trimite semnale MIDI catre USART.
Microcontrollerul va procesa aceste semnale, activand un semnal PWM corespunzator notei primite, iar ieșirea va fi transmisa catre un difuzor sau o mufa audio.
Un buton va fi utilizat pentru a comuta intre doua moduri de input: claviatura live sau citirea unui fisier MIDI de pe cardul SD.
Ecranul va comunica prin protocolul I2C.
Cititorul de carduri SD va comunica cu microcontrollerul prin SPI.
Circuitul de iesire consta intr-un amplificator si un filtru trece-jos RC pentru a reduce zgomotul din semnalul audio si a proteja pinii de PWM.
Hardware Design
Lista componente
Nr. | Componentă | Cantitate | Info |
1 | Arduino Nano | 1 | Microcontroler |
2 | Conector DIN 5 pini mama | 1 | Input pentru clapa |
3 | octocuplor 4n25 | 1 | Pentru a proteja arduino-ul folosit in circuitul de input |
4 | dioda de protectie | 1 | Pentru a proteja led-ul octocuplorului |
5 | rezistente de pull up | 2 | Pentru buton si inputul midi |
6 | Modul micro sd | 1 | interfata cu sd cardul SPI |
7 | Ecran oled | 1 | I2C |
8 | Rezistente 10K ohmi | 3 | Protejeaza pinii de output PWM in caz de numai unul genereaza semnal |
9 | Potentiometru 100k ohmi | 1 | Pentru filtru trece jos |
10 | Condensator 10nF | 1 | Pentru filtru trece jos |
11 | Modul amplificator lm386 | 1 | Amplifica semnalul pentru a proteja pinii de output |
12 | Speaker 1W | 1 | - |
Schema Electrica
Aici puneţi tot ce ţine de hardware design:
listă de piese
-
diagrame de semnal
rezultatele simulării
Software Design
Descrierea codului aplicaţiei (firmware):
mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR)
librării şi surse 3rd-party (e.g. Procyon AVRlib)
algoritmi şi structuri pe care plănuiţi să le implementaţi
(etapa 3) surse şi funcţii implementate
Rezultate Obţinute
Care au fost rezultatele obţinute în urma realizării proiectului vostru.
Concluzii
Download
O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului: surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună

.
Fişierele se încarcă pe wiki folosind facilitatea Add Images or other files. Namespace-ul în care se încarcă fişierele este de tipul :pm:prj20??:c? sau :pm:prj20??:c?:nume_student (dacă este cazul). Exemplu: Dumitru Alin, 331CC → :pm:prj2009:cc:dumitru_alin.
Jurnal
Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului.
Bibliografie/Resurse
Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe Resurse Software şi Resurse Hardware.
Export to PDF