【得捷电子Follow me第2期】任务汇总帖2
[复制链接]
本帖最后由 NoOneZero 于 2023-11-15 10:36 编辑
强烈建议大家看看我的视频,我文字描述太垃圾
之前汇总贴提交了任务一到任务三,然后夸下海口,说任务四和任务五要做个完整的项目
今天发这个帖子前想再次编辑下的,结果不能编辑了很想把“和任务五”四个字删除了,
原本想结合网络做一个音乐灯的,结果第三期esp32C3来了,将来和它做吧
1115补:很不幸,第三期没选上,有缘在参加
接下来给大家介绍下我的项目,任务四
分任务2:WS2812B效果控制——完成一个Neopixel(12灯珠或以上)控制器,通过按键和屏幕切换展示效果
如图,本次代码一共码了 615行 (含空格和注释) 妥妥的大项目
强烈建议大家看看我的视频,我文字描述太垃圾
具体可以看我视频演示
黑色板下面是100颗WS2812
紫色PCB用到的就是五个按键,实现上下左右切换菜单
挨着的是光传感器,实现LED调节亮度
面包板中间是蜂鸣器,右侧是ADC模块,也是用来调节亮度的
ESP32启动后,显示的是NTC校准的时间,当然,还有我的少司命
按下键,到下一个菜单【LED】,按【OK】键进入 (光太强,不挡着点只能照下灯屁股)
主菜单进入后是子菜单,分别是【彩虹】【追逐】【彗星】【火花】【循环】
依次确认子菜单将激活对应功能,100颗WS2812将根据菜单选择显示相应颜色
这是【彩虹】
这是【追逐】
这是【彗星】
这是【火花】彩虹火花
【循环】就是上面四种效果挨个显示,每个显示五秒钟,实现效果看视频
按【左键】返回上级菜单
按【下键】进入【游戏】菜单
游戏子菜单就做了一个,贪吃蛇,还想做俄罗斯方块的,结果来不及了,先完成任务
按【OK】键进入
屏幕显示 游戏开始,WS2812 会显示两节红色小蛇,和绿色随机位置食物,
按【上】【下】【左】【右】控制小蛇,
吃到食物就涨一节
如果检测撞墙了,屏幕显示游戏结束,然后回到子菜单,按【OK】键可再次开始游戏
游戏运行中按【OK】键会立马结束游戏,返回子菜单
按【左键】返回上级菜单
按【下键】进入【亮度】菜单
有三个子菜单【固定亮度】【光传感】【ADC读取】
默认选中,【固定亮度】,此时当前子菜单字体颜色为绿色
上下移动选择条,按【OK】键,此时,亮度按当前选中方式调节,字体颜色也由白色变为绿色。
【光传感】菜单,通过IIC调用光传感器亮度值,进行调节
【ADC读取】,通过IIC调用ADC模块,检测可调电阻电压值调节
此处设定好的亮度获取方式,在【游戏】菜单和【LED】菜单都会生效,但是游戏运行中不会动态改变,只会在游戏开始前或者结束后调节
再次按【下键】会回到时间界面,按【上键】同理
子菜单也是,可以循环
代码实现在视频下方,我已经尽量把每个功能都注释好了,有问题大家可以回帖,我会挨个回复的
实现效果视频:
代码详解视频:
二期所有代码:
|