[hal, wpilib] PWM Rewrite (#7845)

The HAL will only contain the output period and the raw microseconds. Higher level things such as SimDevice can handle everything else.
This commit is contained in:
Thad House
2025-03-20 19:23:22 -07:00
committed by GitHub
parent 2e21a41f87
commit e2cc9e0059
96 changed files with 1037 additions and 2453 deletions

View File

@@ -0,0 +1,26 @@
// 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.
#include "frc/simulation/PWMMotorControllerSim.h" // NOLINT(build/include_order)
#include <gtest/gtest.h>
#include <hal/HAL.h>
#include "frc/motorcontrol/Spark.h"
namespace frc::sim {
TEST(PWMMotorControllerSimTest, TestMotor) {
frc::Spark spark{0};
frc::sim::PWMMotorControllerSim sim{spark};
spark.Set(0);
EXPECT_EQ(0, sim.GetSpeed());
spark.Set(0.354);
EXPECT_EQ(0.354, sim.GetSpeed());
spark.Set(-0.785);
EXPECT_EQ(-0.785, sim.GetSpeed());
}
} // namespace frc::sim