Arduino 第五课 循环的使用
2023-02-25 06:45:47 0 举报
中小学物联网入门课程
作者其他创作
大纲/内容
课程回顾
比尔运算、判断分支在程序中的作用
课程目标
1. 理解循环的概念和用途;
2. 掌握 Arduino 中常用的循环结构;
3. 能够编写利用循环实现的程序。
教学重点
1. 循环的概念和用途;
2. for 循环和 while 循环的使用;
3. 利用循环实现复杂的程序。
教学难点
如何使用循环实现复杂的程序?
如何结合现实生活中的循环,在编程中使用?
教学过程
1. 循环的概念和用途
2. for 循环和 while 循环的使用:for 循环一般用于在已知循环次数的情况下执行一段代码,而 while 循环则适用于需要一直执行某段代码直到满足特定条件的情况。
for 循环的使用:初始化表达式只会在循环开始之前执行一次,条件表达式用于判断是否继续执行循环,更新表达式则在每次循环结束后执行。
for (int i = 0; i < 10; i++) {
Serial.println(i);
}
Serial.println(i);
}
while 循环的使用:while 循环在每次循环开始前先判断条件表达式的值是否为真,只有当条件表达式的值为真时才会执行循环体。
while (条件表达式) {
// 循环体
}
// 循环体
}
3. 利用循环实现复杂的程序:循环结构的威力在于它可以帮助我们简化复杂的程序。
案例:计算从1到n的整数之和。
案例2:统计开关按键按下的次数
int buttonPin = 2; // 按钮所接的引脚
int ledPin = 13; // LED 灯所接的引脚
int buttonState = 0; // 按钮状态,初始值为未按下
int lastButtonState = 0; // 上一次按钮状态,初始值为未按下
int ledState = LOW; // LED 灯状态,初始值为关
int numPresses = 0; // 按钮按下次数
void setup() {
pinMode(buttonPin, INPUT);
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
}
void loop() {
buttonState = digitalRead(buttonPin);
if (buttonState != lastButtonState) {
if (buttonState == HIGH) {
numPresses++;
Serial.print("Button pressed ");
Serial.print(numPresses);
Serial.println(" times");
if (ledState == LOW) {
ledState = HIGH;
} else {
ledState = LOW;
}
digitalWrite(ledPin, ledState);
}
lastButtonState = buttonState;
}
}
int ledPin = 13; // LED 灯所接的引脚
int buttonState = 0; // 按钮状态,初始值为未按下
int lastButtonState = 0; // 上一次按钮状态,初始值为未按下
int ledState = LOW; // LED 灯状态,初始值为关
int numPresses = 0; // 按钮按下次数
void setup() {
pinMode(buttonPin, INPUT);
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
}
void loop() {
buttonState = digitalRead(buttonPin);
if (buttonState != lastButtonState) {
if (buttonState == HIGH) {
numPresses++;
Serial.print("Button pressed ");
Serial.print(numPresses);
Serial.println(" times");
if (ledState == LOW) {
ledState = HIGH;
} else {
ledState = LOW;
}
digitalWrite(ledPin, ledState);
}
lastButtonState = buttonState;
}
}
0 条评论
下一页