Есть ли проблема с моим циклом while для SensorValue [bump] == 0? - PullRequest
0 голосов
/ 18 января 2019

Я пытаюсь создать цикл, в котором будет работать двигатель, и огни будут работать бесконечно, пока кнопка еще не нажата, когда некоторое время (SensorValue [bump] == 0) будет работать только один раз, даже если кнопка не нажата.

#pragma config(Sensor, dgtl2,  bump, sensorNone)
#pragma config(Sensor, dgtl10, green,  sensorLEDtoVCC)
#pragma config(Sensor, dgtl11, red,            sensorLEDtoVCC)
#pragma config(Sensor, dgtl12, amber,          sensorLEDtoVCC)
#pragma config(Motor,  port2,  fan,tmotorVex393_MC29, openLoop)


task main()
   {
    while(true){                                    
       untilBump(bump); //waits until button is pressed
       while(SensorValue(bump)==0){                                 

        startMotor(fan,127);        //startmotor

        turnLEDOn(green);       //turn green on
        delay(2000);
        turnLEDOff(green);  //turn green off

        turnLEDOn(amber);   //turn amber on
        delay(2000);
        turnLEDOff(amber);  //turn amber off

        turnLEDOn(red);     //turn red on
        delay(2000);
        turnLEDOff(red);    //turn red off

    }

    stopMotor(fan);
}

}
...