From 46a71c5fba74a0863354efcd8c7bfef2f6d8fa77 Mon Sep 17 00:00:00 2001 From: samuel desharnais Date: Mon, 11 Nov 2024 18:43:23 -0500 Subject: [PATCH] led --- .../java/frc/robot/Commands/LEDactive.java | 48 +++++++++++++++++++ src/main/java/frc/robot/Subsystems/LED.java | 22 +++++++++ 2 files changed, 70 insertions(+) create mode 100644 src/main/java/frc/robot/Commands/LEDactive.java create mode 100644 src/main/java/frc/robot/Subsystems/LED.java diff --git a/src/main/java/frc/robot/Commands/LEDactive.java b/src/main/java/frc/robot/Commands/LEDactive.java new file mode 100644 index 0000000..e1768bd --- /dev/null +++ b/src/main/java/frc/robot/Commands/LEDactive.java @@ -0,0 +1,48 @@ +// Copyright (c) FIRST and other WPILib contributors. +// Open Source Software; you can modify and/or share it under the terms of +// the WPILib BSD license file in the root directory of this project. + +package frc.robot.Commands; + +import edu.wpi.first.wpilibj2.command.Command; +import frc.robot.Subsystems.Accumulateur; +import frc.robot.Subsystems.LED; + +public class LEDactive extends Command { + private Accumulateur accumulateur; + private LED led; + /** Creates a new LEDactive. */ + public LEDactive(Accumulateur accumulateur, LED led) { + this.accumulateur = accumulateur; + this.led = led; + addRequirements(accumulateur,led); + // Use addRequirements() here to declare subsystem dependencies. + } + + // Called when the command is initially scheduled. + @Override + public void initialize() {} + + // Called every time the scheduler runs while the command is scheduled. + @Override + public void execute() { + if(accumulateur.photocell()) + led.led(0, 255, 0); + else{ + led.led(25, 25, 100); + } + } + + + // Called once the command ends or is interrupted. + @Override + public void end(boolean interrupted) { + led.led(25, 25, 100); + } + + // Returns true when the command should end. + @Override + public boolean isFinished() { + return false; + } +} diff --git a/src/main/java/frc/robot/Subsystems/LED.java b/src/main/java/frc/robot/Subsystems/LED.java new file mode 100644 index 0000000..ea77b49 --- /dev/null +++ b/src/main/java/frc/robot/Subsystems/LED.java @@ -0,0 +1,22 @@ +// Copyright (c) FIRST and other WPILib contributors. +// Open Source Software; you can modify and/or share it under the terms of +// the WPILib BSD license file in the root directory of this project. + +package frc.robot.Subsystems; + +import com.ctre.phoenix.led.CANdle; + +import edu.wpi.first.wpilibj2.command.SubsystemBase; + +public class LED extends SubsystemBase { + /** Creates a new LED. */ + public LED() {} + CANdle led = new CANdle(0); + public void led(int R, int G, int B){ + led.setLEDs(R, G, B); + } + @Override + public void periodic() { + // This method will be called once per scheduler run + } +}