![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=1739283756-lvs2m0tuQasLSKhVtosQGonDxYu5sAjr-0-b4bf2a36e6682310b8049f3b96ac70b1)
单击“按钮”积木中的小三角,可打开管脚列表,通过列表可选择不同管脚。显示实验箱上共有上、下、左、右、中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=1739283756-nc5716kkiaXPJgKQhGC0VdKZO2YVzkyZ-0-4cb72c554f96f148b62fa98d176c3f03)
范例
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0036_0002.jpg?sign=1739283756-ZxXGPt57W6xelk2FmWfPxcGhjE1rvvab-0-8253aa7ffe5757be96f24b6f6d8b1f0f)
范例结果
当上按钮(2号按钮)被按下时,会发现9号LED灯亮度很低;松开该按钮, LED灯灭。这是因为:当按钮被按下时状态为1,亮度只有1。
选择
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0036_0003.jpg?sign=1739283756-hkOFZIwhrxlHuKWypQnWgEK11qhInFlu-0-4334404fcffaf7f42cca990dac1dcc28)
“选择”积木位于“控制”模块中,当“如果”后面的条件满足(为真)时,就运行“执行”里面的程序,实现判断的选择;当“如果”后面的条件不满足(为假)时,程序则跳过该积木,不执行。
我们还可以对“选择”积木进行编辑。单击“选择”积木左上角齿轮,会弹出编辑窗口,如下图左侧所示;将“否则”积木拖入弹出窗口的“如果”中,可得到“如果-否则”积木块,如下图右侧所示;再次单击蓝色齿轮可关闭窗口。
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0037_0001.jpg?sign=1739283756-iMsW1WbgfsKQe49dTgm3g0nAVIEYuPTi-0-71416b17d8cc41377a38d4eea5361520)
“如果-否则”积木有3个接口,当“如果”后面的条件不满足(为假)时,则执行“否则”里的程序。
“选择”积木的具体位置如下。
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0037_0002.jpg?sign=1739283756-ZgKjwidG1rLXJKvFPY6UnHzCAGekD4jX-0-6d149e58cd4f77dd176101233a15b21c)
范例
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0037_0003.jpg?sign=1739283756-4IVlmyELCs0REO4jIHPQHyoWIf6R0goE-0-92679b7fa756d61fd981a742b58b0da3)
范例结果
如果上按钮被按下,9号LED灯点亮;否则,灯不亮。
声明变量
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0037_0004.jpg?sign=1739283756-tQ0vP6b4LX9UxnnZMEytAsuaQgnCL76j-0-844563e5595f079e5618fc13d4bd6071)
“声明变量”积木需要定义变量的名字、类型和初始值。在命名变量时,尽可能做到“见名知义”。米思齐支持用中文命名变量,可以设置7种类型,如下图所示。
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0038_0001.jpg?sign=1739283756-H9HIakjGxWxOKadlkXeNrxPQQE8BODOi-0-a11e85dce8d416b8a55ff006241ab730)
在Mixly软件中,变量需要先声明并赋初始值(初始值为空时,默认为0),再赋值,最后调用。在程序运行过程中,变量里的值通常会发生改变,程序只能读取当前值。
变量和常量是表征数据的两种形式。常量用来表示确定的数值或内容,变量用来表示变化的数值或内容。变量就像一个放置物品的盒子,盒子里可以放食物,也可以放工具,放置的内容是随着需要而变化的。
“声明变量”积木的具体位置如下。
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0038_0002.jpg?sign=1739283756-zEeUU8w0jRGYte6OEI07DP7ry4M20vng-0-b11d50b96e387e69aef518a912b90a8b)
初始化
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0038_0003.jpg?sign=1739283756-tzRCXGK5RPWRWBayBdTT0RYZaKoWg3Cg-0-fc89346e37564107bf08199f82fd112c)
前面提到的积木都直接放到编程区里,是在loop函数中循环运行的。如果希望某个程序只运行1次,就需要将对应的积木放到初始化积木里。
范例
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0038_0004.jpg?sign=1739283756-f3UzOR8JfJKgRCmViaztnXBuL9QgRoFC-0-88574e4d7bdb3366450cab8c6554b8ac)
范例结果
设置“9号管脚LED灯亮度”变量值为0,只执行1次。
数值
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0039_0001.jpg?sign=1739283756-f18eEwcishrgwqyUHivHxcJGvuyWXDrp-0-d95e4407ce16d797fcd63b2d20aa0eda)
“数值”积木会提供一个数值,可作为其他积木的参数或条件。
范例
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0039_0002.jpg?sign=1739283756-fIkb7pjqnMZWzZKT09xMHzbJLE9Hsw0z-0-e4b184200dc3f7d2802de06ba51c3c2d)
范例结果
9号管脚LED灯最高亮度状态。
编程思路
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0039_0003.jpg?sign=1739283756-vtEIqz5YgGcqT1lkDl8tDnQRxjNABYaV-0-55176a8dbe811648ca52954ae6dbf769)
按动按钮增加亮度程序流程图
范例程序
![](https://epubservercos.yuewen.com/B0C18C/15937387804512006/epubprivate/OEBPS/Images/figure_0039_0004.jpg?sign=1739283756-0IKynEaQt8tk3YolIlybcj1lZt27C4gC-0-4a4d870c6cea96814e43e3d8bcdcf1b8)
按动按钮增加亮度程序
若上按钮被持续按下,9号管脚LED灯会持续变亮。
知识加油站
选择结构
选择结构是程序设计的三大结构之一,是用于判断给定的条件,根据判断的结果有选择地执行程序语句。