当前位置:首页 > 工业控制 > 电路设计项目集锦
[导读]这是我们版本的《Flappy Bird》,在这个版本中,由单个像素表示的小鸟在16x8 LED矩阵上移动柱子的间隙中移动。目标是在空间之间导航时避免撞到柱子。游戏玩法由一个按钮控制,挑战随着时间的推移而增加。

大家好,欢迎回来。这里有一些有趣的东西。

The XIAO Hopper,一款基于《Flappy bird》灵感的游戏。

在这里,我们使用自定义的16x8 WS2812B LED矩阵作为显示器和按钮来控制像素。

“XIAO跳跃器”一词源于我们的版本《Flappy Bird》,它使用了一个XIAO微控制器;故名萧hopper。

这是我们版本的《Flappy Bird》,在这个版本中,由单个像素表示的小鸟在16x8 LED矩阵上移动柱子的间隙中移动。目标是在空间之间导航时避免撞到柱子。游戏玩法由一个按钮控制,挑战随着时间的推移而增加。

柱子是随机分配的空间,鸟儿必须穿过这些空间。

当按下按钮时,鸟儿向上飞行;松开按钮时,重力将其向下拖动。

本文是关于这个项目的完整构建过程,所以让我们从构建开始。

材料要求

这些是在此构建中使用的组件。

•XIAO ESP32 C6 DEV board

•定制PCB(由Seeed Fusion提供)

•WS2812B发光二极管

•跳线

•电路试验板

•按钮

XIAO ESP32 C6 DEV board

在这个项目中,我们使用的是基于ESP32-C6 SoC的XIAO ESP32 C6开发板,它具有双32位RISC-V处理器,一个具有160 MHz的高性能内核,另一个具有20 MHz的低功耗内核,可实现高效的多任务处理和节能。

它的512KB SRAM和4MB闪存为程序执行和存储提供了足够的空间,使其成为对速度和内存效率都有要求的项目的绝佳选择。

XIAO ESP32 C6以其连接性而脱颖而出,支持Wi-Fi 6,蓝牙5.3和Zigbee/Thread等高级协议,可与智能家居系统和物联网设备顺利集成。该板具有11个GPIO引脚和各种接口,如UART, SPI, I2C和ADC,允许轻松连接到传感器和外设。其占地面积小(21 x 17.8 mm)和USB Type-C电源输入使其非常适合空间受限和便携式项目,例如LED矩阵游戏机。

如果您想要一个,请访问其产品页面,或者访问其wiki页面以了解有关开发板的更多信息。

16x8 WS2812BLED矩阵

在这个项目中,我们使用我们之前制作的矩阵项目之一,该项目由128个WS2812B LED组成,放置在16x8矩阵布局中,16个LED放置在16行和8列中。

每个WS2812B LED彼此并联连接。为了控制所有128个LED,只需要一个GPIO,因为每个LED都以独特的配置连接,其中第一个LED Dout连接到第二个LED Din端口,第二个LED Dout连接到第三个LED的Din端口,以此类推,直到最后128个LED。

要更深入地了解该显示器的开发过程,请参阅我之前的文章,我在其中简要解释了它。

Seeed Studio Fusion

Seeed Fusion PCBService为PCB制造和PCB组装提供一站式原型设计,因此,他们在7个工作日内生产出高质量的PCB和快速交钥匙PCB。

Seeed Studio Fusion PCB组装服务负责整个制造过程,从Seeed Studio Fusion敏捷制造和硬件定制到零件采购,组装和测试服务,因此您可以确保他们获得高质量的产品。

在衡量市场兴趣并验证工作原型之后,Seeed Propagate Service可以通过专业指导和强大的连接网络帮助您将产品推向市场。

试验板组装

•为了开始组装,我们将XIAO ESP32 C6微控制器放在面包板上。然后,我们在它旁边添加Push Button。

•我们通过将矩阵的VCC连接到XIAO的5V开始布线过程。

•然后将矩阵的GND连接到XIAO的GND。

•我们将Push Button的一端连接到GND,另一端连接到GPIO 1。

•矩阵数据线连接到XIAO的GPIO0。

接线过程现在已经完成。

代码

这是在这个项目中使用的代码,它是一个简单的。

让我们简要地分析一下代码。

我们使用Adafruit_NeoMatrix.h库来控制16x8 WS2812B LED矩阵。这个库帮助我们绘制像素、形状和动画。

初始化矩阵以匹配其物理布局和颜色格式。

BUTTON_PIN连接到一个按钮,该按钮控制鸟的运动。

跟踪鸟的垂直位置(birdY)。

柱子用x(水平位置)、gapStart(缝隙位置)和gapHeight(尺寸)来定义。

本节准备LED矩阵,设置按钮引脚作为输入,并初始化柱子。

这个按钮控制小鸟的运动,模拟释放时的重力。

小鸟的位置被固定在屏幕边界内,并在x=3处绘制。

柱子向左移动并在离开屏幕时重置新的间隙位置。

这将检查小鸟是否击中了柱子(在间隙之外),并显示红色的“Game Over”,然后重新开始游戏。

随着时间的推移,柱子移动得越快,游戏就越难。

结果和下一步

这是这个小构建的最终结果:在基于esp32的开发板上使用自定义矩阵面板运行一个类似《Flappy bird》的游戏。

我们使用Push Button控制Bird或Pixel的移动;随着时间的推移,游戏的难度也在增加。如果我们击中任何建筑物,我们将看到一个红色屏幕,表明游戏已经结束;然后游戏重新开始,循环再次重复。

这是一个小型手持游戏控制台项目的测试项目,该项目将由一个带有按钮的单个定制矩阵PCB组成。游戏将会在屏幕上进行编程,它看起来就像Game Boy或类似的设备,但带有RGB LED显示屏。

本文编译自hackster.io

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭