Table des matières:
2025 Auteur: John Day | [email protected]. Dernière modifié: 2025-01-23 14:46
Il s'agit d'un VU-mètre de spectre audio utilisant le LoL Shield pour Arduino. Le LoL Shield est une matrice LED 14 x 9 qui s'adapte à l'Arduino en tant que bouclier et est contrôlé par une méthode efficace connue sous le nom de Charlieplexing. Il a été conçu par Jimmie P. Rodgers. Ce projet utilise une bibliothèque Fast Fourier Transform pour Arduino pour analyser un signal audio, le diviser en bandes de fréquences et afficher ces informations sur le LoL Shield. Le microcontrôleur Arduino est suffisamment rapide pour calculer une transformation de Fourier rapide. Il porte bien son nom et est étonnamment rapide et précis. Étant donné que tout le travail est effectué par le microcontrôleur, ce projet est complètement portable si vous utilisez des piles. La page Web de ce projet se trouve à l'adresse https://andydoro.com/vulol/ & 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;gt; Pièces requises:
- Bouclier LoL
- Arduino (Diavolino recommandé)
- prise audio (j'ai utilisé une prise téléphonique mono mâle 1/8")
- Code Arduino
- alimentation (alimentation CC, câble USB, pile 9V, etc.)
Étape 1: Assembler le bouclier LoL
Suivez les instructions pour assembler le LoL Shield ici. Tu vois, ça n'a pas pris longtemps !
Étape 2: souder les fils à la prise audio
J'utilise une prise téléphonique mâle mono 1/8 , comme on l'appelle chez Radioshack, mais vous pouvez utiliser n'importe quel câble audio approprié à la configuration de votre système audio. Vous pouvez utiliser un microphone si vous le souhaitez. Pour ce type de prise, J'ai soudé deux fils. J'ai utilisé du rouge et du noir. Le LoL Shield laisse les broches analogiques 4 et 5 libres pour les entrées. Mon code utilise la broche 5. Vous pouvez attacher le fil rouge à la broche analogique 5 du LoL Shield et le fil noir à GND Vous n'avez pas besoin de le souder, je viens de passer le fil et de le plier.
Étape 3: programmer Arduino
Nous devons maintenant programmer l'Arduino pour contrôler le LoL Shield.
Il est recommandé d'utiliser le Diavolino pour contrôler le LoL Shield afin d'éviter les effets "fantômes" sur les LED en raison de la LED verte à montage en surface connectée à la broche 13 de l'Arduino standard, mais un Arduino standard fonctionnera bien.
Cela nécessite deux bibliothèques Arduino: - la bibliothèque FFT trouvée sur le forum Arduino - la bibliothèque Charlieplexing pour le LoL Shield
L'installation de bibliothèques pour Arduino peut être un peu intimidante si vous ne l'avez pas déjà fait, mais vous vous en sortirez très bien !
Suivez les instructions sur l'installation des bibliothèques Arduino ici:
www.arduino.cc/en/guide/libraries
La bibliothèque FFT décompose le signal audio en 64 bandes de fréquences. Le bouclier LoL est de 14 x 9 LED. Nous faisons la moyenne des 64 bandes de fréquences ensemble en 14 bandes de fréquences. Nous jetons des données parce que 14 ne se divise pas en 64 uniformément, mais peu importe. La valeur de chaque plage de fréquence est remappée de 0 à 9.
Vous pouvez copier le code Arduino ci-dessous, obtenir le code depuis GitHub (recommandé) ou télécharger le fichier. ZIP, qui comprend les bibliothèques et le code Arduino.
Voici le lien GitHub:
github.com/andydoro/LoLShield-FFT
Ci-dessous le code Arduino:
/* FFT pour LoL Shield v0.9 par Andy Doro https://andydoro.com/basé sur la bibliothèque FFT et le code des forums Arduino et de la bibliothèque Charlieplexing pour LoL Shield. */
#include "Charliplexing.h"
#include "fix_fft.h"
#define AUDIOPIN 5 char im[128], data[128]; char data_avgs[14];
int i=0, val;
void setup() { LedSign::Init(); //Initilise le LoL Shield }
boucle vide() {
pour (i=0; i < 128; i++){ val = analogRead(AUDIOPIN); données = val; im = 0; };
fix_fft(données, im, 7, 0);
pour (i=0; i< 64;i++){ data = sqrt(data * data + im * im); // cela obtient la valeur absolue des valeurs du tableau, nous ne traitons donc que des nombres positifs };
// moyenne des barres ensemble pour (i=0; i<14; i++) { data_avgs = data[i*4] + data[i*4 + 1] + data[i*4 + 2] + data[i*4 + 3]; // moyenne ensemble data_avgs = map(data_avgs, 0, 30, 0, 9); // remapper les valeurs pour LoL }
// définit LoLShield
for (int x=0; x < 14; x++) { for (int y=0; y < 9; y++) { if (y < data_avgs[13-x]) { // 13-x inverse les barres si basses aux hautes fréquences sont représentés de gauche à droite. LedSign::Set(x, y, 1); // allume la LED } else { LedSign::Set(x, y, 0); // éteint la LED } } }
}
Étape 4: Profitez
&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;gt; Branchez la prise audio sur votre chaîne stéréo, iPod, ordinateur, etc. Alimentez l'Arduino avec une alimentation CC, USB à partir de votre ordinateur ou de batteries - c'est complètement portable. Vous pouvez le mettre dans un chapeau ou une boucle de ceinture. Les LED blanches sont si lumineuses qu'il est difficile de les capturer en vidéo. On dirait qu'il y a une flamme violette qui en sort ! Asseyez-vous et profitez-en!
Finaliste du Concours Microcontrôleur
Conseillé:
Lecteur audio utilisant Arduino avec carte Micro SD : 7 étapes (avec photos)
Lecteur audio utilisant Arduino avec une carte Micro SD : veuillez vous abonner à ma chaîne pour plus de projets………. Beaucoup de gens veulent interfacer la carte SD avec arduino ou souhaitez une sortie audio via arduino. Voici donc le moyen le plus simple et le moins cher d'interfacer une carte SD avec arduino. vous pouvez nous
Adaptateur USB ZX Spectrum pour Raspberry Pi RetroPie Builds : 5 étapes (avec photos)
Adaptateur USB ZX Spectrum pour Raspberry Pi RetroPie Builds : RetroPie est une distribution Linux spéciale spécialement conçue pour émuler des systèmes de jeux vidéo rétro sur Raspberry Pis et d'autres ordinateurs à carte unique. Je voulais tout faire sur une version RetroPie depuis un certain temps maintenant, et quand j'ai vu cette reproduction
Plaque de pression audio Cat avec Makey Makey : 8 étapes (avec photos)
Plaque de pression audio pour chat avec Makey Makey : les chats peuvent être ennuyeux, mais cela ne les rend pas moins aimables. Ils sont nos mèmes vivants et blottis. Commençons par le problème et examinons la solution. Regardez la vidéo ci-dessous
Raspberry Pi Whole Home Synchronous Audio avec les télécommandes de l'application téléphonique : 10 étapes (avec photos)
Raspberry Pi Whole Home Synchronous Audio With Phone App Remotes : l'objectif est de synchroniser l'audio et/ou des sources individuelles dans n'importe quelle pièce, facilement contrôlables avec un téléphone ou une tablette via iTunes Remote (apple) ou Retune (android). Je veux aussi que les zones audio s'allument/s'éteignent automatiquement alors je me suis tourné vers le Raspberry Pi et
Comment assembler le kit de cube de lumière 3D 8x8x8 Blue LED MP3 Music Spectrum de Banggood.com: 10 étapes (avec photos)
Comment assembler le kit de cube de lumière 3D Spectre de musique MP3 à LED bleue 8x8x8 de Banggood.com hop sur ma chaîne YouTube où je fabrique des cubes LED, des robots, de l'IoT, de l'impression 3D, et plus encore