Բովանդակություն:

CRAZY L.O.L SPECTRUM ANALYZER: 6 քայլ (նկարներով)
CRAZY L.O.L SPECTRUM ANALYZER: 6 քայլ (նկարներով)

Video: CRAZY L.O.L SPECTRUM ANALYZER: 6 քայլ (նկարներով)

Video: CRAZY L.O.L SPECTRUM ANALYZER: 6 քայլ (նկարներով)
Video: G-Eazy - Tumblr Girls (Official Music Video) ft. Christoph Andersson 2024, Նոյեմբեր
Anonim
CRAZY L. O. L SPECTRUM ANALYZER
CRAZY L. O. L SPECTRUM ANALYZER
CRAZY L. O. L SPECTRUM ANALYZER
CRAZY L. O. L SPECTRUM ANALYZER

Այսօր ես կցանկանայի կիսվել, թե ինչպես պատրաստել աուդիո սպեկտրի անալիզատոր `36 խումբ` 4 LoL Shields- ը միասին համատեղելով: Այս խենթ նախագիծը օգտագործում է FFT գրադարան ՝ ստերեո աուդիո ազդանշանը վերլուծելու, այն հաճախականությունների գոտիների փոխարկելու և այդ հաճախականությունների տիրույթների ամպլիտուդը ցուցադրելու 4 x LoL Shields- ով:

Սկսելուց առաջ դիտեք ստորև ներկայացված տեսանյութը.

Քայլ 1. ԲԱՆԵՐ, որոնք մեզ պետք են

Հիմնական էլեկտրոնային բաղադրիչները հետևյալն են.

  • 4 հատ x Arduino Uno R3:
  • 4 հատ x LoLShield PCB: PCBWay- ը (PCB- ի անհատականացված նախատիպի ամբողջական գործառույթ) ինձ աջակցեց այս LoLShield տպագիր տպատախտակները:
  • 504 հատ x LED, 3 մմ Յուրաքանչյուր LoLShield- ին անհրաժեշտ է 126 LED, և մենք կարող ենք ընտրել 4 տարբեր լուսադիոդային գույներ և տեսակներ (ցրված կամ ոչ ցրված):
  • 1 հատ x Դյուրակիր լիցքավորիչ Power Bank Մարտկոց 10000/20000mAh:
  • 4 հատ x Արական վերնագիր 40 պին 2.54 մմ:
  • 2 հատ x USB Type A/B մալուխ: Մեկը օգտագործվում է Arduino ծրագրավորման համար, մյուսը `Arduino- ն սնուցման բանկից սնուցելու համար:
  • 1 հատ x 3.5 մմ Աղջիկ ստերեո աուդիո խցիկ:
  • 1 հատ x 3.5 մմ 1 Արականից 2 իգական աուդիո բաժանարարի ադապտեր կամ մի քանի ականջակալների աուդիո պառակտիչ:
  • 1 հատ x 3.5 մմ ստերեո աուդիո խցիկ Արական և արական միակցիչ մալուխ:
Պատկեր
Պատկեր
  • 1 մ x 8P Rainbow ժապավենի մալուխ:
  • 1 մ x Երկու միջուկի հոսանքի մալուխ:
  • 1 հատ x Մաքրել ակրիլ, չափը A4:

Քայլ 2: Սխեմատիկ

ՍԿԵՄԱՏԻԿ
ՍԿԵՄԱՏԻԿ

LoLShield- ը 9x14 charlieplexing LED մատրիցա է Arduino- ի համար, և այս դիզայնը չի ներառում ընթացիկ սահմանափակող դիմադրիչներ: LED- ները անհատապես հասցեական են, ուստի մենք կարող ենք այն օգտագործել տեղեկատվությունը 9 × 14 led մատրիցով ցուցադրելու համար:

LoL Shield- ը թողնում է D0 (Rx), D1 (Tx) և A0- ից A5 անալոգային կապումներն անվճար այլ ծրագրերի համար: Ստորև բերված նկարը ցույց է տալիս Arduino Uno- ի կապումներն այս ծրագրի համար.

Պատկեր
Պատկեր

Իմ ձայնային սպեկտրի անալիզատորն ունի 4 x (Arduino Uno + LoLShield): Էներգամատակարարումը և 3,5 մմ ստերեո աուդիո խցիկը միացված են հետևյալ սխեմատիկ սխեմայի համաձայն.

Պատկեր
Պատկեր

Քայլ 3. LOL SHIELD PCB & LED OLDԻERՈՄ

1. LoL SHIELD PCB

. Դուք կարող եք անդրադառնալ PCB- ի դիզայնին ՝ https://github.com/jprodgers/LoLshield ՝ Jimmie P. Rodgers- ի կողմից:

Պատկեր
Պատկեր

. PCBWay- ն ինձ աջակցեց այս LoLShield տպագիր տպատախտակին `արագ առաքմամբ և բարձրորակ PCB- ով:

Պատկեր
Պատկեր

2. ԱՌԱՆՈՐԴԵOLD ԻՈՄ

. Յուրաքանչյուր LoLShield- ին անհրաժեշտ է 126 լուսարձակներ, և ես 4x LoLShields- ի համար օգտագործել եմ տարբեր տեսակներ և գույներ հետևյալ կերպ.

  • 1 x LoLShield. Ցրված լեդ, կարմիր գույն, 3 մմ:
  • 1 x LoLShield. Ցրված լապտեր, կանաչ գույն, 3 մմ:
  • 2 x LoLShield. Ոչ ցրված (թափանցիկ) լեդ, կապույտ գույն, 3 մմ:

. LoLShield PCB և LED պատրաստում

Պատկեր
Պատկեր

. 126 LED- ի զոդում LoLShield PCB- ի վրա: Մենք պետք է LED- ները ստուգենք մարտկոցով `յուրաքանչյուր տող զոդելուց հետո` 14 LED

TOP LoLSHIELD

Պատկեր
Պատկեր

ՎԵՐTԻՆ ԼՈSHՇԻԼԴ

Պատկեր
Պատկեր

. Ավարտելով մեկ LoLShield և շարունակեք եռակցել մնացած 3 LoLShield- ը:

Պատկեր
Պատկեր

Քայլ 4. ՄԻԱ ANDՈ ANDՄ ԵՎ SՈՈՎ

. Eringոդման սնուցման աղբյուր և ձայնային ազդանշան 4xLoLShield- ին: Ստերեո ազդանշանն օգտագործում է երկու աուդիո ալիք ՝ ձախ և աջ, որոնք միացված են Arduino Uno- ին A4 և A5 անալոգային կապում:

  • A4: Ձախ աուդիո ալիք:
  • A5. Աջ աուդիո ալիք:
Պատկեր
Պատկեր

. 4 x Arduino Uno- ի հավասարեցում և տեղադրում ակրիլային ափսեի վրա:

Պատկեր
Պատկեր

. 4 x LoLShield- ը միացնելով 4 x Arduino Uno- ին:

Պատկեր
Պատկեր

. Սոսինձ շարժական լիցքավորման լիցքավորման հզորության բանկ և աուդիո խցիկ ակրիլային ափսեի վրա

Պատկեր
Պատկեր

. Կատարած!

Պատկեր
Պատկեր

Քայլ 5: PROՐԱԳՐՈԹՅՈՆ

Դուք պետք է անդրադառնաք, թե ինչպես է LoLShield- ն աշխատում Charlieplexing մեթոդի և Fast Fourier Transform (FFT) - ի հիման վրա ՝

hy.wikipedia.org/wiki/Charlieplexing

github.com/kosme/fix_fft

Charlieplexing- ի համար մենք ուշադրություն ենք դարձնում Arduino թվային կապիչների «երեք վիճակին» ՝ «HIGH» (5V), «LOW» (0V) և «INPUT»: «Մուտք» ռեժիմը Arduino- ի քորոցը դնում է բարձր դիմադրողականության վիճակում: Տեղեկանք ՝

www.arduino.cc/hy/Tutorial/DigitalPins

Իմ նախագծում աուդիո հաճախականությունների գոտիները ցուցադրվում են 4 x LoL Shield- ով և դրանք նկարագրված են ստորև.

Պատկեր
Պատկեր

Յուրաքանչյուր Arduino- ն կարդում է ձայնային ազդանշանը ձախ/ աջ ալիքով և կատարում է FFT գործառույթը:

համար (i = 0; i <64; i ++) {Audio_Input = analogRead (RIGHT_CHANNEL); // Կարդացեք ձայնային ազդանշանը A5 աջ ալիքում - ARDUINO 1 & 2 // Audio_Input = analogRead (LEFT_CHANNEL); // Ձայնային ազդանշան կարդալ ձախ A4 ալիքում - ARDUINO 3 & 4 Իրական_թիվ = Աուդիո_ մուտքագրում; Երեւակայական_թիվ = 0; } fix_fft (իրական_թիվ, երևակայական_թիվ, 6, 0); // Կատարեք Ֆուրյեի արագ փոխակերպում N_WAVE = 6 (2^6 = 64) -ով (i = 0; i <32; i ++) {Real_Number = 2 * sqrt (Real_Number * Real_Number +Imaginary_Number * Երեւակայական_թիվ ); }

. Arduino 1 - Displayուցադրել աջ ալիքի 01 ~ 09 հաճախականության տիրույթները (A5):

for (int x = 0; x <14; x ++) {for (int y = 0; y <9; y ++) {if (x <Real_Number [y]) // Displayուցադրել 01 -ից 09 հաճախականությունների տիրույթները {LedSign:: Set (13-x, 8-y, 1); // LED ON} else {LedSign:: Set (13-x, 8-y, 0); // LED անջատված}}}

. Arduino 2 - Displayուցադրել աջ ալիքի 10 ~ 18 ամպլիտուդային հաճախականությունների տիրույթները (A5):

for (int x = 0; x <14; x ++) {for (int y = 0; y <9; y ++) {if (x <Real_Number [9+y]) // Displayուցադրել հաճախականությունների միջակայքերը 10 -ից 18 -ը {LedSign: ՝ հավաքածու (13-x, 8-y, 1); // LED ON} else {LedSign:: Set (13-x, 8-y, 0); // LED անջատված}}}

. Arduino 3 - Displayուցադրել ձախ ալիքի 01 ~ 09 հաճախականության տիրույթները (A4):

Կոդը նույնն է, ինչ Arduino 1 -ը, իսկ ձայնային ազդանշանը ձախ ալիքը միանում է Arduino- ին անալոգային A4 կապով:

. Arduino 4 - Displayուցադրեք ձախ ալիքի 10 ~ 18 հաճախականության տիրույթները:

Կոդը նույնն է, ինչ Arduino 2 -ը, իսկ ձայնային ազդանշանը ձախ ալիքը միանում է Arduino- ին անալոգային A4 կապով:

Քայլ 6: ՎԵՐ FՆԵԼ

ԱՎԱՐՏՎԵԼ
ԱՎԱՐՏՎԵԼ
ԱՎԱՐՏՎԵԼ
ԱՎԱՐՏՎԵԼ
ԱՎԱՐՏՎԵԼ
ԱՎԱՐՏՎԵԼ
ԱՎԱՐՏՎԵԼ
ԱՎԱՐՏՎԵԼ

Այս շարժական սպեկտրի անալիզատորը կարող է միանալ անմիջապես նոութբուքին/ աշխատասեղանին, բջջային հեռախոսին, պլանշետին կամ այլ երաժշտական նվագարկիչներին `3.5 մմ ստերեո աուդիո խցիկի միջոցով: Այս նախագիծը խենթ է թվում, հուսով եմ ձեզ դուր կգա:

Շնորհակալություն կարդալու համար !!!

Խորհուրդ ենք տալիս: