Add README Content and last code set for awhile
This commit is contained in:
parent
6f907380ca
commit
10f3862bb6
71
19 - AddressableLED/robot.py
Normal file
71
19 - AddressableLED/robot.py
Normal file
@ -0,0 +1,71 @@
|
||||
import wpilib
|
||||
import wpilib.drive
|
||||
import ctre
|
||||
|
||||
class MyRobot(wpilib.TimedRobot):
|
||||
def robotInit(self):
|
||||
self.leftFront = ctre.WPI_VictorSPX(0)
|
||||
self.leftRear = ctre.WPI_VictorSPX(1)
|
||||
self.rightFront = ctre.WPI_VictorSPX(2)
|
||||
self.rightRear = ctre.WPI_VictorSPX(3)
|
||||
|
||||
self.left = wpilib.MotorControllerGroup(self.leftFront, self.leftRear)
|
||||
self.right = wpilib.MotorControllerGroup(self.rightFront, self.rightRear)
|
||||
self.right.setInverted(True)
|
||||
|
||||
self.drivetrain = wpilib.drive.DifferentialDrive(self.left, self.right)
|
||||
|
||||
self.primary = wpilib.XboxController(0)
|
||||
|
||||
self.leds = wpilib.AddressableLED(0)
|
||||
self.leds.setLength(20)
|
||||
|
||||
self.buffer = wpilib.AddressableLED.LEDData(20)
|
||||
|
||||
self.leds.setData(self.buffer)
|
||||
self.leds.start()
|
||||
|
||||
self.rainbowTimer = wpilib.Timer()
|
||||
self.rainbowTimer.start()
|
||||
|
||||
self.rainbowColorSelection = 0
|
||||
self.hsvColorSelection = 0
|
||||
|
||||
self.RAINBOW = [
|
||||
wpilib.Color.kRed,
|
||||
wpilib.Color.kOrange,
|
||||
wpilib.Color.kYellow,
|
||||
wpilib.Color.kGreen,
|
||||
wpilib.Color.kBlue,
|
||||
wpilib.Color.kPurple]
|
||||
|
||||
def robotPeriodic(self):
|
||||
if self.rainbowTimer.get() > 1:
|
||||
for i in range(10):
|
||||
self.buffer.setLED(i, self.RAINBOW[self.rainbowColorSelection % len(self.rainbowColorSelection)])
|
||||
|
||||
self.rainbowColorSelection += 1
|
||||
|
||||
self.rainbowTimer.reset()
|
||||
|
||||
for i in range(10, 20):
|
||||
self.buffer.setHSV(i, self.hsvColorSelection % 180, 255, 255)
|
||||
|
||||
self.hsvColorSelection += 1
|
||||
|
||||
self.leds.setData(self.buffer)
|
||||
|
||||
def autonomousInit(self):
|
||||
pass
|
||||
|
||||
def autonomousPeriodic(self):
|
||||
pass
|
||||
|
||||
def teleopInit(self):
|
||||
pass
|
||||
|
||||
def teleopPeriodic(self):
|
||||
self.drivetrain.arcadeDrive(self.primary.getLeftY(), self.primary.getLeftX())
|
||||
|
||||
if __name__ == "__main__":
|
||||
wpilib.run(MyRobot)
|
Loading…
Reference in New Issue
Block a user