39 lines
607 B
C++
39 lines
607 B
C++
#ifndef DIGITAL_OUT_H_
|
|
#define DIGITAL_OUT_H_
|
|
|
|
/**** Includes ****/
|
|
#include <stdint.h>
|
|
|
|
namespace board {
|
|
|
|
/**** Public definitions ****/
|
|
const int8_t DIO_LOW = 0;
|
|
const int8_t DIO_HIGH = 1;
|
|
const int8_t DIO_HIZ = -1;
|
|
|
|
class DigitalIO
|
|
{
|
|
protected:
|
|
uint8_t gpio_ch;
|
|
int8_t last_set;
|
|
|
|
public:
|
|
DigitalIO(uint8_t gpio_ch, uint8_t init_read);
|
|
~DigitalIO(void);
|
|
|
|
uint8_t last_read;
|
|
|
|
uint8_t read(void);
|
|
void write(int8_t level);
|
|
uint8_t is_io_match(void);
|
|
int8_t get_set_level(void);
|
|
};
|
|
|
|
/**** Public function declarations ****/
|
|
|
|
#ifdef TESTING
|
|
#endif
|
|
|
|
} //namespace
|
|
|
|
#endif /* DIGITAL_OUT_H_ */ |