保险杠#
介绍#
VEX IQ(第二代)的 Bumper Switch API 提供了控制 Bumper Switch 输入的方法。这使得 Brain 能够检测到 Bumper Switch 的按下和释放。
以下是所有可用方法的列表:
方法——控制保险杠开关的行为和输入。
pressing – 返回保险杠开关是否被按下。
pressed – 按下保险杠开关时调用一个函数。
released – 当保险杠开关被释放时调用一个函数。
已安装 – 保险杠开关是否连接到 IQ(第二代)大脑。
构造函数——手动初始化保险杠开关。
bumper – 创建保险杠开关。
方法#
紧迫#
pressing
返回一个整数,指示保险杠开关当前是否被按下。
1
-保险杠开关被按下。0
-保险杠开关未被按下。
用法:
Bumper1.pressing()
参数 |
描述 |
---|---|
该方法没有参数。 |
// Back up and turn if bumper switch pressed
while (true){
Drivetrain.drive(forward);
if (Bumper1.pressing()){
Drivetrain.driveFor(reverse, 100, mm);
Drivetrain.turnFor(right, 90, degrees);
}
}
按下#
当保险杠开关被按下时,pressed(callback)
方法调用一个函数。
用法
保险杠1.按下(回调)
范围 |
描述 |
---|---|
|
先前定义的当按下保险杠开关时执行的功能。 |
// Drive forward when bumper switch is pressed
void bumperPressed(){
Drivetrain.driveFor(forward,100,mm);
}
int main() {
vexcodeInit();
Bumper1.pressed(bumperPressed);
}
发布#
当保险杠开关被释放时,released(callback)
方法调用一个函数。
用法
Bumper1.released(回调)
范围 |
描述 |
---|---|
|
先前定义的当按下保险杠开关时执行的功能。 |
// Drive backward when bumper switch is released
void bumperReleased() {
Drivetrain.driveFor(reverse,100,mm);
}
int main() {
vexcodeInit();
Bumper1.released(bumperReleased);
}
已安装#
installed
返回一个整数,指示 Bumper Switch 当前是否连接到 IQ(第二代)Brain。
1
– 保险杠开关连接到 IQ(第二代)大脑。0
– 保险杠开关未连接到 IQ(第二代)大脑。
用法:
installed()
参数 |
描述 |
---|---|
该方法没有参数。 |
// Display a message if the Bumper Switch is detected
if (Bumper1.installed()){
Brain.Screen.print("Installed!");
}
构造函数#
构造函数用于手动创建“保险杠”对象,这对于在 VEXcode 之外配置保险杠开关是必需的。
对于下面的示例,配置的 Bumper Switch 将被命名为“Bumper1”,并且在整个 API 文档的所有后续示例中引用“bumper”类方法时将使用它。
保险杠开关#
bumper
创建一个 Bumper Switch。
用法
保险杠(端口)
范围 |
描述 |
---|---|
|
颜色传感器连接到哪个智能端口,以“PORT”表示,后跟端口号,范围从 1 到 12。 |
// Construct a Bumper Sensor "Bumper1" with the
// bumper class
bumper Bumper1 = bumper();
// Back up and turn if bumper switch pressed
int main() {
vexcodeInit();
while (true){
Drivetrain.drive(forward);
if (Bumper1.pressing()){
Drivetrain.driveFor(reverse, 100, mm);
Drivetrain.turnFor(right, 90, degrees);
}
}
}