Program Listing for File hss-shield-bth500xx.hpp
↰ Return to documentation for file (src/corelib/hss-shield-bth500xx.hpp)
#ifndef HSS_SHIELD_BTH500XX_HPP_
#define HSS_SHIELD_BTH500XX_HPP_
#include "hss-shield.hpp"
#include "hss-variants.hpp"
#include "hss.hpp"
namespace hss
{
class Bth500xxShield: public HssShield
{
public:
Bth500xxShield(Hss* sw1, Hss* sw2, ADCPAL* vs, ADCPAL* vOut, ADCPAL* temp, BtxVariants_t* btxVariant1, BtxVariants_t* btxVariant2);
~Bth500xxShield();
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