电子发烧友App

硬声App

0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示
电子发烧友网>电子资料下载>电子资料>使用FFT的Teensy 4音乐灯光秀

使用FFT的Teensy 4音乐灯光秀

2022-11-22 | zip | 0.07 MB | 次下载 | 免费

资料介绍

描述

灵感

我一直对能够实时响应声音的彩色显示器着迷。能够看到声波令人着迷,当声波被分解成其组成部分时会更好。查看声音数据的一种方法是使用频率分析仪,其中从左到右的条形图根据给定频带的幅度扩展和收缩。我想重新创造这种效果,但要有所改变——让它变得线性且更加丰富多彩。

所需硬件

这个项目的主处理器是一个 Teensy 4,它负责接收传入的声音数据并进行处理。音频被分解成频率箱后,它会沿着一串 LED 输出,从而创建一个灯光秀。至于灯本身,我选择了一条 240 个 WS2812 LED。

发送音频

在 Teensy 4 中,内置的音频库提供了几种获取音频输入的方法。其中一些包括 ADC、I2S 甚至 TDM。但是,我选择了 SD 卡 WAV 音频,因为它在传输音乐时简单易用。然后,Teensy 4 获取 WAV 文件并通过 I2S 将其发送到用于辅助输出的音频屏蔽,以及通过 USB这使得 Teensy 显示为音频输入,类似于 USB 麦克风。

pYYBAGN3KyyAEeSyAAVEf0BzcY4740.jpg
 

混合与分析

USB 音频输入类允许将其两个通道(左声道和右声道)“修补”到其他块中。可以使用 Teensy 音频系统设计工具查看此布局。对于这个项目,WAV 文件输入进入混频器,在此流被均匀放大,然后输出到 1024 bin FFT 分析仪、峰值模块,最后是 I2S 输出模块。1024 bin FFT 分析仪使用快速傅里叶变换从单个波形中分离出某些频率,然后将幅度放入 1024 bin。然后通过赋予较低频率的权重比较高的频率更多的权重,将这些组合成 16 个 bin。此外,读取电流波形的峰值,这决定了 LED 的亮度(声音越大 = 越亮)。

pYYBAGN3Ky6AFSAXAAAnz-EdZUw278.png
块布局
 

控制 LED

WS2812 的工作原理是读取一系列脉冲,将它们解析为颜色信息,然后传递其余的信息。由于我想快速更新字符串而不阻塞其他所有内容,因此我使用了 WS2812Serial 库。它通过使用直接内存访问 (DMA) 与 Teensy 4 配合使用,该直接内存访问 (DMA) 使用专用硬件将数据从缓冲区发送到串行端口,同时绕过 CPU这释放了一些急需的循环,这些循环可用于处理更多的音频信息和分析。

pYYBAGN3KzWANB7TAAfu-AKjO_E792.jpg
 

视觉效果

音频库将听觉数据直接从 wav 流阅读器发送到 FFT1024 对象和 Peak 对象。峰值分析仪测量声波的当前整体幅度,并用 设置 LED 灯条的亮度WS2812Serial.setBrightness()给定 bin 的值(缩放后)的范围为 0 到 8。由于一个 bin 中有 15 个 LED,因此 0 表示不亮,1 表示中间的一个亮,2 表示中间的和紧邻左右亮灯等

pYYBAGN3KziALxxUAACwrnFWf5k361.png
 

当 Teensy 通电并启动时,颜色是随机确定的,因此两个灯光秀几乎不可能相同。

pYYBAGN3KzqAZIavAAA-PqOeMeM297.png
 

未来的可能性

这是一个非常有趣的项目,而且观看起来更有趣。还有很多其他方法可以将此项目修改为更好的东西,例如添加效果开关库、其他输入音频的方法以及更多灯光。


下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

下载排行

本周

  1. 1山景DSP芯片AP8248A2数据手册
  2. 1.06 MB  |  532次下载  |  免费
  3. 2RK3399完整板原理图(支持平板,盒子VR)
  4. 3.28 MB  |  339次下载  |  免费
  5. 3TC358743XBG评估板参考手册
  6. 1.36 MB  |  330次下载  |  免费
  7. 4DFM软件使用教程
  8. 0.84 MB  |  295次下载  |  免费
  9. 5元宇宙深度解析—未来的未来-风口还是泡沫
  10. 6.40 MB  |  227次下载  |  免费
  11. 6迪文DGUS开发指南
  12. 31.67 MB  |  194次下载  |  免费
  13. 7元宇宙底层硬件系列报告
  14. 13.42 MB  |  182次下载  |  免费
  15. 8FP5207XR-G1中文应用手册
  16. 1.09 MB  |  178次下载  |  免费

本月

  1. 1OrCAD10.5下载OrCAD10.5中文版软件
  2. 0.00 MB  |  234315次下载  |  免费
  3. 2555集成电路应用800例(新编版)
  4. 0.00 MB  |  33566次下载  |  免费
  5. 3接口电路图大全
  6. 未知  |  30323次下载  |  免费
  7. 4开关电源设计实例指南
  8. 未知  |  21549次下载  |  免费
  9. 5电气工程师手册免费下载(新编第二版pdf电子书)
  10. 0.00 MB  |  15349次下载  |  免费
  11. 6数字电路基础pdf(下载)
  12. 未知  |  13750次下载  |  免费
  13. 7电子制作实例集锦 下载
  14. 未知  |  8113次下载  |  免费
  15. 8《LED驱动电路设计》 温德尔著
  16. 0.00 MB  |  6656次下载  |  免费

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935054次下载  |  免费
  3. 2protel99se软件下载(可英文版转中文版)
  4. 78.1 MB  |  537798次下载  |  免费
  5. 3MATLAB 7.1 下载 (含软件介绍)
  6. 未知  |  420027次下载  |  免费
  7. 4OrCAD10.5下载OrCAD10.5中文版软件
  8. 0.00 MB  |  234315次下载  |  免费
  9. 5Altium DXP2002下载入口
  10. 未知  |  233046次下载  |  免费
  11. 6电路仿真软件multisim 10.0免费下载
  12. 340992  |  191187次下载  |  免费
  13. 7十天学会AVR单片机与C语言视频教程 下载
  14. 158M  |  183279次下载  |  免费
  15. 8proe5.0野火版下载(中文版免费下载)
  16. 未知  |  138040次下载  |  免费