Üres függvény írása paraméterek nélkül a VEXcode Pro V5-ben

The VEX Visual Studio Code Extension has replaced VEXcode Pro V5, which is now end-of-life.

VEXcode Blocks and VEXcode Text remain actively developed and supported for all VEX platforms.

Minta: Egy mintaprogram egy robot egyenes vonalú megtételéhez

A következő függvény lehetővé teszi a robot számára, hogytotalEnc ésjeladó mellett előre fusson. A V5 Clawbot konfigurációt használja.

Ez aspinToPositionfüggvény nem ad vissza értéket, amíg a mozgás be nem fejeződik. Ezt „szinkronizált” műveletnek nevezzük – amelyet az utolsó paramétertrue határoz meg.

Felhasználó által definiált függvény használata nélkül:

int main() {
   vexcodeInit();  

   LeftMotor.resetPosition ();
   LeftMotor.setVelocity(100.0, százalék);
   LeftMotor.spinToPosition(500.0, fok, true);


   Brain.Screen.printAt(5,30, "másodperc fordulatszám fok" );
   Brain.Screen.printAt(5,60, "%.2f: %8.2f %8.2f", 
     Brain.Timer.value(), 
     LeftMotor.position(fordulatszám), 
     LeftMotor.position(fok)); 
     wait(1000, ms);

   LeftMotor.resetPosition ();
   LeftMotor.setVelocity(-100.0, százalék);
   LeftMotor.spinToPosition(-1000.0, c, true); }

   Brain.Screen.printAt(5,100, "másodperc fordulatszám fok" );
   Brain.Screen.printAt(5,130, "%%.2f: %8.2f %8.2f", 
     Brain.Timer.value(),
     LeftMotor.position(fordulatszám), 
     LeftMotor.position(fok)); 
     wait(1000, ms);
}

A minta a következő eredményt adhatja:

nyers fordulatszám fok
2,06 5445 3,12 1089

Ne feledje, hogy a teszt egy nagyon kis tizedesjegyen belül változik.

Felhasználó által definiált függvénnyel:

A következő minta bemutatja, hogyan rögzíthető egy sor művelet egyetlen újrafelhasználható „függvény” hívásba.

void reportMotionValues() {

  Brain.Screen.printAt(5, 60, "%.2f: %8.2f %8.2f",
    Brain.Timer.value(), 
    LeftMotor.position(fordulat),
    LeftMotor.position(fok)); 
}


int main() {
   vexcodeInit();  

   LeftMotor.resetPosition();
   LeftMotor.setVelocity(50.0, százalék);
   LeftMotor.spinToPosition(500.0, fok, igaz);
   reportMotionValues();

   LeftMotor.resetPosition();
   LeftMotor.setVelocity(-50.0, százalék);
   LeftMotor.spinToPosition(-500.0, fok, igaz);
   reportMotionValues();

 } }

Az alábbi videó bemutatja, hogyan folytatódik a main() hívófüggvény logikai sorrendje:

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: