Isi kandungan:

LoL Shield Audio Spectrum VU Meter: 4 Langkah (dengan Gambar)
LoL Shield Audio Spectrum VU Meter: 4 Langkah (dengan Gambar)

Video: LoL Shield Audio Spectrum VU Meter: 4 Langkah (dengan Gambar)

Video: LoL Shield Audio Spectrum VU Meter: 4 Langkah (dengan Gambar)
Video: Berjuang Untuk Rakyat? Ahhh Yang Bener? 2024, November
Anonim
LoL Shield Audio Spectrum VU Meter
LoL Shield Audio Spectrum VU Meter

Ini adalah meter VU spektrum audio yang menggunakan LoL Shield untuk Arduino. LoL Shield adalah matriks LED 14 x 9 yang sesuai dengan Arduino sebagai perisai dan dikendalikan melalui kaedah cekap yang dikenali sebagai Charlieplexing. Ia direka oleh Jimmie P. Rodgers. Projek ini menggunakan perpustakaan Fast Fourier Transform untuk Arduino untuk menganalisis isyarat audio, memecahnya menjadi jalur frekuensi, dan memaparkan maklumat tersebut di LoL Shield. Mikrokontroler Arduino cukup pantas untuk mengira transformasi Fourier yang cepat. Ini sesuai dengan namanya dan sangat cepat dan tepat. Oleh kerana semua kerja dilakukan oleh mikrokontroler, projek ini benar-benar mudah alih jika anda menggunakan bateri. Halaman web untuk projek ini terletak di https://andydoro.com/vulol/ & amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; lt; br / & amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; gt; Bahagian yang diperlukan:

  • Perisai LoL
  • Arduino (Diavolino disyorkan)
  • bicu audio (saya menggunakan palam telefon mono 1/8 lelaki)
  • Kod Arduino
  • bekalan kuasa (bekalan kuasa DC, kabel USB, bateri 9V, dll.)

Langkah 1: Pasang Perisai LoL

Pasang Perisai LoL
Pasang Perisai LoL

Ikuti arahan untuk memasang LoL Shield di sini. Lihat, itu tidak lama!

Langkah 2: Kabel Pateri ke Jack Audio

Kabel Pateri ke Jack Audio
Kabel Pateri ke Jack Audio

Saya menggunakan palam telefon mono 1/8 lelaki, seperti yang disebut di Radioshack, tetapi anda boleh menggunakan kabel audio apa pun yang sesuai untuk penyediaan sistem audio anda. Anda boleh menggunakan mikrofon jika anda mahu. Untuk jenis palam ini, Saya menyolder dua wayar. Saya menggunakan merah dan hitam. Perisai LoL meninggalkan pin analog 4 dan 5 percuma untuk input. Kod saya menggunakan pin 5. Anda boleh memasang wayar merah ke pin analog 5 dari Perisai LoL dan wayar hitam ke GND Anda tidak perlu menyoldernya, saya hanya memasukkan wayar dan membengkokkannya.

Langkah 3: Program Arduino

Program Arduino
Program Arduino

Sekarang kita perlu memprogram Arduino untuk mengawal LoL Shield.

Dianjurkan untuk menggunakan Diavolino untuk mengawal LoL Shield untuk mengelakkan kesan "ghosting" pada LED kerana LED permukaan permukaan hijau yang disambungkan ke pin 13 pada Arduino standard, tetapi Arduino standard akan berfungsi dengan baik.

Ini memerlukan dua perpustakaan Arduino: - perpustakaan FFT yang terdapat di forum Arduino - perpustakaan Charlieplexing untuk Perisai LoL

Memasang perpustakaan untuk Arduino boleh menjadi agak menakutkan jika anda belum melakukannya sebelum ini, tetapi anda akan melakukannya dengan baik!

Ikuti arahan untuk memasang perpustakaan Arduino di sini:

www.arduino.cc/en/guide/libraries

Perpustakaan FFT memecahkan isyarat audio dalam 64 jalur frekuensi. LoL Shield ialah 14 x 9 LED. Kami rata-rata 64 jalur frekuensi menjadi 14 jalur frekuensi. Kami membuang beberapa data kerana 14 tidak dapat dibahagikan kepada 64 secara merata, tetapi whatevs. Nilai setiap julat frekuensi dipetakan semula dari 0 hingga 9.

Anda boleh menyalin kod Arduino di bawah, mendapatkan kod dari GitHub (disyorkan), atau memuat turun fail. ZIP, yang merangkumi perpustakaan dan kod Arduino.

Inilah pautan GitHub:

github.com/andydoro/LoLShield-FFT

Berikut adalah kod Arduino:

/ * FFT untuk LoL Shield v0.9 oleh Andy Doro https://andydoro.com/berdasarkan perpustakaan FFT dan kod dari forum Arduino dan perpustakaan Charlieplexing untuk LoL Shield. * /

#sertakan "Charliplexing.h"

#sertakan "fix_fft.h"

#tentukan AUDIOPIN 5 char im [128], data [128]; char data_avgs [14];

int i = 0, val;

batal persediaan () {LedSign:: Init (); // Memanfaatkan Perisai LoL}

gelung kosong () {

untuk (i = 0; i <128; i ++) {val = analogRead (AUDIOPIN); data = val; im = 0; };

fix_fft (data, im, 7, 0);

untuk (i = 0; i <64; i ++) {data = sqrt (data * data + im * im ); // ini mendapat nilai mutlak dari nilai dalam tatasusunan, jadi kami hanya berurusan dengan angka positif};

// bar rata bersama untuk (i = 0; i <14; i ++) {data_avgs = data [i * 4] + data [i * 4 + 1] + data [i * 4 + 2] + data [i * 4 + 3]; // rata-rata data_avgs = peta (data_avgs , 0, 30, 0, 9); // nilai semula untuk LoL}

// tetapkan LoLShield

untuk (int x = 0; x <14; x ++) {untuk (int y = 0; y <9; y ++) {if (y <data_avgs [13-x]) {// 13-x membalikkan bar sehingga rendah ke frekuensi tinggi diwakili dari kiri ke kanan. LedSign:: Set (x, y, 1); // hidupkan LED} lain {LedSign:: Set (x, y, 0); // matikan LED}}}

}

Langkah 4: Nikmati

Selamat menikmati !!
Selamat menikmati !!

& amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; amp; gt; Pasangkan bicu audio ke stereo, iPod, komputer, dan lain-lain. Hidupkan Arduino dengan bekalan kuasa DC, USB dari komputer atau bateri anda - ini boleh dibawa sepenuhnya. Anda boleh memasukkannya ke dalam topi atau tali pinggang. LED putih sangat terang sehingga sukar untuk dirakam pada video. Nampaknya ada api ungu yang keluar dari mereka! Duduk dan nikmati!

Peraduan Mikrokontroler
Peraduan Mikrokontroler
Peraduan Mikrokontroler
Peraduan Mikrokontroler

Finalis dalam Peraduan Mikrokontroler

Disyorkan: