Πίνακας περιεχομένων:

CRAZY L.O.L SPECTRUM ANALYZER: 6 βήματα (με εικόνες)
CRAZY L.O.L SPECTRUM ANALYZER: 6 βήματα (με εικόνες)

Βίντεο: CRAZY L.O.L SPECTRUM ANALYZER: 6 βήματα (με εικόνες)

Βίντεο: CRAZY L.O.L SPECTRUM ANALYZER: 6 βήματα (με εικόνες)
Βίντεο: Power On: The Story of Xbox | Chapter 6: TV…Or Not TV 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 τεμάχια PCB LoLShield. Το PCBWay (πλήρης λειτουργία προσαρμοσμένης υπηρεσίας πρωτότυπου PCB) με υποστήριξε αυτούς τους πίνακες τυπωμένων κυκλωμάτων LoLShield.
  • 504τεμ x LED, 3mm. Κάθε LoLShield χρειάζεται 126 LED και μπορούμε να επιλέξουμε 4 διαφορετικά χρώματα και τύπους led (διάχυτα ή μη).
  • 1τεμ x Φορητός φορτιστής Power Bank Μπαταρία 10000/20000mAh.
  • 4τεμ x Ανδρική κεφαλίδα 40pin 2,54mm.
  • 2 τεμάχια καλώδιο USB τύπου A/B. Το ένα χρησιμοποιείται για προγραμματισμό Arduino, το άλλο είναι για τροφοδοσία του Arduino από μια τράπεζα ισχύος.
  • Στερεοφωνικό βύσμα ήχου 1 τεμ x 3.5mm.
  • 1τεμ x 3,5mm 1 ανδρικός έως 2 θηλυκός προσαρμογέας ήχου ή διαχωριστής ήχου πολλαπλών ακουστικών.
  • Καλώδιο σύνδεσης στερεοφωνικού βύσματος στερεοφωνικού ήχου 3,5 x 3,5 mm.
Εικόνα
Εικόνα
  • Καλώδιο κορδέλας Rainbow 1m x 8P.
  • 1m x Καλώδιο τροφοδοσίας δύο πυρήνων.
  • 1 τεμ x Διαφανές ακρυλικό, μέγεθος Α4.

Βήμα 2: ΣΧΗΜΑΤΙΚΟ

ΣΧΗΜΑΤΙΚΟΣ
ΣΧΗΜΑΤΙΚΟΣ

Το LoLShield είναι μια μήτρα LED 9x14 charlieplexing για το Arduino και αυτός ο σχεδιασμός ΔΕΝ περιλαμβάνει καμία αντίσταση περιορισμού ρεύματος. Οι λυχνίες LED μπορούν να διευθυνσιοδοτηθούν ξεχωριστά, οπότε μπορούμε να τις χρησιμοποιήσουμε για να εμφανίσουμε πληροφορίες σε έναν πίνακα led 9 × 14.

Το LoL Shield αφήνει D0 (Rx), D1 (Tx) και αναλογικούς πείρους A0 έως A5 δωρεάν για άλλες εφαρμογές. Η παρακάτω εικόνα δείχνει τη χρήση καρφιτσών Arduino Uno για αυτό το έργο:

Εικόνα
Εικόνα

Ο αναλυτής φάσματος ήχου μου έχει 4 x (Arduino Uno + LoLShield). Το τροφοδοτικό και η στερεοφωνική υποδοχή ήχου 3,5 mm συνδέονται όπως παρακάτω:

Εικόνα
Εικόνα

Βήμα 3: LOL SHIELD PCB & LED SOLDERING

1. LoL SHIELD PCB

. Μπορείτε να ανατρέξετε στον σχεδιασμό PCB στη διεύθυνση: https://github.com/jprodgers/LoLshield από τον Jimmie P. Rodgers.

Εικόνα
Εικόνα

. Το PCBWay με υποστήριξε αυτούς τους πίνακες τυπωμένων κυκλωμάτων LoLShield με γρήγορη παράδοση και υψηλής ποιότητας PCB.

Εικόνα
Εικόνα

2. ΣΥΛΛΟΓΗ LED

. Κάθε LoLShield χρειάζεται 126 led και χρησιμοποίησα διαφορετικά είδη & χρώματα για 4x LoLShields ως εξής:

  • 1 x LoLShield: διάχυτο led, κόκκινο χρώμα, 3mm.
  • 1 x LoLShield: διάχυτο led, πράσινο χρώμα, 3mm.
  • 2 x LoLShield: μη διάχυτο (διαυγές) led, μπλε χρώμα, 3mm.

. Προετοιμασία LoLShield PCB και LED

Εικόνα
Εικόνα

. Συγκόλληση 126 LED σε PCB LoLShield. Πρέπει να ελέγξουμε τα LED με μπαταρία μετά τη συγκόλληση κάθε σειράς - 14 LED

TOP LoLSHIELD

Εικόνα
Εικόνα

ΚΑΤΩ ΦΟΡΤΙΟ

Εικόνα
Εικόνα

. Τελειώνοντας ένα LoLShield και συνεχίστε να κολλήσετε 3 υπόλοιπα LoLShield.

Εικόνα
Εικόνα

Βήμα 4: ΣΥΝΔΕΣΗ ΚΑΙ ΣΥΝΑΡΜΟΛΟΓΗΣΗ

. Συγκόλληση τροφοδοτικού και ηχητικού σήματος σε 4xLoLShield. Ένα στερεοφωνικό σήμα χρησιμοποιεί δύο κανάλια ήχου: αριστερά και δεξιά τα οποία συνδέονται με το Arduino Uno στις αναλογικές ακίδες A4 & A5.

  • A4: Αριστερό κανάλι ήχου.
  • A5: Δεξιό κανάλι ήχου.
Εικόνα
Εικόνα

. Ευθυγράμμιση & τοποθέτηση 4 x Arduino Uno στην ακρυλική πλάκα.

Εικόνα
Εικόνα

. Συνδέοντας 4 x LoLShield σε 4 x Arduino Uno.

Εικόνα
Εικόνα

. Κολλήστε φορητή τράπεζα φόρτισης και υποδοχή ήχου σε ακρυλική πλάκα

Εικόνα
Εικόνα

. Εγινε!

Εικόνα
Εικόνα

Βήμα 5: ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

Θα πρέπει να αναφερθείτε στον τρόπο λειτουργίας του LoLShield βάσει της μεθόδου Charlieplexing και του Fast Fourier Transform (FFT) στη διεύθυνση:

en.wikipedia.org/wiki/Charlieplexing

github.com/kosme/fix_fft

Για το Charlieplexing, δίνουμε προσοχή στις "τρεις καταστάσεις" των ψηφιακών ακίδων Arduino: "HIGH" (5V), "LOW" (0V) και "INPUT". Η λειτουργία "ΕΙΣΟΔΟΣ" θέτει τον πείρο Arduino σε κατάσταση υψηλής σύνθετης αντίστασης. Αναφορά στο:

www.arduino.cc/en/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 Real_Number = Audio_Input; Φανταστικός_αριθμός = 0; } fix_fft (Real_Number, Imaginary_Number, 6, 0); // Εκτέλεση γρήγορου μετασχηματισμού Fourier με N_WAVE = 6 (2^6 = 64) για (i = 0; i <32; i ++) {Real_Number = 2 * sqrt (Real_Number * Real_Number +Imaginary_Number * Imaginary_Number ); }

. Arduino 1 - Εμφάνιση ζωνών συχνοτήτων εύρους 01 ~ 09 του δεξιού καναλιού (A5).

για (int x = 0; x <14; x ++) {για (int y = 0; y <9; y ++) {if (x <Real_Number [y]) // Εμφάνιση ζωνών συχνοτήτων 01 έως 09 {LedSign:: Set (13-x, 8-y, 1); // LED ON} else {LedSign:: Set (13-x, 8-y, 0); // LED OFF}}}

. Arduino 2 - Εμφάνιση ζωνών συχνοτήτων πλάτους 10 ~ 18 του δεξιού καναλιού (A5).

για (int x = 0; x <14; x ++) {για (int y = 0; y <9; y ++) {if (x <Real_Number [9+y]) // Εμφάνιση ζωνών συχνοτήτων 10 έως 18 {LedSign:: Σετ (13-x, 8-y, 1); // LED ON} else {LedSign:: Set (13-x, 8-y, 0); // LED OFF}}}

. Arduino 3 - Εμφάνιση ζωνών συχνοτήτων εύρους 01 ~ 09 του αριστερού καναλιού (Α4).

Ο κωδικός είναι ίδιος με το Arduino 1 και το ηχητικό σήμα αφήνει το αριστερό κανάλι να συνδεθεί με το Arduino στην αναλογική ακίδα A4.

. Arduino 4 - Εμφάνιση ζωνών συχνοτήτων πλάτους 10 ~ 18 του αριστερού καναλιού.

Ο κώδικας είναι ίδιος με το Arduino 2 και το σήμα ήχου αφήνει το αριστερό κανάλι να συνδεθεί στο Arduino στην αναλογική ακίδα Α4.

Βήμα 6: ΤΕΛΟΣ

ΦΙΝΙΡΙΣΜΑ
ΦΙΝΙΡΙΣΜΑ
ΦΙΝΙΡΙΣΜΑ
ΦΙΝΙΡΙΣΜΑ
ΦΙΝΙΡΙΣΜΑ
ΦΙΝΙΡΙΣΜΑ
ΦΙΝΙΡΙΣΜΑ
ΦΙΝΙΡΙΣΜΑ

Αυτός ο φορητός αναλυτής φάσματος μπορεί να συνδεθεί απευθείας σε φορητό υπολογιστή/ επιτραπέζιο υπολογιστή, κινητό τηλέφωνο, tablet ή άλλη συσκευή αναπαραγωγής μουσικής μέσω της στερεοφωνικής υποδοχής ήχου 3,5 mm. Αυτό το έργο φαίνεται τρελό, ελπίζω να σας αρέσει!

Ευχαριστώ για την ανάγνωση !!!

Συνιστάται: