Create LogEncoder and map j1b1 to start logging and j1b2 to stop logging

This commit is contained in:
Austen Adler 2016-07-22 15:28:06 -04:00
parent ca5ee1198c
commit 4717100d78
3 changed files with 39 additions and 22 deletions

View File

@ -1,30 +1,29 @@
package org.usfirst.frc.team2059.robot;
import edu.wpi.first.wpilibj.Joystick;
import edu.wpi.first.wpilibj.buttons.Button;
import edu.wpi.first.wpilibj.command.Command;
import edu.wpi.first.wpilibj.buttons.JoystickButton;
import org.usfirst.frc.team2059.robot.commands.LogEncoder;
/**
* This class is the glue that binds the controls on the physical operator
* interface to the commands and command groups that allow control of the robot.
*/
public class OI {
//// CREATING BUTTONS
// One type of button is a joystick button which is any button on a joystick.
// You create one by telling it which joystick it's on and which button
// number it is.
// Joystick stick = new Joystick(port);
// Button button = new JoystickButton(stick, buttonNumber);
// There are a few additional built in buttons you can use. Additionally,
// by subclassing Button you can create custom triggers and bind those to
// commands the same as any other Button.
//// TRIGGERING COMMANDS WITH BUTTONS
// Once you have a button, it's trivial to bind it to a button in one of
// three ways:
// Start the command when the button is pressed and let it run the command
// until it is finished as determined by it's isFinished method.
// button.whenPressed(new ExampleCommand());
// Run the command while the button is being held down and interrupt it once
// the button is released.
// button.whileHeld(new ExampleCommand());
// Start the command when the button is released and let it run the command
// until it is finished as determined by it's isFinished method.
// button.whenReleased(new ExampleCommand());
JoystickButton[][] joystickButtons;
Joystick[] joysticks;
public OI() {
// Create joysticks
joysticks[0] = new Joystick(1);
joysticks[1] = new Joystick(2);
// Create buttons
for(int i=0;i<12;i++) {
joystickButtons[0][i] = new JoystickButton(joysticks[0], i + 1);
joystickButtons[1][i] = new JoystickButton(joysticks[1], i + 1);
}
// Start logging with button1, stop with button2
Command logEncoder = new LogEncoder();
joystickButtons[0][0].whenPressed(logEncoder);
joystickButtons[0][1].cancelWhenPressed(logEncoder);
}
}
// vim: sw=2:ts=2:sts=2

View File

@ -0,0 +1,18 @@
package org.usfirst.frc.team2059.robot.commands;
import edu.wpi.first.wpilibj.command.Command;
public class LogEncoder extends Command {
public LogEncoder() {
}
protected void initialize() {
}
protected boolean isFinished() {
return false;
}
protected void execute() {
}
protected void end() {
}
protected void interrupted() {
}
}
// vim: sw=2:ts=2:sts=2