资料介绍
描述
灵感
我一直对能够实时响应声音的彩色显示器着迷。能够看到声波令人着迷,当声波被分解成其组成部分时会更好。查看声音数据的一种方法是使用频率分析仪,其中从左到右的条形图根据给定频带的幅度扩展和收缩。我想重新创造这种效果,但要有所改变——让它变得线性且更加丰富多彩。
所需硬件
这个项目的主处理器是一个 Teensy 4,它负责接收传入的声音数据并进行处理。在音频被分解成频率箱后,它会沿着一串 LED 输出,从而创建一个灯光秀。至于灯本身,我选择了一条 240 个 WS2812 LED。
发送音频
在 Teensy 4 中,内置的音频库提供了几种获取音频输入的方法。其中一些包括 ADC、I2S 甚至 TDM。但是,我选择了 SD 卡 WAV 音频,因为它在传输音乐时简单易用。然后,Teensy 4 获取 WAV 文件并通过 I2S 将其发送到用于辅助输出的音频屏蔽,以及通过 USB。这使得 Teensy 显示为音频输入,类似于 USB 麦克风。
混合与分析
USB 音频输入类允许将其两个通道(左声道和右声道)“修补”到其他块中。可以使用 Teensy 音频系统设计工具查看此布局。对于这个项目,WAV 文件输入进入混频器,在此流被均匀放大,然后输出到 1024 bin FFT 分析仪、峰值模块,最后是 I2S 输出模块。1024 bin FFT 分析仪使用快速傅里叶变换从单个波形中分离出某些频率,然后将幅度放入 1024 bin。然后通过赋予较低频率的权重比较高的频率更多的权重,将这些组合成 16 个 bin。此外,读取电流波形的峰值,这决定了 LED 的亮度(声音越大 = 越亮)。
控制 LED
WS2812 的工作原理是读取一系列脉冲,将它们解析为颜色信息,然后传递其余的信息。由于我想快速更新字符串而不阻塞其他所有内容,因此我使用了 WS2812Serial 库。它通过使用直接内存访问 (DMA) 与 Teensy 4 配合使用,该直接内存访问 (DMA) 使用专用硬件将数据从缓冲区发送到串行端口,同时绕过 CPU。这释放了一些急需的循环,这些循环可用于处理更多的音频信息和分析。
视觉效果
音频库将听觉数据直接从 wav 流阅读器发送到 FFT1024 对象和 Peak 对象。峰值分析仪测量声波的当前整体幅度,并用 设置 LED 灯条的亮度WS2812Serial.setBrightness()
。给定 bin 的值(缩放后)的范围为 0 到 8。由于一个 bin 中有 15 个 LED,因此 0 表示不亮,1 表示中间的一个亮,2 表示中间的和紧邻左右亮灯等
当 Teensy 通电并启动时,颜色是随机确定的,因此两个灯光秀几乎不可能相同。
未来的可能性
这是一个非常有趣的项目,而且观看起来更有趣。还有很多其他方法可以将此项目修改为更好的东西,例如添加效果开关库、其他输入音频的方法以及更多灯光。
- RGB SMD LED打造壮观的灯光秀
- 带音乐LED灯光秀的圣诞毛衣
- Teensy和Ardunio 2种沟通方式
- 使用树莓派创建由音乐驱动的灯光效果
- 用于Teensy 4.1控制的6轴电机驱动板
- Teensy 4.1 R4ge Pro移动平台
- stm32音乐频谱OLED屏显示 52次下载
- STM32F103+FFT+OLED25664的音乐频谱制作分享(继续干货)
- 基于STM32f103的FFT频率测试程序下载 162次下载
- 基于音乐情感识别的舞台灯光自动控制系统 14次下载
- 基于DSP的通用FFT在电网检测中的应用 3次下载
- 基于新型FPGA的FFT设计与实现 47次下载
- 如何使用Arduino快速制作Teensy BadUSB详细资料和程序说明
- DSP的课程设计教程之FFT变换的详细资料说明 30次下载
- 3.4.3 FFT文件汇总 36次下载
- 如何理解FFT中的频谱泄露效应? 760次阅读
- 调用HLS的FFT库实现N点FFT 934次阅读
- MCU如何实现FFT音乐频谱显示 3578次阅读
- 如何进行FFT IP配置和设计 2206次阅读
- 用FPGA实现FFT算法的方法 5166次阅读
- Xilinx FFT IP介绍与仿真测试 2836次阅读
- 通俗易懂的讲解FFT的让你快速了解FFT 3.5w次阅读
- 海为PLC在音乐喷泉中实现喷泉的声、光、水完美控制设计 3285次阅读
- 海为PLC用于音乐喷泉控制系统的设计方案 1736次阅读
- 浅谈FFT算法原理 基于FPGA的FFT算法的硬件实现 2.6w次阅读
- 【实用指南】教你使用FFT和示波器 6084次阅读
- 示波器+FFT,轻松驾驭频谱测量 1.6w次阅读
- 视觉享受!用Raspberry Pi实现圣诞树灯光秀 8127次阅读
- 实数FFT算法的设计及其C语言实现 1w次阅读
- 利用FFT IP Core实现FFT算法 6822次阅读
下载排行
本周
- 1山景DSP芯片AP8248A2数据手册
- 1.06 MB | 532次下载 | 免费
- 2RK3399完整板原理图(支持平板,盒子VR)
- 3.28 MB | 339次下载 | 免费
- 3TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 4DFM软件使用教程
- 0.84 MB | 295次下载 | 免费
- 5元宇宙深度解析—未来的未来-风口还是泡沫
- 6.40 MB | 227次下载 | 免费
- 6迪文DGUS开发指南
- 31.67 MB | 194次下载 | 免费
- 7元宇宙底层硬件系列报告
- 13.42 MB | 182次下载 | 免费
- 8FP5207XR-G1中文应用手册
- 1.09 MB | 178次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33566次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21549次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6656次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537798次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420027次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191187次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183279次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多