+86 400-003-5559 CN

应用领域

LED Music Visualizer Bespeckles Your Bedroom | Hackaday

tagstransistor smd 2l

When it comes to wall hangings, be prepared to throw away the carpets and replace them with something that can pop out so vividly. You need to check your eyes. In order to make our eyes heat up and suddenly pop up, [James Best] concocted

 To ensure that our bedroom is bright and flashes on demand.

Like any other graduate from that small liberal arts school in Southern California, [James] began to use some old-fashioned blue ribbons as prototypes. Once the grid spacing was determined, he started working on a wall-mounted display measuring 2 meters by 0.5 meters, which was made of some plywood and wood. After some minor adhesion incidents, James fixed the grid with Gaffers tape and was ready for visual processing.

Under the hood, Teensy is using its DMA function to perform bit stream processing on 900 LEDs. By using the DMA function and selecting "Teensy" on the Arduino, [James] used idle CPU cycles to make some Fourier-transformed music samples and display their frequency content.

We have introduced the people who proved the concept of WS2812B LED driving noodles through DMA. It is great to see these ideas mature into a fully functional project, which falls on walll. For more information on chatting with WS2812B LED via DMA, please review our

.

We called it a high-tech version of the color organ in the 70s.

It’s like saying a truck is just a high-tech trolley

Or disco floor

LED wallpaper will be very interesting.

The most annoying part of this project is that there is no indication of how he provided audio to teenagers. I build something like this, but I hate arguing with msgeq7 chips. I am trying to find an easier way to run audio samples.

When introducing the design of the audio front end, you can take a look at my automatic audio switching project-it uses DC coupling with level shifting and ADC anti-aliasing filter. You can ignore the balanced input and MUX on the daughter card.

It has a built-in spectrum analyzer using integer FFT.

Indeed, his article has impressive details on the physical structure and does not talk too much about electronics or code.

But it is very likely that he used the ADC pin to sample the audio signal, and may write code very similar to this example (but the animation effect is better):

If you are looking for a simpler way to sample audio, you can definitely. (Full disclosure-I am the author of the library, so my opinion may be biased.) The audio library uses DMA and 2-level nested priority interrupts to continuously sample the ADC pin at 44.1 kHz, and then the data The stream is fed into the FFT analysis, which you can read from the Arduino sketch, similar to serial data. The FFT.available() function will tell you when the FFT has produced a new batch of spectrum data, and FFT.read() allows you to read the frequency points.

As for the process of sending the analog audio signal into the ADC, although I can’t know exactly how he built it (or whether he uses the shielding layer with a dedicated ADC or codec chip), I can tell you that this is for coupling Circuit for analog audio signal. Consume "line level" audio signal to ADC pin.

! [] (

)

The 10uF capacitor on the top can block any DC voltage that may be present. The 10K and 2.2K resistors and the lower 10uF will produce a filtered DC voltage of about 0.6V, which is added to the signal by the 47K resistor on the right. The audio library configures the ADC to use an internally stable, low-noise 1.2V reference voltage, so the ADC's range is 0 to 1.2V. Since the peak-to-peak value of a normal line level signal is about 1 volt, this circuit uses most of the ADC's range to map the audio signal to 0.1V to 1.1V.

You can find detailed documentation here: (document panel on the right)

To end this lengthy answer, here is a link to the 31-page tutorial on how this system works. FFT analysis is described on pages 24-29 of the PDF. This tutorial was also completed at Hackday's first Supercon seminar about 4 years ago.

Alysia and I made a 45-minute walkthrough video of the entire tutorial. So, if you want to take a look at the FFT part of this tutorial (but use the shield with a codec chip instead of the ADC pin in this tutorial), just skip to 34:56 in the video.

Or you might start observing for a while at 6:59 to learn about design tools and how exporting code to Arduino works. Hope it's easy to see how to drag ADC input to the canvas instead of I2S to generate the code to get the audio input from the built-in ADC pin instead of additional shielding.

>Because the peak-to-peak value of ordinary line level signal is about 1 volt

If the spectrum display is designed for line level audio input, it is best to be able to handle +/- 1.736V input.

for reference only:

If I change the 10K resistor to 12K, the level conversion divider I have can solve it. When the value is 10K, my voltage is +/- 1.65V, which will not happen because the loudness protection will produce additional attenuation.

Your design does not have an anti-aliasing filter, so for frequency components that exceed the sampling frequency, ghosting will appear in the FFT. It may not be obvious that non-sine waves have higher harmonics. : P

My response is pending or missing...it has been a while since I researched and the signal level is correct.

The consumer audio line level handled by my circuit is +/- 1.414V. Yours will blow up.

It also has an appropriate anti-aliasing filtering function to prevent higher harmonics from causing ghosting in the fft output.

Thank you! Will check it out!

As you guessed, I used the ADC audio library and level conversion circuit (I originally planned to use USB, but I couldn't separate the audio from the computer in this way). The circuit is only on a separate board, and the output after level conversion is soldered to a small place. This is a picture of the second visualizer I made:

) I use the Y cable to distribute the signal between the speaker and the visualizer.

I would love to see the build layout and minor code.

Many projects with various solutions and suggestions are posted on this website. Finding the right method for your project will require some effort. Not much, but at least.

Would love to see the layout and code of this

This is actually the first electronic project I have done. In this way, a 16 x 64 rgb array is created and used for fft processing. Only a few days later, it was actually installed on my computer because of its pathos, and it became very annoying. Since then things have been collecting dust

My inner child thinks this is great!

Spectrum visualization tools can make interesting items and information work. So far, Ive has created 3 different ways of success.

1) First, it is just a MSGEQ7 project with some small leadership diagrams.

2) Secondly, the FFT samples the audio signal on the ADC to drive a set of IN-13 neon light charts. It outputs the frequency band as a fast PWM signal, and the RC filter converts it into an analog value, which will be fed to the transistor that controls the current through the bar graph

3) Technically speaking, it is only a VU meter, but still very satisfied. I have a bunch of magic eye tubes. So I want to turn it into a Vu meter. I amplified the audio signal, used a diode clamp to convert the signal between 0v and negative peak, and finally rectified it into a simple RC filter with a diode to get a negative peak voltage with adjustable slew rate.

Recently, I have been trying to use teenage addressable RGB strings, although I have not experienced the trouble of using DMA, and in order to avoid mutual influence, I just use APA102 instead of WS2812. APA102 is a clock LED that can be driven by a simple hardware SPI. Therefore, there is no such thing as a timed prank.

Writing your own low-level library code is really troublesome, especially if you are trying to take advantage of powerful and complex hardware features.

But why bother to write your own WS2812 communication library? There are already two very mature libraries with DMA (OctoWS2811 and WS2812Serial), and they have been successfully used by thousands of people. Nowadays, many non-Teensy boards also have DMA-based libraries (some libraries are more mature and stable than others). The other two non-DMA libraries (FastLED and Adafruit_NeoPixel) can also work, but will block or interfere with interrupts. FastLED supports the use of any of the DMA libraries as a "driver", so if you want FastLED's amazing color and rendering functions, just use the driver name in "addLeds" to get all the functions through DMA. "Configuration.

Like you, many people think that APA102 is technically superior. Adafruit released praise for APA102 "dotstar", mainly because many of the cheap boards they sold at the time did not have DMA capabilities, and all their codes used simple busy loops. But what they didn't mention is how the APA102 slowly lowers the clock signal as you make the LED strip longer and longer. The APA102 "regenerates" the clock for each pixel, but the process is analog. It's like making a copy of a copy with a photocopier. For slower speeds, you can only use 8-bit AVR, which is not a big problem. But for higher clock speeds, because many people at the time mistakenly believed that APA102 could work (but only through a powerful 32-bit board), the gradual distortion of the clock on APA102 was indeed a problem. Many, many people find that they need to use a much lower clock to make the strip work reliably.

If you like APA102 or similar 4-wire LED strips, I think this is a personal choice. Just know that almost all objects can "regenerate" the clock signal through the simulation process. This is not a digital copy like WS2812.

Do you have these things to sell?

Please be kind and respectful to help make the comment section great. (

The site uses Akismet to reduce spam.

By using our website and services, you expressly agree to our placement of performance, functionality and advertising cookies.