3020浏览
查看: 3020|回复: 0

[教程] 第8课 色彩奔跑

[复制链接]
8.色彩奔跑

星火课程团队
欢迎来到树莓派课堂。本节课我们利用颜色相遇继而混合出新颜色的原理,让灯带奔跑出炫丽的色彩。
知识点:
1.灯带的分段控制
2.光的三原色
3.随机数
所需硬件:
树莓派主板  古德微扩展板  灯带  按钮
硬件连接:
灯带连接到扩展板18号接口,按钮插到25号接口。
第8课   色彩奔跑图1

1.灯带的分段控制
灯带上的每一盏灯都是独立的,我们可以通过程序单独控制每盏灯的亮灭和颜色。我们先来实现一端红色,另一端蓝色同时向中间奔跑。当两种颜色碰到一起时,灯带熄灭。我们知道灯带上一共有60盏灯,那么也就是说,每种颜色各自点亮30盏灯。
从前端点亮30盏灯,且显示红色。回想一下上节《闪亮的圣诞树》这课,我们点亮灯带的方法,不同的是这里我们只需要点亮30盏灯即可。看下效果。
第8课   色彩奔跑图2

接下来我们让余下的30盏灯从末端向中间被逐一点亮且显示蓝色。因为是从后向前点亮。灯带上点亮的位置需要用最大数减去变量i,。

第8课   色彩奔跑图3

我们再来看下效果。加上按钮,用按钮来控制灯会更方便。
第8课   色彩奔跑图4


当我们再次按下按钮时灯带并没有变化,这是因为灯带现在已经处于按钮被按下的状态了,想让每次按钮被按下都显示一遍程序那么就需要让灯带熄灭才可。让灯带熄灭,将三色的各自的数值设为0即可。
第8课   色彩奔跑图5


我们一起看,现在按下按钮,灯带自首尾两端一起向中间点亮,当两种颜色相遇时,灯带熄灭。
第8课   色彩奔跑图6

刚刚我们让灯带同时显示了两种颜色,那么怎样才能让灯带绚丽多彩呢?
2.光的三原色
我们知道RGB是由红、绿、蓝按照不同的亮度搭配而成,即光的三原色。两两混合可以得到更亮的中间色:黄,青,品红。三种等量组合可以得到白色。三种颜色,每种颜色都有256种,理论上来说,光的三原色可以配置出256*256*256=16777216种颜色。
3.随机数
那么如何搭配灯带上每一盏灯的红绿蓝亮度呢?这里我们需要用到随机数这块积木。
第8课   色彩奔跑图7

随机数积木有两个参数,第一参数是起始值,第二个是终止值。该积木的的作用是在两个参数间随机获取一个整数。
在点亮灯带的积木里,第二参数是RGB三色,我们可以给每种颜色赋值为随机数。
第8课   色彩奔跑图8

从前向中间运动的的RGB灯,我们给他们分别命名为“前端红色、前端绿色、前端蓝色”
从后向中间运动的RGB灯,我们三色分别命名为“后端红色,后端绿色、后端蓝色”




让我们体验下效果吧。
第8课   色彩奔跑图9

我们看一下效果。
知识梳理
最后我们梳理一下本节课的知识点:当按钮被按下,两端的灯带中的红色、绿色、蓝色,三色分别以0~255中某个值,各自生成一种新的颜色并向中间运动。实现了灯带从两端向中间依次点亮,两种新的颜色相遇后,灯带熄灭。
灯带在你手中还可以变幻出哪些效果?期待你的精彩分享。
这节课到这里,下节再见。

201911122749..png
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail