Mündəricat:

VS1053b ilə səs effektləri preampı: 3 addım
VS1053b ilə səs effektləri preampı: 3 addım

Video: VS1053b ilə səs effektləri preampı: 3 addım

Video: VS1053b ilə səs effektləri preampı: 3 addım
Video: Lesson 7: Digital Read Push button, detecting magnetic field SunFounder Kit | Robojax 2024, Iyul
Anonim
VS1053b ilə Audio Effects Preamp
VS1053b ilə Audio Effects Preamp
VS1053b ilə Audio Effects Preamp
VS1053b ilə Audio Effects Preamp
VS1053b ilə Audio Effects Preamp
VS1053b ilə Audio Effects Preamp

Bu, VLSI VS1053b Audio DSP IC istifadə edərək tam işlək bir səs effektləri preampıdır. Səs səviyyəsini və beş təsir parametrini tənzimləmək üçün bir potensiometr var. Doqquz sabit effektə və bir özelleştirilebilir effektə malikdir, burada hər effektin beş effekt ayarı var: gecikmə, çürümə-təkrarlama, modulyasiya sürəti və dərinliyi və işlənmiş və birbaşa səsin qarışma nisbəti. Buraya bas və tiz artırma, bas və tiz mərkəz tezliyi, altı giriş mənfəətinin seçilməsi, cari/saxlanmış parametrlərin Arduino Eeprom -dan daxil edilməsi/alınması və əsas/normal/inkişaf etmiş/redaktə daxildir. dövriyyədə olan funksiyaların sayını təyin edən menyu seçimi. Düzəlişlər, seçilmiş funksiyanın dəyərlərini artırmaq və azaltmaq üçün üç düymə, yəni bir funksiya seçmək düyməsi və iki düymə istifadə edərək edilir.

İndi (Noyabr 2020), Teensy 3.6 və Teensy 4.1 -ə köçürüldü. Daha ətraflı bu Github -da və iki effektli nümayiş videosundadır.

Tam işləyən effektlər qutusu olmasına baxmayaraq hələ də canlı mühitdə istifadə üçün qurulmamışdır.

Addım 1: Tikinti və Parça siyahısı

Tikinti və Parça siyahısı
Tikinti və Parça siyahısı

Preampda üç düymə var - bir funksiya seçmək düyməsi və seçilmiş funksiya dəyərini artırmaq və azaltmaq üçün iki düymə. Həm də bir səs nəzarəti olaraq potansiyometrdən istifadə edir və ya beş təsir parametrinin dəyərlərini təyin etmək üçün istifadə edilə bilər. Bu təsir parametrləri modulyasiya sürəti və dərinliyi (xor, phaser və flanş effektlərində istifadə olunur) və ya gecikmə müddəti və təkrarlama (əks -səda və reverb effektlərində istifadə olunur). Beşinci parametr, birbaşa işlənmiş səs yolunun nisbətini təyin etmək üçün istifadə olunur. Funksiya seçmə düyməsi: (1) Efektlərin seçilməsi (0 ilə 9 arasında), (2) Səsin seçilməsi (potensiometrlə tənzimlənir), (3) bas gücləndirmə tənzimlənməsi, (4) yüksək səslə tənzimləmə, (5) bas və (6) üçlü mərkəz tezliyi seçimi (10 Hz addımlarda 20 Hz -dən 150 Hz -ə qədər və 1 kHz addımlarda 1 kHz -dən 15 kHz -ə qədər), (7) 1/2x -dən 1x -a qədər, 5x -ə qədər -, (8) Parametrləri ATmega328 eeprom -a qeyd etmək və ya oxumaq, (9) funksiyasını seçmə dövrü detalları (bütün 14 dövrdən 6 dövrü tənzimləmə rejiminə qədər, yalnız beş effekt parametrini keçməklə) və (10) - (14), potensiometrdən istifadə edərək beş təsir parametrinin tənzimlənməsi.

Adafruit VS1053 Breakout lövhəsi tövsiyə olunur, lakin Sparkfun lövhəsi, IC paketinin 1 və 48 sancaqlarına iki keçid telinin lehimlənməsi şərti ilə də istifadə edilə bilər. Daha sonra bunlar Line In2 və Line In1 kimi istifadə olunacaq. Geeetech lövhəsini (qırmızı variant) effekt koduyla işlətmək üçün əlimdən gələni edə bilmədim - VS1053 dizaynının xüsusi Shenzhen variantı ola bilər …

Parça siyahısı:

ATmega328 Arduino Uno R3 Wemos 64x48 I2C OLED Ekran və ya oxşar Adafruit VS1053b Codec kəsmə lövhəsi (və ya Sparkfun VS1053 Breakout Board - lehim lazımdır) 3 x miniatür düymələr 100k potensiometr xətti 2 x Stereo audio soket: gücləndiriciyə qoşulmaq üçün 5 10k, 3 x 470 ohm Kondansatörler: 1uf 25v elektrolitik Sarı və qırmızı LED 1 x Ayaq Şalteri

Addım 2: Proqram təminatı

Əlavə edilmiş Arduino eskizi (Effect34.ino), Adafruit VS1053 kitabxanasına əsaslanır və VLSI effektləri emal kodu Arduino eskizində bir plagin olaraq yüklənir.

VLSI effektlərinin işlənməsinin digər təfərrüatlarını veb saytından əldə edilə bilən inkişaf vasitəsi - VSIDE -ni quraşdıraraq və sonra VSIDE / templates / project / VS10X3_Audio_Effects qovluğunu açaraq əldə etmək olar. Yürütülebilir faylı Arduino eskizinə kopyalanan və eskizin loop funksiyası başlamazdan əvvəl yüklənən C kodu tipli bir plaginə çevirmək üçün Coff2All alətindən istifadə etdim.

Proqram üç düyməni izləyir. İlk düymə 9 funksiyanı və 5 effekt parametrini əhatə edir. 1 -ci funksiya 0 -dan 6 -dək effektlər kimi Yaşlı Echo, Phaser, Flanger, Chorus, Reverb və Dry Echo kimi 10 effekt təklif edir. 7 və 8 effektləri sıfırlanır - yəni səs girişinin işlənməsi yoxdur - bunu dəyişdirmək olar. Arduino kodu beş effekt parametri üçün dəyərlər verərək. Yuxarı və aşağı düymələr daha sonra 0 -dan 9 -a qədər effekt funksiyasını seçmək üçün istifadə olunur və ya bas gücləndirmə kimi digər funksiyalar üçün dəyərlər təyin etmək üçün istifadə olunur.

Bu funksiya düyməsi bas və tiz artırma vallarını (16 pillə) və səsi artırmaq üçün mərkəzi tezliyi (1 Khz addımda 1 ilə 15 kHz arasında) və bas gücləndirmə tezliyini (20 Hz -dən 150 Hz -ə qədər) seçmək üçün də istifadə olunur. 10 Hz addımda. 0.5x, 1x, 2x, 3x, 4 və ya 5x mənfəətə uyğunlaşdırıla bilən bir giriş qazancını seçmək üçün də istifadə olunur. Mövcud parametrləri (Səs, Bass və Təzə Gücləndirmə) saxlamaq üçün bir seçim var., Bass və Tiz Frekansları və özelleştirilebilir effekt üçün beş effekt parametri) və bu parametrləri sonrakı mərhələdə əldə etmək.

Seçim düyməsi çox sayda seçimdən keçdiyindən (15), dövrlərin sayının Effects Select (0 -dan 9 -a), Səs Seçimi, Bass Artırma Seçimi, Təzə Gücləndirməyə endirildiyi əsas rejimi təyin etmək imkanı var. Seçin və ya 5 Efekt parametrini əsas rejimin parametrlərinə əlavə edən normal bir rejimi və həmçinin standart tam rejimi seçin. Yalnız beş effekt parametrləri arasında keçən bir tənzimləmə rejimi də var.

Səs səviyyəsini idarə etmək üçün potensiometrdən istifadə olunur və eyni zamanda 9 nömrəli effekt üçün beş effekt parametrini təyin etmək üçün də istifadə olunur, yəni effektlər potensiometr çevrilərək tənzimlənə bilər.

Bundan əlavə, VS1053 -də işləyən kod, hazırda seçilmiş səs effektini aktivləşdirmək və ya söndürmək üçün VS1053 GPIO3 pininə bağlı bir ayaq açarının quraşdırılmasını nəzərdə tutur. Qeyd: Bu, galvanik olaraq 5 volta deyil, 3.3 volta bağlanmalıdır (Arduino Uno tərəfindən istifadə edildiyi kimi). Efektlər işləndikdə bir LED yanar və birbaşa səs döngəsi olduqda sönər. Eepromdan oxumaq və ya yazmaq kimi vacib əməliyyatları təsdiqləmək üçün bir fəaliyyət LED -dən istifadə olunur.

Adafruit Graphics kitabxanasının bir qədər dəyişdirilmiş versiyası, OLED Ekranın 64x48 piksel qətnaməsini təmin etmək üçün istifadə edilmişdir - zəhmət olmasa cənab Mcauser üçün sonda verilən bağlantılara baxın. Tələb olunan kitabxanaların siyahısı eskiz kodunda verilmişdir.

Kredit kodu və kitabxanaları üçün adı çəkilən bütün şəxs və təşkilatlara verilir.

Addım 3: Bağlantılar

VLSI:

Adafruit:

Github VS1053b:

Github Graphics:

Əlaqə:

Sparkfun:

Tövsiyə: