我有以下功能,其中包含for循环。该代码在Arduino上运行,并且Serial.print函数显示已使用正确的输入值正确输入了该函数。但是没有输入for循环。有谁知道为什么?

void openvalveCold(int steps){
    Serial.println(steps);

    // Steps is confimed to be 200.
    digitalWrite(sleep1,HIGH);

    for (antalsteg = 0; antalsteg == steps; antalsteg++)
    {
        Serial.println("2");

        //digitalWrite(dir1,HIGH);
        digitalWrite(stepp1,HIGH);

        delay(25);
        digitalWrite(stepp1,LOW);
        delay(25);
        Serial.println(antalsteg);

        nr_of_steps_cold++;
    }
}

void loop{
    // calling on function
    openvalveCold(200);
}

最佳答案

for循环通常是这样构造的:

for(init counter; condition; increase counter)


您已经做出了(false)假设,直到条件成立为止,它将一直循环。错了循环时为真。改成:

for (antalsteg = 0; antalsteg < steps; antalsteg++)

10-04 15:09