跳到主要内容

AN-1172 LED立方体动画音乐节奏

内容

参考文献

有关文件及软件,请浏览:

//www.wsdof.com/雷电竞官网登录products/greenpak

下载我们的免费GreenPAK设计软件[1]打开。gp文件[2],并使用GreenPAK开发工具[3]在几分钟内将设计冻结到您自己的定制IC中。

雷竞技电竞平台Dialog Semiconductor提供了一个完整的应用笔记[4]库,包括设计示例以及Dialog IC内的功能和块的解释。

  1. GreenPAK设计软件,软件下载和用户指南,Dialog Semiconductor雷竞技电竞平台
  2. AN-1172 LED立方体动画音乐节奏。gp, GreenPAK设计文件,Dialog Se雷竞技电竞平台miconductor
  3. GreenPAK开发工具, GreenPAK开发工具网页,Dialog Semiconductor雷竞技电竞平台
  4. GreenPAK申请说明, GreenPAK应用说明网页,Dialog Semiconductor雷竞技电竞平台
  5. SLG46538数据表,Dialog 雷竞技电竞平台Semiconductor

简介

本应用笔记介绍了如何设计一个简单的3x3x3 LED立方体,并使用GreenPAK™SLG46538V控制它。我们将讨论GreenPAK如何使用其功能在立方体上创建伟大的动画与音乐的节奏。

大型3D LED立方体通常用于视觉娱乐,有时搭配麦克风与音乐或声音互动,可以在音乐会和俱乐部中找到。在本应用笔记中,我们将讨论三种由GreenPAK驱动的动画方案,并解释如何为不同大小的LED立方体创建动画。

构建立方体

网上有很多教程解释如何构建LED立方体,但我们推荐这一个,这是非常清楚和容易遵循。立方体应该有三层和九个独立的列。

一旦您构建了您的多维数据集,我们就可以进行下一步。一些LED立方体教程使用可焊面包板(又名perfboards)作为立方体电路的基础,但这是不必要的。好消息是,这个立方体的电源很容易管理,因为只有27个led需要控制。更大的立方体需要更仔细的设计来控制电源。

示意图

电路总体原理图如图1所示。它使用3个NPN晶体管为三层中的每一层吸收电流到GND。对于这个项目,我们选择了SLG46531V,因为引脚的数量非常符合我们的要求。

使用三个晶体管将每一层连接到GreenPAK是很重要的,因为如果该层中的每个LED都开着,GreenPAK就不能支持最大电流。每一列都连接了470Ω电阻,以限制led的电流。

图1。3D立方体3x3x3原理图

GreenPAK设计

在为立方体设计动画时,了解GreenPAK的局限性是很重要的:每个GreenPAK IC只能控制一个动画。尽管如此,当一个复杂的立方体(如8x8x8立方体)使用大量集成的greenpak设计时,可以以非常低的成本和良好的性能设计出优秀的动画。

使用GreenPAK设计LED立方体最重要的组件是:异步状态机(ASM)、D触发器(dff)、查找表(lut)和逻辑门、适当数量的引脚和时钟源。ASM的任务是从一种状态转换到另一种状态,这有助于在立方体上显示不同种类的LED组合。

由于ASM输出位的数量有限,应该使用dff和lut来覆盖与立方体的列和层相关的所有引脚。dff可以配置为移位寄存器,这对于动画设计至关重要,因为它允许配置每个ASM状态以直接控制到多维数据集的输出。dff的时钟源可以实现声音同步,因为声音检测传感器将发挥时钟的作用。声音将激发dff将当前位数据转换为新的位数据,从而产生led动画。

为这个应用程序笔记设计了三个动画。动画#1的设计没有声音检测,动画#2和#3的设计与传感器检测到的音乐同步。

动画# 1

图2。动画#1 GreenPAK设计

本设计的目的是模拟一个简单的立方体动画,一层一层地打开所有的led,在一定的时间后(当CNT0达到极限时)立方体将打开所有的led。这允许用户轻松地测试立方体上的所有led是否连接并正常工作。

动画# 2

图3。动画#2 GreenPAK设计

对于声音检测电路,我们采用现成的KY-038声音检测模块将一首歌的声音同步到立方体上,这样立方体就可以以多种方式表现出视觉多样性。这是通过首先连接模块的VDD和GND,然后将其数字输出(DO)连接到GreenPAK的18引脚来完成的。每次模块检测到声音,它切换发送到引脚18的信号。本应用中不使用KY-038的模拟输出(AO)。需要对内置电位器进行更广泛的校准,以使该模块能够按需要探测声音。

为立方体设计的第二个动画与音乐同步旋转。图5是该多维数据集的单层表示。除COLUMN_5外,所有列都直接由ASM工具控制。ASM有四个状态(从0到3),将按照顺序(如表1和图4所示)。

表1。ASM状态输出动画#2
ASM输出
状态0
OUT3, OUT4
Column_4, Column_6
状态1
OUT2, OUT5
Column_3, Column_7
状态2
着干活,OUT6
Column_2, Column_8
状态3
OUT0, OUT7
Column_1, Column_9
图4。ASM状态转换动画#2
图5。三维立方体单层表示

如你所见,这些列会像轮盘赌一样交替,围绕立方体旋转。层交替由DFF移位寄存器,以及ASM的使能引脚,它允许列的交替。

在dff上,你可以用计数器设置静态时钟时间,但在这个动画中,声音检测传感器被用作时钟源。这将随着音乐的节奏改变数据。这可以被称为“可变时钟源”,因为每一段音乐都有独特的时间和声音,从而产生带有许多过渡组合的随机动画。

注意引脚18,声音检测传感器,是如何连接到dff的每个CK输入引脚的。部分设计(动画的开始部分)是使用CNT5等待15秒,然后设置LATCH0以保存其新值HIGH。在初始阶段,所有三个层都将是LOW(查看LUTs 5、6和7),这意味着当ASM“旋转轮盘赌”时,所有层将同时工作。

注意:校准传感器模块的电位器很重要。从扬声器到传感器麦克风的距离对于校准灵敏度非常重要。

动画# 3

图6。动画#3 GreenPAK设计

这个动画比前一个更随机。它设计了更多的lut来控制与不同ASM输出共享的列。再看一下图4,看看这个动画与ASM状态的关系,它与动画#2不同。具有7个状态(从0到6)的ASM将遵循表2和图7中所示的顺序。

表2。ASM状态输出动画#3
ASM输出
状态0
OUT0
Column_1, Column_4, Column_8, Column_9
状态1
着干活
Column_3, Column_6, Column_7, Column_8
状态2
OUT2
Column_2, Column_4, Column_5, Column_7
状态3
OUT3
Column_4, Column_5, Column_6, Column_9
状态4
OUT4
Column_3, Column_5, Column_6, Column_7, Column_8
国家5
OUT5
Column_1, Column_2, Column_5, Column_9
国家6
OUT6
Column_1, Column_2, Column_7

在这个动画中,列将与一些不同的随机模式交替,使它比以前的动画更动态。这个动画使用更多的lut作为OR门来创建更多的组合可能性,当动画与音乐一起运行时。OR门从ASM输出接收尽可能多的输入。通过这种方式,可以从不同的输入源控制与列关联的引脚,为执行的每个状态创建不同的图形。对于前面的动画,ASM图(图7)非常简单。它作为一个循环或循环运行,所以一旦它达到最终状态,它将返回到初始状态。

从一开始,3D立方体将开始改变其状态,一旦它检测到来自Pin 18(声音检测传感器)的信号,随着音乐跳舞。在前面的动画中,ASM中的状态将由dff移位位而激发;层的相关引脚也是如此。

图7。ASM状态过渡动画#3

额外的信息

我们已经讨论了如何使用GreenPAK芯片创建一些LED立方体动画,但还有另一种方法来设计这些动画。微控制器或微处理器可以用于更复杂的动画。可以使用I2C和ASM工具将GreenPAK 5实现为I/O扩展器,在一般系统架构内设计GreenPAK的目标是减少处理器使用的引脚数量,以实现更大的立方体,如16x16x16 led。

可以很容易地使用GreenPAK作为立方体设计的主控制器,立方体从3x3x3到8x8x8。但是,请记住,LED立方体中LED的数量越多,设计控制方案的挑战性就越大。您可能需要使用多个GreenPAK芯片来控制一个大的立方体。

结论

GreenPAK可以是一个伟大的盟友,当你希望设计一个三维立方体的视觉娱乐。使用多个GreenPAK芯片,您可以创建几乎任何您可以想象的动画。使用声音探测器可以让你的设计与音乐互动,产生神奇的效果。由于GreenPAK的体积小,简单性和高可配置性,您可以创建高质量和非常紧凑的电路来驱动3D立方体,成本低,开发过程快。