Program Listing for File hss-shield-bts500xx.hpp
↰ Return to documentation for file (src/corelib/hss-shield-bts500xx.hpp)
#ifndef HSS_SHIELD_BTS500xx_HPP_
#define HSS_SHIELD_BTS500xx_HPP_
#include "hss-shield.hpp"
#include "hss-variants.hpp"
#include "hss.hpp"
namespace hss
{
class Bts500xxShield: public HssShield
{
public:
Bts500xxShield(Hss *sw1, Hss *sw2, ADCPAL *vs, ADCPAL *vOut, ADCPAL *temp, BtxVariants_t *btxVariant1, BtxVariants_t *btxVariant2);
~Bts500xxShield();
Error_t init();
Error_t deinit();
Error_t switchHxOn(uint8_t x);
Error_t switchHxOff(uint8_t x);
DiagStatus_t readDiagx(uint8_t x);
float readIsx(uint8_t x);
Error_t switchesHxOn(bool h1 = false, bool h2 = false);
Error_t switchesHxOff(bool h1 = false, bool h2 = false);
float readVs();
float readVOut();
float readTemperature();
protected:
static constexpr uint8_t hssNum = 2;
Hss * switches[hssNum];
ADCPAL * vs;
ADCPAL * vOut;
ADCPAL * temp;
BtxVariants_t * btxVariant1;
BtxVariants_t * btxVariant2;
ExponentialFilter * filterVs;
ExponentialFilter * filterVOut;
ExponentialFilter * filterTemp;
};
}
#endif