feat-hal-2 (#4)
Finished working initial version Co-authored-by: Andis Zīle <andis.jarganns@gmail.com> Reviewed-on: #4 Co-authored-by: Andis Zīle <andis.jargans@gmail.com> Co-committed-by: Andis Zīle <andis.jargans@gmail.com>
This commit was merged in pull request #4.
This commit is contained in:
50
firmware/src/hw/safe_ain.h
Normal file
50
firmware/src/hw/safe_ain.h
Normal file
@@ -0,0 +1,50 @@
|
||||
#ifndef SAFE_AIN_H_
|
||||
#define SAFE_AIN_H_
|
||||
|
||||
/**** Includes ****/
|
||||
#include <stdint.h>
|
||||
#include "../utils/vcounter.h"
|
||||
#include "../bsp/board.h"
|
||||
|
||||
namespace hw {
|
||||
|
||||
/**** Public definitions ****/
|
||||
|
||||
class SafeAin
|
||||
{
|
||||
public:
|
||||
SafeAin(void);
|
||||
~SafeAin(void);
|
||||
|
||||
void init(bsp::AnalogIn* ain_ch, util::VCounter* timer);
|
||||
|
||||
uint8_t warning;
|
||||
uint8_t fault;
|
||||
uint16_t last_read;
|
||||
|
||||
uint16_t under_treshold;
|
||||
uint16_t over_treshold;
|
||||
uint16_t hold_time;
|
||||
uint16_t cooldown_time;
|
||||
|
||||
uint8_t update_ain;
|
||||
uint8_t auto_reset;
|
||||
|
||||
void process(void);
|
||||
|
||||
#ifndef TESTING
|
||||
protected:
|
||||
#endif
|
||||
bsp::AnalogIn* ain_ch;
|
||||
util::VCounter* timer;
|
||||
uint16_t ts_state_chnage;
|
||||
};
|
||||
|
||||
/**** Public function declarations ****/
|
||||
|
||||
#ifdef TESTING
|
||||
#endif
|
||||
|
||||
} //namespace
|
||||
|
||||
#endif /* SAFE_AIN_H_ */
|
||||
Reference in New Issue
Block a user