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

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

3天内不再提示

使用Arduino Nano制作一个4×4×4 LED立方体

科技观察员 来源:electroschematics 作者:electroschematics 2024-02-11 12:07 次阅读

在这个项目中,我们将使用 Arduino Nano 制作一个很酷的 4×4×4 LED 立方体。LED 立方体,也称为 LED矩阵,可以照亮您的房间、学习空间或创客区域,使其看起来非常酷炫。此外,它非常容易构建,并帮助您在电子和编码方面发挥创意

我们的 LED 立方体尺寸为 4x4x4,由四层组成,每层包含 64 个 LED。这意味着,每层可容纳 16 个LED,如本文后面的图表所示。该连接涉及 64 个 LED 以特定组合连接到 Arduino。当 LED 的正极端子从 Arduino接收到高电平信号,负极端子获得低电平信号时,LED 亮起。要组装立方体,请将一个引脚连接到每列(总共 16 个),将一个引脚连接到每层(总共 4个)。因此,您只需要 20 个引脚即可完成这个令人印象深刻的4x4x4 LED 立方体项目。我们将指导您逐步构建四层,确保 LED对齐、均匀间隔并正确焊接到位。

使用 Arduino Nano 的 4×4×4 Led Cube 所需的组件

Arduino 纳米

64- 5mm 蓝色 LED

母头

彩虹带电缆

100Ω电阻

3V 电池测试 LED

PCB

铜丝

工具(烙铁、剪线机、砂纸)

4×4×4 LED立方电路图

使用 Arduino Nano 的 4 * 4 * 4 LED 立方体的电路图涉及多个组件和连接,以确保正常运行。这是一个分步说明。将 64 个
LED 排列成 4x4x4 矩阵。每个 LED 代表立方体中的一个像素。

将每个 LED 的阳极(较长的支腿)连接到其各自的行,将阴极(较短的支腿)连接到其各自的列。完整的 4x4x4 LED
立方体原理图如下图所示。

使用 Arduino Nano 的 4x4x4 LED 立方体电路图

将 Arduino Nano 的数字输出引脚(A4 到 D13)连接到 LED 立方体的列。这些引脚将控制多维数据集的各个列。

将数字输出引脚(A0 至 A3)连接到立方体的层。这些引脚将控制立方体的每一层。将限流电阻(通常为 100-220
欧姆)与每层串联,以防止电流过大。将电阻的一端连接到Arduino Nano的数字输出引脚,另一端连接到相应的行。

构建 4x4x4 LED 立方体

请记住仔细检查您的连接并使用适当的限流电阻器来保护 LED。通过此设置,您可以对 Arduino Nano 进行编程,以在 4x4x4 LED
立方体上显示各种图案和动画。

4x4x4 LED 立方体如何工作?

在开始焊接并深入了解项目的细节之前,了解事情的运作方式非常重要。这个项目背后的主要大脑是一个名为Arduino
Nano的微控制器板。它就像一台微型计算机,使用 ATmega328P 微控制器。这个小家伙有 20
个引脚,可以用于不同的事情,比如打开和关闭东西。在我们的例子中,我们专注于 14 个数字引脚和 6 个模拟引脚,它们都将在我们的项目中充当开关。

现在,在 4x4x4 LED 立方体上,它由 64 个 LED 组成,排列成一种网格。有 4 层 LED,每层有 16 个 LED,采用 4x4
设置。一层中每个 LED 的设置方式乍一听可能有点复杂;它被称为共阳极。这仅意味着 LED 的所有正极均已连接。现在,这是很酷的部分,即使我们有 64 个
LED,我们只需要微控制器上的 20 个引脚来控制它们。我们使用 16 个引脚来控制每层的 LED。诀窍是通过它们的正极连接各层,通过给一个 LED 提供 5
伏电压并将负极连接到地面,我们可以让它亮起。其余 4 个引脚为各层供电。我们的编程魔力将使这一切顺利进行。下图显示了 4x4x4 LED 立方体 Arduino
模拟,您可以看到 arduino nano 上的每个引脚如何能够单独控制我们立方体上的 LED。

使用Arduino Nano设计和构建4×4×4 Led Cube

检查所有 64 个 LED,确保它们使用小纽扣电池工作。

使用纽扣电池检查 LED

在我们开始组装 LED 立方体并进行任何焊接之前,最好确保 LED 正常工作。我们的 LED 需要 3.3
伏电压。较长的导联为正,较短的导联为负。您可以使用任何 3.3V 电池轻松测试它们。在我的案例中,我使用了锂离子电池进行测试。

我们使用的 LED 是透明的,并且发出非常微弱的光,因此我们希望使它们不那么强烈。

漫射光使 LED 更亮,使立方体看起来更酷。只需在每个 LED 的顶面上擦拭砂纸,或者您可以使用带有砂纸的直流电机来扩散所有 64 个
LED。

构建 4x4x4 LED 立方体

4x4x4 LED立方体制作

要为您的 LED 立方体制作模板,请买一块足够大的木头来制作 4x4 网格,确保每个正方形为 25 毫米。首先在木头上用线条画一个 4x4
的网格。使用中心冲头在线条相交的地方打凹痕。然后,找到一个恰到好处的钻头——小到可以将 LED
牢固地固定到位,但又足够大,无需弯曲电线即可轻松拆卸。在网格上标记的点钻 16 个孔。现在,您的 LED 立方体模板已全部设置好,并准备好进行下一步组装。将
LED 插入各个孔中。

使用 Arduino Nano 构建 4x4x4 LED 立方体

现在,取一根直铜线并将其焊接到第一行 LED 的正极引脚上,如下图所示。同样,以相同的方式焊接所有四排 LED 的正极引脚。

建筑Arduino LED立方体

现在,继续通过焊接连接四根铜线两侧的腿端。这将建立连接,将 LED 的所有 16 个正极相互连接。通过这样做,我们将成功完成第一层的组装。

4x4x4 LED立方体Arduino

将孔正极脚焊接在一起后,将盒子翻转过来,开始将 LED 的尖端从夹具的孔中推出。确保均匀地执行此操作,以避免弯曲或损坏层结构。现在您的第一个 LED
层已经完成!再执行此步骤三次,最终得到四层。

4x4x4 LED 立方体层

接下来,取第一层 LED 并将 16 根负极引线焊接在一起,将各个层堆叠在一起。

4x4x4 LED立方体焊接

将另一层放在上面,并将其中一个角与第一层正好对齐 25 毫米(或您在网格中使用的任何距离)。这是阳极线之间的距离。

用手将角固定到位,并将第一层的角阴极焊接到第二层的角阴极上。对所有角落都执行此操作。

4x4x4 LED立方体的构造

焊接 4x4x4 LED 立方体电路

4x4x4 LED
立方体开始成型。检查各层是否在所有尺寸上都完全对齐。如果没有,请稍微弯曲进行调整。或者,如果高度距离不对,则重新焊接。当它们完全对齐时,将剩余的 12
个阴极焊接在一起。

焊接后 4x4x4 LED 立方体的最终图像

4×4×4 LED Cube Arduino代码说明

该代码的结构旨在执行一系列预定义的照明模式,从而在 4x4x4 LED 立方体上创建引人入胜的视觉体验。本页底部给出了完整的 4x4x4 LED
立方体代码。动画包括闪烁效果、连续 LED 激活、随机图案和各种动态显示。用户可以修改延迟时间并尝试顺序或创建新功能来自定义 LED 立方体的行为。

int layer[4]={A3,A2,A1,A0}; //initialize and declaring led layers

int column[16]={13,12,11,10,9,8,7,6,5,4,3,2,1,0,A5,A4}; //initializing and
declaring led rows

int time = 250;

column:保存 LED 立方体列的引脚号的数组。

layer:保存 LED 立方体各层的引脚号的数组。

time:一个变量,表示代码各个部分使用的延迟时间。

void setup()

{

for(int i = 0; i《16; i++)

{

pinMode(column[i], OUTPUT); //setting rows to output

}

for(int i = 0; i《4; i++)

{

pinMode(layer[i], OUTPUT); //setting layers to output

}

randomSeed(analogRead(10)); //seeding random for random pattern

}

setup 函数在程序开始时执行一次。它将列和层数组中的每个引脚设置为输出。它使用引脚 10 的模拟读数为随机数生成器提供种子。

void loop()

{

turnEverythingOff();

flickerOn();

turnEverythingOn();

delay(time);

turnOnAndOffAllByLayerUpAndDownNotTimed();

layerstompUpAndDown();

spiralInAndOut();

turnOnAndOffAllByColumnSideways();

delay(time);

aroundEdgeDown();

turnEverythingOff();

randomflicker();

randomRain();

diagonalRectangle();

goThroughAllLedsOneAtATime();

propeller();

spiralInAndOut();

flickerOff();

turnEverythingOff();

delay(2000);

}

loop 函数是程序的主要执行循环。它按顺序调用各种照明模式和效果,每个模式和效果都后跟几毫秒的时间延迟。然后,循环等待 2000 毫秒(2
秒),然后再开始下一次迭代。

4x4x4 LED 立方体Arduino代码的控制功能

该代码定义了多个函数,每个函数负责特定的照明模式或效果。以下是一些值得注意的功能的摘要。

turnEverythingOff(): 关闭所有 LED。

turnEverythingOn():打开所有 LED。

flickerOn() 闪烁(): 逐渐增加和减少所有 LED 的亮度。

turnOnAndOffAllByLayerUpAndDownNotTimed(): 按顺序上下模式打开和关闭图层。

turnOnAndOffAllByColumnSideways(): 以横向模式依次打开和关闭列。

layerstompUpAndDown(): 通过打开和关闭单个图层来模拟踩踏效果。

flickerOff(): 逐渐增加和减少所有 LED 的亮度。

aroundEdgeDown():以下降模式点亮立方体边缘周围的 LED。

randomflicker(): 模拟随机闪烁效果。

randomRain(): 使用随机掉落的 LED 模拟雨水效果。

diagonalRectangle():以对角矩形模式点亮 LED。

螺旋桨():模拟螺旋桨效应。

spiralInAndOut(): 以螺旋进出模式点亮 LED。

goThroughAllLedsOneAtATime():按顺序打开和关闭所有 LED,一次打开和关闭一个。

该代码提供了一组用于控制 4x4x4 LED 立方体、创建各种照明模式和效果的函数。每个照明模式都封装在一个功能中,促进了模块化和易于理解。loop
函数按顺序编排这些模式的执行。

4x4x4 LED立方体代码生成器

我知道对 LED 立方体进行编程可能是一个真正的头疼问题,尤其是在将它们放在一起之后。这就是为什么这是一个易于使用的 Windows 应用程序,名为
Cube3D。这个应用程序消除了对 LED 立方体进行编程的痛苦。它旨在编写必要的代码,无论您是将 Arduino 还是 C 与 Atmel Studio
一起使用。现在,一切都为 4x4x4 LED 立方体做好了准备。从链接下载 Cube3D 应用程序 (.exe) 并按照安装向导进行操作。

该应用程序为 4x4x4 LED 立方体生成一个图案表,并使其易于可视化图案。用于对 LED
立方体进行编程的代码随应用程序一起提供,并且也存在于其自己的存储库 LED-Cube-Code 中。

只需单击它们来选择要点亮的 LED – 超级简单!在代码编辑器中按 Enter 键后,它就会发挥其魔力,并根据立方体中打开的 LED
创建一个模式。它有一个时间变量的输入字段,通过更改它,您可以更改模式在立方体上显示的时间(以毫秒为单位)。
审核编辑:陈陈

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • led
    led
    +关注

    关注

    237

    文章

    22449

    浏览量

    645878
  • Arduino
    +关注

    关注

    184

    文章

    6427

    浏览量

    184834
  • 立方体
    +关注

    关注

    0

    文章

    6

    浏览量

    6378
收藏 人收藏

    评论

    相关推荐

    数据立方体压缩技术研究

    种重要的物化视图,它有助于缩短应答查询的时间,但同时也由于其自身的庞大体积而带来了系列的问题,包括较高的存储成本、较低的管理维护效率等。数据立方体压缩相关技术是近年来的热点研究领
    发表于 04-24 09:17

    想做4*4*4立方,求指导

    想做个4*4*4立方,每层共阳,按照别人的方法把立方体给焊出来了,有74HC154和74HC245和单片机,求教剩下怎么焊,另外求
    发表于 05-23 17:32

    【GoKit申请】+调皮的立方体

    本帖最后由 987hans 于 2015-5-14 12:01 编辑 初步实现立方体边着地,并平稳站立。第二步预计实现以立方体其中顶点着地并平稳站立。第三步预计在其中
    发表于 05-13 11:56

    声控立方体

    想做一个声音控制的立方体,8*8*8的光立方体,采集外界的音频,作为信号。第一个问题,音频传感器,大家给推荐
    发表于 09-27 22:29

    使用stm32制作立方体3D显示器

    led搭建了16*16*16的立方体,通过微控制器控制led的亮灭显示各种图案,实现了真正意义上的裸眼3D显示,不仅可以用于商业上的广告
    发表于 09-04 16:15

    制作CUBE8光立方3D立方体LED显示器 电子资料

    如本文题图所示,CUBE8是长、宽、高由8×8×8LED灯组成的真实3D立方体显示器。其最大的特点,就是带给你未来3D技术的科技体验。
    发表于 04-20 06:57

    自制LED立方体

    描述LED 立方体 8x8x8 arduino 74hc595n
    发表于 07-13 06:40

    基于Arduino mega的8×8×8 LED立方体

    描述基于 Arduino mega 的 8×8×8 LED 立方体,甚至可以在动画上写下你的名字将所有组件焊接到板上后,将其连接到
    发表于 08-03 07:42

    LED立方体8×8×8的资料分享

    描述令人惊叹的 LED 立方体 8×8×8这是 8×8×8 LED 立方体。它与 pcb 板和 512 led
    发表于 08-23 06:43

    设计Arduino Uno迷你LE立方体

    描述Arduino Uno 迷你 LE 立方体我认为这将是快速的周末电路雕塑项目。但是,我低估了 Arduino Uno Mini LE
    发表于 09-02 06:42

    如何制作LED立方体夹具

    所以现在您有了一个完整的LED立方体。夹具,它肯定会使您简化LED立方体 的工作。现在,您可以将所需的彩色LED放到夹具中,然后开始将它们焊
    的头像 发表于 11-20 09:44 1870次阅读

    LED立方体arduino 74hc595n开源项目

    电子发烧友网站提供《LED立方体arduino 74hc595n开源项目.zip》资料免费下载
    发表于 07-11 15:26 0次下载
    <b class='flag-5'>LED</b><b class='flag-5'>立方体</b><b class='flag-5'>arduino</b> 74hc595n开源项目

    基于Arduino mega 8×8×8 LED立方体

    电子发烧友网站提供《基于Arduino mega 8×8×8 LED立方体.zip》资料免费下载
    发表于 07-20 17:14 1次下载
    基于<b class='flag-5'>Arduino</b> mega 8×8×8 <b class='flag-5'>LED</b><b class='flag-5'>立方体</b>

    基于Arduino的4x4x4 LED立方体

    这个项目能够让你使用手机麦克风根据音量(分贝)来控制led立方体
    发表于 12-02 17:32 0次下载

    Arduino Mega供电的8x8x8LED立方体

    电子发烧友网站提供《由Arduino Mega供电的8x8x8LED立方体.zip》资料免费下载
    发表于 12-13 09:26 0次下载
    由<b class='flag-5'>Arduino</b> Mega供电的8x8x8<b class='flag-5'>LED</b><b class='flag-5'>立方体</b>