零基础入门学用Arduino教程 – 17 逻辑控制 (3) – 布尔运算
学习本课所需的电子元件:
- 面包板
- Arduino开发板
- 杜邦线 x 4
- 按键开关 x 2
本课程主要内容:
- 布尔型变量的运算操作
- 布尔运算规则
本课示例代码:
逻辑非布尔运算
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
/* * 逻辑非布尔运算 * * 本示例程序演示逻辑非布尔运算。通过本程序,Arduino将对引脚2的电平状态 * 进行逻辑非布尔运算,并根据运算结果点亮或熄灭引脚13上连接的LED。 * * 电路: * 引脚2连接轻触开关,开关另一端接地 * 引脚13上安装有开发板内置LED * * * This example code is in the public domain * 太极创客 * 2017-01-18 * www.taichi-maker.com */ boolean pushButton; // 创建布尔型变量 void setup() { pinMode(2, INPUT_PULLUP); //将引脚2设置为输入上拉模式 pinMode(13, OUTPUT); //将引脚13设置为输出模式 } void loop() { pushButton = digitalRead(2); //读取引脚2电平状态并将其赋值给布尔变量 if (!pushButton){ //对布尔变量进行逻辑非运算,并根据运算结构点亮或者熄灭LED digitalWrite(13, HIGH); //布尔变量数值为假(false)时点亮LED } else { digitalWrite(13, LOW); //布尔变量数值为真(true)时熄灭LED } } |
逻辑与布尔运算
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
/* * 逻辑与布尔运算 * * 本示例程序演示逻辑与布尔运算。通过本程序,Arduino将对引脚2和引脚8的电平状态 * 进行逻辑与布尔运算,并根据运算结果点亮或熄灭引脚13上连接的LED。 * * 电路: * 引脚2连接按键开关1,开关1另一端接地 * 引脚8连接按键开关2,开关2另一端接地 * 引脚13上安装有开发板内置LED * * * This example code is in the public domain * 太极创客 * 2017-01-18 * www.taichi-maker.com */ boolean pushButton1; // 创建布尔型变量用来存储按键开关1的电平状态 boolean pushButton2; // 创建布尔型变量用来存储按键开关2的电平状态 void setup() { pinMode(2, INPUT_PULLUP); //将引脚2设置为输入上拉模式 pinMode(8, INPUT_PULLUP); //将引脚8设置为输入上拉模式 pinMode(13, OUTPUT); //将引脚13设置为输出模式 } void loop() { pushButton1 = digitalRead(2); //读取引脚2电平状态并将其赋值给布尔变量 pushButton2 = digitalRead(8); //读取引脚8电平状态并将其赋值给布尔变量 if (!pushButton1 && !pushButton2){ //根据逻辑与运算结果点亮或者熄灭LED digitalWrite(13, HIGH); //两个布尔变量数值都为假(false)时点亮LED } else { digitalWrite(13, LOW); //否则熄灭LED } } /* 逻辑与运算说明 !pushButton1 = 1, !pushButton2 = 1 ---> !pushButton1 && !pushButton2 = 1 !pushButton1 = 0, !pushButton2 = 1 ---> !pushButton1 && !pushButton2 = 0 !pushButton1 = 1, !pushButton2 = 0 ---> !pushButton1 && !pushButton2 = 0 !pushButton1 = 0, !pushButton2 = 0 ---> !pushButton1 && !pushButton2 = 0 */ |
逻辑或布尔运算
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
/* * 逻辑或布尔运算 * * 本示例程序演示逻辑或布尔运算。通过本程序,Arduino将对引脚2和引脚8的电平状态 * 进行逻辑或布尔运算,并根据运算结果点亮或熄灭引脚13上连接的LED。 * * 电路: * 引脚2连接按键开关1,开关1另一端接地 * 引脚8连接按键开关2,开关2另一端接地 * 引脚13上安装有开发板内置LED * * * This example code is in the public domain * 太极创客 * 2017-01-18 * www.taichi-maker.com */ boolean pushButton1; // 创建布尔型变量用来存储按键开关1的电平状态 boolean pushButton2; // 创建布尔型变量用来存储按键开关2的电平状态 void setup() { pinMode(2, INPUT_PULLUP); //将引脚2设置为输入上拉模式 pinMode(8, INPUT_PULLUP); //将引脚8设置为输入上拉模式 pinMode(13, OUTPUT); //将引脚13设置为输出模式 } void loop() { pushButton1 = digitalRead(2); //读取引脚2电平状态并将其赋值给布尔变量 pushButton2 = digitalRead(8); //读取引脚8电平状态并将其赋值给布尔变量 if (!pushButton1 || !pushButton2){ //根据逻辑或运算结果点亮或者熄灭LED digitalWrite(13, HIGH); //两个布尔变量数值任何一个为假(false)时点亮LED } else { digitalWrite(13, LOW); //否则熄灭LED } } /* * 逻辑或运算说明 !pushButton1 = 1, !pushButton2 = 1 ---> !pushButton1 || !pushButton2 = 1 !pushButton1 = 0, !pushButton2 = 1 ---> !pushButton1 || !pushButton2 = 1 !pushButton1 = 1, !pushButton2 = 0 ---> !pushButton1 || !pushButton2 = 1 !pushButton1 = 0, !pushButton2 = 0 ---> !pushButton1 || !pushButton2 = 0 */ |