Სარჩევი:

LoL Shield Audio Spectrum VU მეტრი: 4 ნაბიჯი (სურათებით)
LoL Shield Audio Spectrum VU მეტრი: 4 ნაბიჯი (სურათებით)

ვიდეო: LoL Shield Audio Spectrum VU მეტრი: 4 ნაბიჯი (სურათებით)

ვიდეო: LoL Shield Audio Spectrum VU მეტრი: 4 ნაბიჯი (სურათებით)
ვიდეო: Rihanna - Umbrella (Orange Version) (Official Music Video) ft. JAY-Z 2024, ნოემბერი
Anonim
LoL Shield აუდიო სპექტრის VU მეტრი
LoL Shield აუდიო სპექტრის VU მეტრი

ეს არის აუდიო სპექტრის VU მეტრი LoL Shield– ის გამოყენებით Arduino– სთვის. LoL Shield არის 14 x 9 LED მატრიცა, რომელიც ჯდება Arduino– ში როგორც ფარი და კონტროლდება ეფექტური მეთოდით, რომელიც ცნობილია როგორც Charlieplexing. ის შეიქმნა ჯიმი პ. როჯერსის მიერ. ეს პროექტი იყენებს სწრაფი ფურიეს ტრანსფორმაციის ბიბლიოთეკას Arduino– სთვის, აუდიო სიგნალის გასაანალიზებლად, მისი დაშლის სიხშირის ზოლებად და ამ ინფორმაციის ჩვენებისათვის LoL Shield. Arduino მიკროკონტროლი საკმარისად სწრაფია იმისათვის, რომ გამოთვალოს ფურიეს სწრაფი ტრანსფორმაცია. ის შეესაბამება მის სახელს და საოცრად სწრაფი და ზუსტია. ვინაიდან ყველა სამუშაო კეთდება მიკროკონტროლის მიერ, ეს პროექტი სრულიად პორტატულია თუ იყენებთ ბატარეებს. ამ პროექტის ვებგვერდი განთავსებულია https://andydoro.com/vulol/ & amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; ამპრესიამპრეზენტაცია ამპრესი; საჭირო ნაწილები:

  • LoL ფარი
  • არდუინო (რეკომენდირებულია დიავოლინო)
  • აუდიო ჯეკი (მე გამოვიყენე მამაკაცის მონო 1/8 "ტელეფონის დანამატი)
  • არდუინოს კოდი
  • კვების ბლოკი (DC კვების ბლოკი, USB კაბელი, 9V ბატარეა და ა.

ნაბიჯი 1: შეიკრიბეთ LoL Shield

შეიკრიბეთ LoL Shield
შეიკრიბეთ LoL Shield

მიჰყევით ინსტრუქციას LoL Shield– ის შესაქმნელად აქ. ნახეთ, ამას დიდი დრო არ დასჭირვებია!

ნაბიჯი 2: შეაერთეთ მავთულები აუდიო ჯეკზე

შეაერთეთ მავთულები აუდიო ჯეკზე
შეაერთეთ მავთულები აუდიო ჯეკზე

მე ვიყენებ მამაკაცის მონო 1/8 ტელეფონის შტეფსელს, როგორც მას უწოდებენ Radioshack, მაგრამ თქვენ შეგიძლიათ გამოიყენოთ ნებისმიერი აუდიო კაბელი თქვენი აუდიო სისტემის კონფიგურაციისთვის. სურვილის შემთხვევაში შეგიძლიათ გამოიყენოთ მიკროფონი. ამ ტიპის დანამატისთვის, მე შევაერთე ორი მავთული. მე გამოვიყენე წითელი და შავი. LoL Shield ტოვებს ანალოგურ ქინძისთავებს 4 და 5 უფასოდ შეყვანისთვის. ჩემი კოდი იყენებს პინ 5. თქვენ შეგიძლიათ წითელი მავთული მიამაგროთ LoL Shield– ის ანალოგიურ პინ 5 – ს და შავი მავთული GND– ს. თქვენ არ გჭირდებათ მისი შედუღება, მე მხოლოდ მავთული გავავლე და დავხარე.

ნაბიჯი 3: პროგრამა Arduino

პროგრამა Arduino
პროგრამა Arduino

ახლა ჩვენ გვჭირდება Arduino- ს პროგრამირება LoL Shield– ის გასაკონტროლებლად.

რეკომენდირებულია გამოიყენოთ დიავოლინო LoL Shield– ის გასაკონტროლებლად, რათა თავიდან აიცილოთ "მოჩვენებითი" ეფექტები LED- ებზე იმის გამო, რომ მწვანე ზედაპირზე დამონტაჟებულია LED, რომელიც დაკავშირებულია პინ 13 სტანდარტულ არდუინოსთან, მაგრამ სტანდარტული არდუინო კარგად იმუშავებს.

ამას სჭირდება ორი არდუინოს ბიბლიოთეკა: - არდუინოს ფორუმზე ნაპოვნი FFT ბიბლიოთეკა - ჩარლიპლექსის ბიბლიოთეკა LoL Shield– ისთვის

Arduino– სთვის ბიბლიოთეკების დაყენება შეიძლება იყოს ოდნავ დამთრგუნველი, თუ ამას ადრე არ აკეთებდით, მაგრამ კარგად გამოგივათ!

მიჰყევით ინსტრუქციას Arduino ბიბლიოთეკების დაყენების შესახებ აქ:

www.arduino.cc/en/guide/libraries

FFT ბიბლიოთეკა არღვევს აუდიო სიგნალს 64 სიხშირის დიაპაზონში. LoL Shield არის 14 x 9 LED. ჩვენ საშუალოდ 64 სიხშირის ზოლს ერთად ვანიჭებთ 14 სიხშირის ზოლად. ჩვენ ვაგდებთ ზოგიერთ მონაცემს, რადგან 14 თანაბრად არ იყოფა 64 -ზე, მაგრამ რაც არის. სიხშირის თითოეული დიაპაზონის მნიშვნელობა გადანაწილებულია 0 -დან 9 -მდე.

თქვენ შეგიძლიათ დააკოპიროთ Arduino კოდი ქვემოთ, მიიღოთ კოდი GitHub– დან (რეკომენდებულია), ან გადმოწეროთ. ZIP ფაილი, რომელიც შეიცავს ბიბლიოთეკებს და Arduino კოდს.

აქ არის GitHub ბმული:

github.com/andydoro/LoLShield-FFT

ქვემოთ მოცემულია Arduino კოდი:

/* FFT for LoL Shield v0.9 ენდი დოროს მიერ https://andydoro.com/ დაფუძნებული FFT ბიბლიოთეკაზე და კოდზე Arduino ფორუმებიდან და Charlieplexing ბიბლიოთეკიდან LoL Shield. */

#მოიცავს "Charliplexing.h"

#მოიცავს "fix_fft.h"

#განსაზღვრეთ AUDIOPIN 5 char im [128], მონაცემები [128]; char data_avgs [14];

int i = 0, val;

void setup () {LedSign:: Init (); // ინიციალიზებს LoL ფარს}

ბათილი მარყუჟი () {

for (i = 0; i <128; i ++) {val = analogRead (აუდიოპინი); მონაცემები = val; im = 0; };

fix_fft (მონაცემები, im, 7, 0);

for (i = 0; i <64; i ++) {data = sqrt (data * data +im * im ); // ეს იღებს მასივის მნიშვნელობების აბსოლუტურ მნიშვნელობას, ამიტომ ჩვენ საქმე გვაქვს მხოლოდ დადებით რიცხვებთან};

// საშუალო ზოლები ერთად (i = 0; i <14; i ++) {data_avgs = data [i*4] + data [i*4 + 1] + data [i*4 + 2] + data [i*4 + 3]; // საშუალოდ ერთად data_avgs = რუკა (data_avgs , 0, 30, 0, 9); // გადახედეთ ღირებულებებს LoL} - ისთვის

// დააყენეთ LoLShield

for (int x = 0; x <14; x ++) {for (int y = 0; y <9; y ++) {if (y <data_avgs [13-x]) {// 13-x შებრუნებულია ბარები ასე დაბალი მაღალი სიხშირეები წარმოდგენილია მარცხნიდან მარჯვნივ. LedSign:: კომპლექტი (x, y, 1); // ჩართეთ LED სხვა} {LedSign:: Set (x, y, 0); // გამორთეთ LED}}}

}

ნაბიჯი 4: ისიამოვნეთ

ისიამოვნეთ !!
ისიამოვნეთ !!

& amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; ამპრესი; შეაერთეთ აუდიო ჯეკი თქვენს სტერეო, iPod, კომპიუტერთან და ა.შ. ჩართეთ Arduino DC დენის წყაროსთან, USB კომპიუტერიდან ან ბატარეებიდან- ეს არის სრულიად პორტატული. თქვენ შეგიძლიათ ჩასვათ იგი ქუდის ან ქამრის ბალთაში. თეთრი LED- ები იმდენად ნათელია, რომ ძნელია ვიდეოზე გადაღება. როგორც ჩანს, მათგან მეწამული ალი გამოდის! დაჯექით და ისიამოვნეთ!

მიკროკონტროლერის კონკურსი
მიკროკონტროლერის კონკურსი
მიკროკონტროლერის კონკურსი
მიკროკონტროლერის კონკურსი

ფინალისტი მიკროკონტროლერის კონკურსში

გირჩევთ: