嵌入式小项目ESP32和STC51芯片制作一个光立方

简介: 嵌入式小项目ESP32和STC51芯片制作一个光立方

    大家好,分享一个用ESP32和STC51芯片,以及0805贴片灯珠,手工焊接制作的小小光立方。

看起来还是相当酷炫的,大家喜欢的话,欢迎复刻和交流。

▲ 点击观看

02 项目说明

  • 使用esp32 和 STC51 芯片制作的光立方
  • 使用0805贴片灯珠,手工焊接成的光立方
  • 成品外观尺寸:565678mm
  • 硬件电路和源代码开源,上位机开源(仅光立方)
  • 可以连接wifi和串口进行控制光立方
  • 可以独立使用,可以上位机连接使用,
  • 上位机使用unity3D开发,拓展性强。上位机支持win电脑端和手机安卓端等。
  • 支持开发光立方的SDK:Arduino esp32、unity3D packet、python、Android studio、C# winform、Do-It-Yourself。
  • 送女朋友也不会分手了

小小光立方和相关资料都为个人原创作品,免费开源。

硬件完成。软件可以开发更多功能。

设计资料开源

链接:https://pan.baidu.com/s/1S9MsWZ7Lz66SiAS-eFISFQ?pwd=2twt 提取码:2twt

全部资料6G左右,都放在网盘中了。还在收集开发者测试的问题中,资料会有不定时的更新。

03功能简介

在这里只介绍小小光立方已经实现的功能。电路焊接,上传代码,光立方使用,上位机使用,等请到设计资料里面找相关文档。

1、焊接光立方的工具套装较简单,基本无需复杂的工艺,花钱买设备即可。光立方使用一个usb口实现给esp32和51上传代码,使用自锁开关切换上传模式,无需繁琐的操作。光立方体积小,使用碳钢丝连接灯珠不易损坏。光立方自带电池可以脱离其他设备使用。

2、首先上传默认的演示代码,保证光立方能运行起来。接下来介绍光立方的操作。

光立方芯片板上面有四个触摸按钮,分别是开关、模式、效果、自定义。

开关的作用是打开和关闭esp32的控制,打开后就使用esp32控制光立方的运行效果,关闭后esp32将不会给51芯片发送信息。

模式

按钮是切换几种模式的功能,有音频模式、动画模式、蜂鸣器模式、温湿度模式、三轴模式。

效果

切换当前模式下的效果

自定义

在代码里面进行设置自定义功能。自定的代码一般为之前写好的光立方函数再进行拼凑出自己想要的效果的代码。

3、光立方可以使用上位机进行控制。上位机使用的是unity3D进行开发的wifi控制软件,软件支持win电脑和安卓手机。

首先打开软件,想办法找到光立方(上位机软件那里有教程),最终进入到光立方实验室中。使用wsad移动人物,你可以到处转转,里面有光立方操作教程。

光立方控制

这里可以实现光立方对象身体的控制,点击小脑袋,可以放大缩小光立方、切换灯的排列方式、隐藏打开电路板、亚克力、钢丝等。

特效控制

主要控制光立方灯光的效果,点一下特效就进入控制界面,特效控制有:动画、音乐、wifi、自定义

动画

在动画里面预留了几种演示的动画按钮,点击对应的动物,光立方就会展示出动画,每个动画都是可以无限播放的动画

音乐

首先找到音乐播放器(在左边),选择你的歌曲进行播放出来,在点击音乐按钮,这里可以展示音乐的FFT效果,一个可爱动物,一个音乐效果,点击动物后,效果就会在光立方跳动出来。

WIFI

这里进行连接到实体光立方,你只需更改光立方的IP地址即可,其他默认的。(光立方wifi设置在光立方代码中修改)点击连接后,电脑和光立方就可以进行通信了。如果光立方这时候正在播放动画,那么实体光立方也会跟着同步动画内容。

wifi这里还有四个按钮,这四个按钮就相当于光立方的四个触摸按钮,按钮控制可以同步到光立方当中。同步三轴不要按呀,一按光立方就蹦跶跑了。

自定义用来鼠标控制光立方的灯状态,鼠标左键滑动灯时灯亮,右键滑动灯时灯灭,

颜色 这里可以设置光立方主板的颜色,还有光立方每层灯珠的颜色,

在光立方实验室中,你还可以看到光立方的焊接室和光立方AR室,

光立方焊接室主要是为了展示光立方是如何焊接的,在这里你也可以学习如何焊接光立方,看桌子上的数字就是焊接步骤,光立方焊接室东西太多了,有点卡。

光立方AR室,使用光立方的地板进行AR识别,这样你就可以实现在现实生活中出现一个虚拟的光立方在你的电脑中。这个虚拟的光立方用法跟上位机一样

电脑端喇叭fft测试控制光立方,电脑端音乐播放器控制光立方。这俩程序主要用来显示FFT效果,如果你对软件界面要求不高,可以使用这个软件。软件小,速度更快更稳。

esp32遥控板控制光立方。光立方可以连接到wifi后使用UDP进行控制,为了实现指定设备的控制,还可以使用esp32遥控板控制光立方,可以当做光立方的遥控器,拓展光立方的无线按钮。

6、6.android studio音乐播放器控制光立方。在手机端只可以使用软件自己的音乐fft数据。这个软件可以安装到安卓手机端,可以播放你手机里面的音乐,使用wifi或串口连接到光立方,进行音频相关的控制。

7、python控制小小光立方。小小光立方相当于一个低像素的3d屏幕,想要实现更多的智能的功能,最方便的就是使用python了。使用你的python来控制光立方,代码写起来也更方便,也更简洁。

8、上位机代码也是开源的,大家可以到unity开发市场找到光立方上位机包。使用插件需要有unity账号,传达到这个链接里面,将插件加入到你的Assets中,就可以在你的unity中导入使用了。https://assetstore.unity.com/packages/slug/271303

包中有一个实例场景,还有源码二次开发的说明书。

欢迎大家的复刻……

04

实物展示

设计图

1、芯片主板

2、光立方灯板

3、光立方定位工具

4、可选固定地板

PCB

材料清单

目录
相关文章
|
设计模式 UED
二十三种设计模式:解锁软件开发的神器:命令模式与撤销重做功能
二十三种设计模式:解锁软件开发的神器:命令模式与撤销重做功能
303 0
|
9月前
|
人工智能 数据可视化 数据处理
低代码平台:技术复杂性的系统简化
低代码平台通过模块化和自动化技术简化应用开发流程,大幅缩短开发周期并提高协作效率。其核心特性如“一键编程”和“快速迭代”降低了开发复杂度,赋予企业敏捷开发能力。可视化开发、实时渲染与分布式协作支持进一步提升了开发体验。平台还优化了五大引擎(SQL、功能、模板、图表、切面),增强了数据处理能力和智能化水平。插件生态覆盖多行业场景,支持实时数据处理、AI模型训练、智能图像处理等功能。开放架构结合微服务、开源框架和高性能支撑,确保系统的灵活性与扩展性。低代码平台正逐步成为企业技术创新的得力助手,助力企业快速响应市场需求。
205 16
|
消息中间件 存储 Java
RabbitMQ 在微服务架构中的高级应用
【8月更文第28天】在微服务架构中,服务之间需要通过轻量级的通信机制进行交互。其中一种流行的解决方案是使用消息队列,如 RabbitMQ,来实现异步通信和解耦。本文将探讨如何利用 RabbitMQ 作为服务间通信的核心组件,并构建高效的事件驱动架构。
458 2
|
C# 图形学
【unity小技巧】Unity音乐和音效管理器
【unity小技巧】Unity音乐和音效管理器
851 1
|
网络虚拟化
无线基础知识:直接转发和隧道转发有何区别?
无线基础知识:直接转发和隧道转发有何区别?
922 4
|
存储 关系型数据库 MySQL
探索MySQL:关系型数据库的基石
MySQL,作为全球最流行的开源关系型数据库管理系统(RDBMS)之一,广泛应用于各种Web应用、企业级应用和数据仓库中
|
XML JSON 网络协议
超级好用的C++实用库之字节流解析器
超级好用的C++实用库之字节流解析器
146 3
|
vr&ar 图形学 UED
优化图形渲染与物理模拟:减少Draw Calls与利用LOD技术提升性能
【7月更文第10天】在现代游戏开发和实时渲染应用中,性能优化是至关重要的环节,它直接关系到用户体验的流畅度和真实感。本文将深入探讨两种关键技术手段——减少Draw Calls和使用Level of Detail (LOD) 技术,来提升图形渲染与物理模拟的效率。
693 2
|
机器学习/深度学习 存储 数据可视化
特征选择的艺术:利用Scikit-learn提升模型性能
【7月更文第22天】在机器学习的实践中,特征选择是一项至关重要的步骤,它直接影响到模型的性能、训练速度以及对新数据的泛化能力。特征选择,或称为变量选择,旨在从原始特征集中识别并保留最相关、最有影响力的特征子集,同时剔除冗余或无关紧要的特征。本文将探讨特征选择的重要性,并通过使用Python中的Scikit-learn库演示几种有效的特征选择方法,以提升模型性能。
747 4
|
Web App开发 JSON JavaScript
Chrome 插件各模块之间的消息传递
Chrome 插件各模块之间的消息传递 一、消息传递 1. 消息传递分类 Chrome 插件的 Action、Background 和 content_script 三个模块之间的信息传输 插件和插件之间的信息传输 网页向插件进行信息传输 与原生应用进行消息传递
733 0