[sim] Add sim wrappers for sensors that use SimDevice (#3517)

This commit is contained in:
PJ Reiniger
2021-08-21 02:19:59 -04:00
committed by GitHub
parent 2b3e2ebc11
commit 2edd510ab7
35 changed files with 771 additions and 3 deletions

View File

@@ -0,0 +1,38 @@
// 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/ADXL345Sim.h"
#include "frc/ADXL345_I2C.h"
#include "frc/ADXL345_SPI.h"
#include "frc/simulation/SimDeviceSim.h"
using namespace frc::sim;
ADXL345Sim::ADXL345Sim(const frc::ADXL345_I2C& accel) {
frc::sim::SimDeviceSim deviceSim{"Accel:ADXL345_I2C", accel.GetI2CPort(),
accel.GetI2CDeviceAddress()};
m_simX = deviceSim.GetDouble("x");
m_simY = deviceSim.GetDouble("y");
m_simZ = deviceSim.GetDouble("z");
}
ADXL345Sim::ADXL345Sim(const frc::ADXL345_SPI& accel) {
frc::sim::SimDeviceSim deviceSim{"Accel:ADXL345_SPI", accel.GetSpiPort()};
m_simX = deviceSim.GetDouble("x");
m_simY = deviceSim.GetDouble("y");
m_simZ = deviceSim.GetDouble("z");
}
void ADXL345Sim::SetX(double accel) {
m_simX.Set(accel);
}
void ADXL345Sim::SetY(double accel) {
m_simY.Set(accel);
}
void ADXL345Sim::SetZ(double accel) {
m_simZ.Set(accel);
}