विषयसूची:

ऑटोट्यून: 7 कदम
ऑटोट्यून: 7 कदम

वीडियो: ऑटोट्यून: 7 कदम

वीडियो: ऑटोट्यून: 7 कदम
वीडियो: How to use AUTOTUNE to get the Perfect Vocal Every Time - Advanced Mix & Master Series - Lecture 13 2024, जुलाई
Anonim
ऑटोट्यून
ऑटोट्यून

बिएनवेन्यू और नोट्रे प्रोजेक्ट ऑटोट्यून

नोट्रे इक्विप वा वोस प्रेज़ेंटर ला रियलाइज़ेशन डे सीई प्रोजेक्ट। Notre équipe est composée de 3 élèves ingénieurs de Polytech Sorbonne en EISE4 (4ème année du cycle ingénieur en électronic infomatic systèmes embarqués)।

नोट्रे प्रोजेक्ट कंसिस्टे émettre un son capter par un micro, émit par un haut parleur et afficher la FFT sur un écran PC। इल सेरा संभव डी मॉडिफ़ायर ले सोन ऑडियो कम ले वॉल्यूम एट क्रेयर अन इको।

C'est parti ने लेस एक्सप्लोरेशन डाला !!

चरण 1: कम्पोजेंट्स यूटिलिसेस

  • कार्टे डीईओ-नैनो-एसओसी
  • बैटरी 2 आउटपुट 5V2A
  • माइक्रो
  • हौट पार्लेर 8 ओह्म
  • नियामक: MAX660
  • कैप्चर आईआर: GP2Y0E02A
  • एम्पली ऑडियो: LM386N-1/NOPB
  • डीएसी: एमसीपी4821-ई/पी
  • डायोड: 1N4148
  • ट्रांजिस्टर: LND150N3-G / N-FET
  • 2 एओपी: TL081C
  • प्रतिरोधों
  • संघनित्र
  • वाईफ़ाई: ESP8266EX
  • 4 स्विच
  • 3 एलईडी डी कूलर्स

चरण 2: वास्तुकला

आर्किटेक्चर
आर्किटेक्चर

वोइसी सी-डेसस नोट्रे स्कीमा ब्लॉक रिप्रेजेंटेंट एल'आर्किटेक्चर डे नोट्रे प्रोजेक्ट ऑटोट्यून।

कॉमे वोस पॉवेज़ ले वोइर, नोट्रे प्रोजेक्ट और पॉवोइर कैप्टर अन सन ए एल'एड डू माइक्रो नॉट ले सिग्नल एनालॉग कैप्टे सेरा कन्वर्टी एन सिग्नल न्यूमेरिक डोंट एल'एडीसी इस्ट इंटेग्रे डांस ला कार्टे एफपीजीए। पुइस ले सिग्नल सेरा मोडिफिए सेलोन नोस इफेट्स चॉइसिस ए एल'एड डी'उन कैप्टेर डी प्रॉक्सिमाइट एट डेस स्विच। एनफिन, ले सिग्नल मोडिफिए डेपुइस ला कार्टे सेरा रिकॉनवर्टी एन अन सिग्नल एनालॉग एट सेरा ट्रांसमिसे ए ट्रैवर्स ले हाउत पार्लेर।

चरण 3: पार्टी एनालॉग

पार्टी एनालॉग
पार्टी एनालॉग
पार्टी एनालॉग
पार्टी एनालॉग
पार्टी एनालॉग
पार्टी एनालॉग

नोट्रे पार्टी एनालॉगी इस कंपोज़ी डे 2 सर्किट:

अन प्रीमियर सर्किट क्वी रिप्रेजेंटर ला पार्टी माइक्रो, क्वी सेरा ब्रान्चे एयू कैन डे ला कार्टे एफपीजीए, कंपोज डी अन एम्प्लीफिएटर डे गेन एट डी अन फिल्टर पैसिफ एप्रेस अवॉयर रिक्यूपर ले सिग्नल।

अन ड्यूज़िएम सर्किट क्वि रिपेसेंटरा ला पार्टी हाउट पार्लेउर, क्यूई सेरा ब्रांच ए ला सॉर्टी डे ला कार्टे एफपीजीए, कंपोज़ डू डीएसी, डी अन डिविसेउर डी टेंशन एट डी अन एम्प्लीफाइटर ऑडियो।

Le troisième schéma est celui du regulateur produisant du -5V डाइ एलिमेंटर टौस लेस कम्पोजेंट्स।

चरण 4: इंप्रेशन डेस पीसीबी

इंप्रेशन डेस पीसीबी
इंप्रेशन डेस पीसीबी
इंप्रेशन डेस पीसीबी
इंप्रेशन डेस पीसीबी
इंप्रेशन डेस पीसीबी
इंप्रेशन डेस पीसीबी

अनुरक्षणकर्ता, nous allons créer nos PCB afin de les imprimer et de les relier!

ए एल'एड डू लॉजिकिएल एलीटम, नूस एवन्स पु क्रेयर ड्यूक्स पीसीबी, c'est dire la partie micro et haut parleur। वोइसी ले साइट कॉरेस्पोंडेंट या ट्यूटोरियल ऑल्टियम क्यूई पुट निश्चितमेंट वौस एडर !

चरण 5: पार्टी न्यूमेरिक

पार्टी न्यूमेरिक
पार्टी न्यूमेरिक

पीसीबी को पहले से ही देख लें, और फिर भी एफपीजीए पर ध्यान दें!

पोर ला पार्टी न्यूमेरिक, नूस एवन्स क्रेयर अन कोड सी क्वि इस्ट सेपारे एन ड्यूक्स एन यूटिलिसेंट अन थ्रेड। डी'उन कोटे, ऑन रिक्यूपेयर ले सिग्नल ऑन ले मोडिफी एट ऑन एल'एनवोई वर्स ले डीएसी एन स्पाई। D'un deuxième côté, on calcule la fft et on envoie le resultat par wifi. सेटे सेपरेशन परमेट डी'विटर लेस रैलेंटिसमेंट्स सुर ला प्रीमियर पार्टी।

Qsys et quartus का उपयोग करने पर ब्रांचर ले HPS avec les différents composants डालें। नोटममेंट यूने आईपी एसपीआई का उपयोग करने पर कम्युनिकर एवेक ले डीएसी और उन आईपी यूएआरटी डालें कम्युनिकर एवेक ला कार्टे वाईफाई डालें।

चरण 6: ले कोड

वोइसी ले लियन ओù नूस एवन्स रिक्यूपर ले कोड प्योर फेयर ला एफएफटी।

से कोड का उपयोग करने पर कैलक्यूलर ला एफएफटी डालें:

// क्रिएशन डे ला कॉन्फ़िगरेशन एट डेस बफ़र्स इन एट आउट डालना एस (टी) एट एस (एफ) कॉन्स चुंबन_एफएफटी_सीएफजी कॉन्फिग = चुंबन_एफएफटी_आलोक (एनएफएफटी, 0, न्यूल, न्यूल);

Kiss_fft_cpx* in = (kiss_fft_cpx*)malloc(NFFT*sizeof(kiss_fft_cpx));kiss_fft_cpx* out = (kiss_fft_cpx*)malloc(NFFT*sizeof(kiss_fft_cpx));

के लिए (जे = 0; जे <एनएफएफटी; जे ++) {मान = * h2p_lw_adc_addr; //recupère la valeur provinant du pcb du microin[j].r = Value-2000.0; // रिटायर होने पर l'offset de cette valeurfor(i = 0; i < 2100; i++) {} // अटेंड करें un temps bien précis pose avoir une fréquence d'échantillonnage connue}

// गणना डे ला एफएफटी depuis बनाम outkiss_fft (कॉन्फ़िगरेशन, इन, आउट) में; bzero (C_val, 110); // रीमेट जीरो ले झांकी क्वि नूस सेर्ट डे बफर क्यू एल'ऑन वा एनवॉयर पर वाईफाईफोर (टी = 0; टी < (एनएफएफटी / 4); टी ++) {// पोर लिमिटर ला टेल डू बफर ऑन लिमिटे ला सॉर्टी डे ला fft des valeurs entre 0 et 9 tmp_log=20*(log(abs(out[t].r/1000.0)))*9;

tmp_log=tmp_log/50; अगर (tmp_log<0){ tmp_log=0; } अगर(tmp_log>9){ tmp_log=9; } स्प्रिंटफ (tmp_val, "%d", tmp_log); स्ट्रैट (C_val, tmp_val); // अजूते या बफर ला नोवेल वेल्यूर

}send_wifir(C_val); // एनवोई ले बफर पार वाईफाई पर

फोन्क्शन वाईफाईर भेजें:

शून्य send_wifir(char* com_AT){ int num, z; for(z=0;z<22000000;z++) {} for(num = 0; num <(int)strlen(com_AT); num++) { *(h2p_lw_rs232_addr) = com_AT[num]; } }

ले कोड सुइवेंट का उपयोग करने पर प्रारंभकर्ता ला कार्टे वाईफाई डालें:

send_wifi ("एटी + आरएसटी / r / n"); // डिमांड डे रीसेट ए ला कार्टेस्लीप (3); // उपस्थित हों qu'elle resetsend_wifi ("एटी + सीडब्ल्यूएमओडीई = 3 / n / r"); // चुनिए मोड डे ला कार्टेसेंड_वाईफाई ("एटी+सीडब्ल्यूजेएपी=\"वाईफाईनोम\", \"MotDePasse\"\r\n"); // लुई डिमांड डे से कनेक्टर पर या वाईफाईस्लीप(15); // उपस्थित होने पर qu'elle seconnectesend_wifi("AT+CIPSTART=\"UDP\", \"192.168.43.110\", 32003\r\n"); // ऑन लुई डिमांड डे से कनेक्टर एन उडप एवेक ले सर्वुर ऑउवर्ट सुर उन ऑट्रे ऑर्डिनेयूर्सस्लीप(3); // ला connexionsend_wifi में भाग लें ("एटी + सीआईपीएमओडीई = 1 / आर / n"); // ऑन सी मेट एन मोड एनवोई एन कंटिन्यूस्लीप(3);send_wifi("AT+CIPSEND\r\n"); // ऑन स्टार्ट ला ट्रांसमिशन

फोन्क्शन वाईफाई भेजें:

शून्य send_wifi(char* com_AT){ int num, z;for(num = 0; num <(int)strlen(com_AT); num++) { *(h2p_lw_rs232_addr) = com_AT[num]; for(z=0;z<2500000;z++) {} } }

कोड डु सर्वर:

affichage डे ला एफएफटी:

इंट आई, जे, वैल्यू = 0; सिस्टम ("स्पष्ट");

for(i =0; i <41; i++) {if(i <40) { for(j = 0; j < BUFSIZE; j++) { if(table[j]*4 > (40 - i)) { if (तालिका [जे] * 4> 35) प्रिंटफ (लाल "|" रीसेट); और अगर (तालिका [जे] * 4> 28) प्रिंटफ (एल_रेड "|" रीसेट); और अगर (तालिका [जे] * 4> 21) प्रिंटफ (येल "|" रीसेट); और अगर (तालिका [जे] * 4> 14) प्रिंटफ (एल_वाईईएल "|" रीसेट); और अगर (तालिका [जे] * 4> 7) प्रिंटफ (एल_जीआरएन "|" रीसेट); अन्य प्रिंटफ (जीआरएन "|" रीसेट); } और प्रिंटफ (""); } प्रिंटफ ("\ n"); } और { प्रिंटफ ("0Hz 2.5Hz 5Hz 7.5kHz 10kHz\n"); /*for(j = 0; j < (BUFSIZE/2); j++)

सिफारिश की: