手把手教你DIY龙年智能烟花!烟花效果丰富,可玩性强

千百年来,烟花爆竹被看作是中国人春节的底色,绚烂弥漫的烟花,搭配噼里啪啦的爆竹声,人们在年味渐浓中享受团聚的欢乐。而近期烟花大师蔡国强的新作品--《海市蜃楼》,也让放烟花一时成为爆款视频的"流量密码"。但受限于烟花爆竹"禁放令",很多城市主要区域依然不能享受在家放烟花的趣味,有人甚至为了跑到允许放烟花的区域,连夜"奔袭" 100 多公里。

为了让大家在家也能感受有烟花的年味,本期****涂鸦手把手教你 DIY 一款独特的智能烟花灯光秀,在家就能私人定制专属于你的音乐烟花盛宴。这款装置不仅能随音乐律动,还能通过手机 App 控制灯光颜色和场景,完美衬托龙年气氛。无论是家庭聚会还是朋友间的庆祝,它都将是绝美的节日伴侣!

一 、前期准备

二、 开发步骤

2.1 硬件连接

2.1.1 将灯串连成烟花状

① 取 1 段较长的灯带(约 1 米)作为烟花柄,这也是烟花的起始位置;

② 取 10 段一样长的灯带(约 0.5 米)作为烟花散射的光线,并将这 10 段灯带进行并联;

③ 将烟花柄的灯带和烟花光线的灯带进行串联,灯带亮的方向将会从烟花柄的一端指向烟花光线的末端;(也可直接在网上买成品,示例中用的烟花灯带就是从网上购买的成品灯带,方便省事)

2.1.2 电源连接

烟花柄末端处引出 3 根线:5V/DIN/GND,将5V 、GND 与5V 电源适配器相连。

2.1.3 连接 T2-U 开发板

烟花柄末端引出的 DIN 线接到 T2-U 开发板的 P16 引脚,同时 T2-U 开发板要与灯带共地。

2.2 下载开发包

为了方便开发者进行幻彩灯带产品的开发,涂鸦推出了幻彩产品开发包,能大大缩短开发者的开发时间。它支持用户对灯带上的每一颗灯珠进行亮度和颜色的单独调节;

同时,也为开发者提供了丰富的场景库、音乐律动库和幻彩灯带开发工具。基于该开发包,开发者可轻松添加新的场景模式、音乐律动效果,并自定义开发具备自身特色的功能。

幻彩灯带产品开发包下载步骤:

①点击下方链接,下载并登陆 Tuya Wind IDE:

t.tuya.com/AY1D3REbLB

②下载 T2 联网单品开发框架,并打开;

③在 Tuya Wind IDE 界面:点击开发框架 > 找到 T2 框架 > 点击产品开发包 > 找到幻彩灯带产品开发包 > 点击申请权限 > 填写相关信息;

④权限申请通过后,即可下载幻彩产品开发包。

2.3 编程烧录固件

2.3.1 烧录默认固件

下载完幻彩产品开发包后,什么都不需要改动,即可生成一个功能完整的三路幻彩灯固件。

①选择产品开发包工程,右键选择 Build Project;

②输入版本号回车,进行编译;

③利用涂鸦提供的烧录工具,将目标固件烧录到 T2 开发板中。烧录工具说明:

t.tuya.com/AY1D3REbME

④完成以上步骤就可以将默认固件烧录到开发板中。而且开发者可使用 Kconfig 简单配置一些功能,如选择芯片驱动,设置灯珠个数等等。

2.3.2 Kconfig 配置功能

①在 `TuyaOS` 目录下,输入下方命令就可以使用 `menuconfig` 对幻彩灯带产品开发包进行配置。

ini 复制代码
 `make app_menuconfig APP_NAME=tuyaos_wf_bk7231n_lig_pixels`

②在配置完成后输入命令即可生成新的配置头文件。

ini 复制代码
 `make app_config APP_NAME=tuyaos_wf_bk7231n_lig_pixels `

③重新编译烧录固件。

2.4 效果演示

①将烧录好固件的设备通过涂鸦 App 进行配网;

②开发者可通过 App 轻松调整烟花效果的颜色和亮度;

③点击进入场景模式,开发者可基于几个基础场景(渐变,流水,流星等)配置出自己喜欢的场景模式。

2.5 编写自己专属的本地烟花场景

幻彩产品开发包支持开发者基于幻彩场景组件轻松编写出自己的烟花场景。本次提供简单的 3 个 DIY 烟花场景的示例代码,向开发者展示如何基于开发包中的场景组件进行开发。

①在 `application_components/ty_app_main/src/ty_app_main.c` 中将 `EXAMPLES_ENABLE` 宏设置为 `1`,设备启动后会进入运行示例代码的入口;

②从涂鸦开发者论坛上下载 `example_scene_diy_fireworks.c` 的代码文件,放到 `application_components/examples_app_light/src` 文件夹中;

论坛地址:www.tuyaos.com/viewtopic.p...

③在 `application_components/examples_app_light/src/example_main` 文件中的 `examples_main()` 入口函数中,添加`example_scene_diy_fireworks()` 函数,并注释掉其他功能示例代码的入口;

④编译固件并烧录;

⑤设备启动后会自动运行 DIY 的本地烟花场景。

三、结语

通过上述步骤,你就可以在家里创造一场令人难忘的智能烟花灯光秀,为新年增添 DIY 的无限乐趣。涂鸦将与你一起迎接龙年,用智能烟花灯光秀点亮 2024 年!

涂鸦祝所有开发者龙年财源广进爱情事业生活三丰收福禄寿超级加倍!

相关推荐
憧憬一下16 小时前
驱动中的device和device_driver结构体
驱动开发·嵌入式
winddevil1 天前
[rCore学习笔记 029] 动态内存分配器实现-以buddy_system_allocator源码为例
rust·嵌入式·rcore
卑微求AC2 天前
(C语言贪吃蛇)14.用绝对值方式解决不合理的走位
linux·c语言·开发语言·嵌入式·c语言贪吃蛇
卑微求AC2 天前
(C语言贪吃蛇)13.实现贪吃蛇四方向的移动
linux·c语言·嵌入式·c语言贪吃蛇
玄奕子3 天前
GPT对话知识库——bootloader是什么?ymodel协议是什么?
stm32·gpt·嵌入式·传输协议·嵌入式驱动
FreakStudio3 天前
全网最适合入门的面向对象编程教程:55 Python字符串与序列化-字节序列类型和可变字节字符串
python·单片机·嵌入式·面向对象·电子diy
我想学LINUX4 天前
一文带你掌握 tmux -- 高效的终端复用工具
linux·嵌入式硬件·嵌入式·策略模式·tmux·tmux命令
极客小张5 天前
基于STM32和FPGA的射频数据采集系统设计流程
c语言·stm32·物联网·算法·fpga开发·毕业设计·嵌入式
winddevil5 天前
[rCore学习笔记 028] Rust 中的动态内存分配
rust·嵌入式·rcore
武汉唯众智创5 天前
嵌入式边缘计算软硬件开发“1+X”考证建设方案
嵌入式·边缘计算软硬件开发·嵌入式“1+x”