Skip to content

Commit 9da515a

Browse files
authored
Use limit switch snippets (#3027)
1 parent 4c6e793 commit 9da515a

File tree

1 file changed

+6
-57
lines changed

1 file changed

+6
-57
lines changed

source/docs/software/hardware-apis/sensors/limit-switch.rst

Lines changed: 6 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -8,62 +8,11 @@ Limit switches can have "normally open" or "normally closed" outputs. This will
88

99
.. tab-set-code::
1010

11-
```java
12-
DigitalInput toplimitSwitch = new DigitalInput(0);
13-
DigitalInput bottomlimitSwitch = new DigitalInput(1);
14-
PWMVictorSPX motor = new PWMVictorSPX(0);
15-
Joystick joystick = new Joystick(0);
16-
@Override
17-
public void teleopPeriodic() {
18-
setMotorSpeed(joystick.getRawAxis(2));
19-
}
20-
public void setMotorSpeed(double speed) {
21-
if (speed > 0) {
22-
if (toplimitSwitch.get()) {
23-
// We are going up and top limit is tripped so stop
24-
motor.set(0);
25-
} else {
26-
// We are going up but top limit is not tripped so go at commanded speed
27-
motor.set(speed);
28-
}
29-
} else {
30-
if (bottomlimitSwitch.get()) {
31-
// We are going down and bottom limit is tripped so stop
32-
motor.set(0);
33-
} else {
34-
// We are going down but bottom limit is not tripped so go at commanded speed
35-
motor.set(speed);
36-
}
37-
}
38-
}
39-
```
11+
.. remoteliteralinclude:: https://raw.githubusercontent.com/wpilibsuite/allwpilib/02de5f710e2579f2079a28944e90b48b34d91cac/wpilibjExamples/src/main/java/edu/wpi/first/wpilibj/snippets/limitswitch/Robot.java
12+
:language: java
13+
:lines: 17-50
4014

41-
```c++
42-
frc::DigitalInput toplimitSwitch {0};
43-
frc::DigitalInput bottomlimitSwitch {1};
44-
frc::PWMVictorSPX motor {0};
45-
frc::Joystick joystick {0};
46-
void TeleopPeriodic() {
47-
SetMotorSpeed(joystick.GetRawAxis(2));
48-
}
49-
void SetMotorSpeed(double speed) {
50-
if (speed > 0) {
51-
if (toplimitSwitch.Get()) {
52-
// We are going up and top limit is tripped so stop
53-
motor.Set(0);
54-
} else {
55-
// We are going up but top limit is not tripped so go at commanded speed
56-
motor.Set(speed);
57-
}
58-
} else {
59-
if (bottomlimitSwitch.Get()) {
60-
// We are going down and bottom limit is tripped so stop
61-
motor.Set(0);
62-
} else {
63-
// We are going down but bottom limit is not tripped so go at commanded speed
64-
motor.Set(speed);
65-
}
66-
}
67-
}
68-
```
15+
.. remoteliteralinclude:: https://raw.githubusercontent.com/wpilibsuite/allwpilib/02de5f710e2579f2079a28944e90b48b34d91cac/wpilibcExamples/src/main/cpp/snippets/LimitSwitch/cpp/Robot.cpp
16+
:language: c++
17+
:lines: 40-43, 17-37
6918

0 commit comments

Comments
 (0)