Mixly系统设计3:玩转流水灯
2016-09-10吴俊杰
中国信息技术教育 2016年11期
吴俊杰
本期我们开源项目的主题是常见的编程项目——流水灯。如果有两个LED,每个LED都可以独立控制,那么它们闪亮的形式可以分为:①一起亮。它们同步亮同步灭。②带动亮。一个LED亮之后带动后面的一个LED亮,此前的LED并不熄灭。③接力亮。一个LED亮过之后熄灭一段时间,接下来下一个LED开始亮,就像接力比赛一样。如果LED比较多,看上去像是一个LED在移动一样,这种形式更符合流水灯这个名字。④二选一亮。两个灯每次随机选择任意一个LED亮。⑤随机亮。每个LED都是随机闪亮,两个LED之间没有排他关系。本次选择的流水灯,项目涉及更多数目的LED,但原理是相同的。
● 制作:LED排排站,开始点名了
0号口和1号口空置,将数字引脚的2号口和3号口插一个LED灯,其中2号接负极,3号接正极。接下来,依次类推,4、6、8、10、12接LED的负极,5、7、9、11、13接LED的正极(如图1)。LED像是一排站好队列的士兵,通电以后,发现它们会像士兵报数一样依次亮起来,产生流水灯的效果。

在实验的过程中,我发现每位学生的LED闪烁的速度都不一样,有的很快,有的很慢,因此我鼓励他们大胆地去“触摸”电路板(如图2)。学生在触摸时发现手指摸这个区域后,灯有时闪得很快,甚至几乎看不到闪烁,有时又闪得很慢,这是因为有一个输入的信息在控制LED的闪烁速度。

这个信息就是端口A0的输入电压转换成了模拟输入A0的数值,在连接上,可以使用一个10千欧电位器,将其两端接power区的5V和GND(不分左右),中间接A0端口,此时旋转电位器(如图3),我们就能够看到电位器旋钮可以很好地控制LED的闪烁速度,旋转到一端时,不闪烁,所有LED一直亮;……
登录APP查看全文
