![Arduino互动设计](https://wfqqreader-1252317822.image.myqcloud.com/cover/204/27741204/b_27741204.jpg)
小试牛刀:2号按钮与9号管脚LED灯的互动
生活中顶灯、台灯、电风扇等大多是由按钮控制的。按下“按钮”控制电路的“接通”,松开“按钮”控制电路的“断开”。下面使用2号按钮和9号管脚LED灯,通过编程实现:每按下2号按钮一次,9号管脚LED灯的亮度就增加一次。
积木新知
按钮
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0035_0003.jpg?sign=1739507036-oyEf7s2ObEOvmAZEMp8pQv2qgB6XgHld-0-117391eea5ef8f37b6d06a1408786d16)
单击“按钮”积木中的小三角,可打开管脚列表,通过列表可选择不同管脚。显示实验箱上共有上、下、左、右、中5个按钮,分别对应2、3、4、5、6号5个数字接口。当按钮被按下时,其状态为1;松开时,其状态为0。
在打开的Mixly软件界面左侧单击“Labplus”,再单击“创客中级实验箱”,找到要设置的“按钮”积木,具体位置如下。
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0036_0001.jpg?sign=1739507036-lD2nWzBAkotqYhJZTIqPFu3NYKY2RQcr-0-6b7db8e05d8d87ec5fd6925f49b21b37)
范例
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0036_0002.jpg?sign=1739507036-KmefDmXHRnjT7y3L4LAIJnC8eopJC3oI-0-b706578b54a071ff4d7936e5be8d3c98)
范例结果
当上按钮(2号按钮)被按下时,会发现9号LED灯亮度很低;松开该按钮, LED灯灭。这是因为:当按钮被按下时状态为1,亮度只有1。
选择
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0036_0003.jpg?sign=1739507036-VMi0qG9lNS737F6B9kIp6rrX5rgfYxGh-0-0bf8e2adfb2044d72607548d7b8871aa)
“选择”积木位于“控制”模块中,当“如果”后面的条件满足(为真)时,就运行“执行”里面的程序,实现判断的选择;当“如果”后面的条件不满足(为假)时,程序则跳过该积木,不执行。
我们还可以对“选择”积木进行编辑。单击“选择”积木左上角齿轮,会弹出编辑窗口,如下图左侧所示;将“否则”积木拖入弹出窗口的“如果”中,可得到“如果-否则”积木块,如下图右侧所示;再次单击蓝色齿轮可关闭窗口。
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0037_0001.jpg?sign=1739507036-VWl373rGMag7A5TyP716EyBX1vQDu4dQ-0-3042cdda95afb944bab295497fc1586c)
“如果-否则”积木有3个接口,当“如果”后面的条件不满足(为假)时,则执行“否则”里的程序。
“选择”积木的具体位置如下。
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0037_0002.jpg?sign=1739507036-6lZjTUvrZlOIQjo9JvCua0mlClHDrxdl-0-194cf1e689ac8bc622663742bb074ad3)
范例
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0037_0003.jpg?sign=1739507036-RTOMl2TJMiuOEoYGxsB0nCqZFk518nx5-0-e91cde12fb68577ad14460bb1609b916)
范例结果
如果上按钮被按下,9号LED灯点亮;否则,灯不亮。
声明变量
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0037_0004.jpg?sign=1739507036-DesogWWOUWMG3M0nNiaCvnLyIsfkDJpA-0-14e3e558e6434ed3c63d48c8d25fbd3d)
“声明变量”积木需要定义变量的名字、类型和初始值。在命名变量时,尽可能做到“见名知义”。米思齐支持用中文命名变量,可以设置7种类型,如下图所示。
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0038_0001.jpg?sign=1739507036-26Qg2Bg1j58Rn9IjmRYjNSLfJf3J4y1D-0-eb52edd107132290451b09c3709ca0b8)
在Mixly软件中,变量需要先声明并赋初始值(初始值为空时,默认为0),再赋值,最后调用。在程序运行过程中,变量里的值通常会发生改变,程序只能读取当前值。
变量和常量是表征数据的两种形式。常量用来表示确定的数值或内容,变量用来表示变化的数值或内容。变量就像一个放置物品的盒子,盒子里可以放食物,也可以放工具,放置的内容是随着需要而变化的。
“声明变量”积木的具体位置如下。
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0038_0002.jpg?sign=1739507036-WsoROR7XK5CrYf7o7xyTj3iXvdYT053C-0-e5edd865568c0899378e61a9dc5dae52)
初始化
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0038_0003.jpg?sign=1739507036-fUnVH58RRpfmqmTWjXz4FOtmKTnaBVSK-0-b3d9340ce5f93e28dd926b248153f4ce)
前面提到的积木都直接放到编程区里,是在loop函数中循环运行的。如果希望某个程序只运行1次,就需要将对应的积木放到初始化积木里。
范例
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0038_0004.jpg?sign=1739507036-IkzQTy06qUG6sV70njGu7hzhNrWMCjbG-0-8f7ef51c1ac39f41ad75f2cf0752a70e)
范例结果
设置“9号管脚LED灯亮度”变量值为0,只执行1次。
数值
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0039_0001.jpg?sign=1739507036-rtEKBQc5EfhpLLWaTNZJ6RYxQnAca0IM-0-a5339eed4c2f40c0736bc3d6a90d40f3)
“数值”积木会提供一个数值,可作为其他积木的参数或条件。
范例
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0039_0002.jpg?sign=1739507036-6D7ktESgU2DLzoW0cTrmAFslYuu5Lq4l-0-dde4c2d7c14ce64e9c5695e3ae54b9d7)
范例结果
9号管脚LED灯最高亮度状态。
编程思路
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0039_0003.jpg?sign=1739507036-DgdHEZ3fnYQqMaPuFs8PsGhDxUrJkx4C-0-fe44e14175e860f9e960b7be64e0e1d7)
按动按钮增加亮度程序流程图
范例程序
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0039_0004.jpg?sign=1739507036-TtNtEfRiDjRGAgQQDHrAAujkG86jMcrD-0-5a58123829a0c2d62d13d63b92253ab3)
按动按钮增加亮度程序
若上按钮被持续按下,9号管脚LED灯会持续变亮。
知识加油站
选择结构
选择结构是程序设计的三大结构之一,是用于判断给定的条件,根据判断的结果有选择地执行程序语句。