Tuščios funkcijos rašymas be parametrų VEXcode Pro V5

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.

Pavyzdys: programos pavyzdys, skirtas robotui nuvažiuoti tiesiu atstumu

Ši funkcija leis robotui paleisti į priekįtotalEnckodavimo įrenginiui. Jis naudoja V5 Clawbot konfigūraciją.

Ši funkcijaspinToPositionnegrįš, kol judėjimas nebus baigtas. Tai vadinama „sinchronizuotu“ veiksmu – nustatoma pagal paskutinį parametrątrue.

Nenaudojant vartotojo nustatytos funkcijos:

int main() {
   vexcodeInit();  

   LeftMotor.resetPosition ();
   LeftMotor.setVelocity(100.0, proc.);
   LeftMotor.spinToPosition(500.0, deg, true);


   Brain.Screen.printAt(5,30, "sec rev deg" );
   Brain.Screen.printAt(5,60, "%.2f: %8.2f %8.2f", 
     Brain.Timer.value(), 
     LeftMotor.position(rev), 
     LeftMotor.position(deg)); 
     laukti (1000, msek);

   LeftMotor.resetPosition ();
   LeftMotor.setVelocity(-100,0, proc.);
   LeftMotor.spinToPosition(-1000.0, c, true);

   Brain.Screen.printAt(5 100, "sec rev deg" );
   Brain.Screen.printAt(5 130, "%%.2f: %8.2f %8.2f", 
     Brain.Timer.value(),
     LeftMotor.position (rev), 
     LeftMotor.position (deg)); 
     laukti (1000, msek);
}

Mėginys gali duoti tokį rezultatą:

sek. neapdorotas aps. laipsnis
2,06 5445 3,12 1089

Atminkite, kad jūsų testas skirsis labai maža dešimtųjų tikslumu.

Su vartotojo apibrėžta funkcija:

Toliau pateiktame pavyzdyje parodyta, kaip užfiksuoti operacijų rinkinį į vieną pakartotinai naudojamą „funkcijos“ skambutį.

void reportMotionValues() {

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


int main() {
   vexcodeInit();  

   LeftMotor.resetPosition();
   LeftMotor.setVelocity(50,0, proc.);
   LeftMotor.spinToPosition(500.0, deg, true);
   reportMotionValues();

   LeftMotor.resetPosition ();
   LeftMotor.setVelocity(-50,0, proc.);
   LeftMotor.spinToPosition(-500.0, laipsniai, tiesa);
   reportMotionValues();

}

Čia rodoma loginio srauto seka iš skambintojo funkcijos main():

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

Last Updated: