6 #ifndef __PINPOSITION_H__
7 #define __PINPOSITION_H__
14 template <u
int16_t WAITMILLIS_AFTER_ENABLE=0>
21 void init (uint8_t pin, uint8_t enpin) {
24 if (en != 0) pinMode(en, OUTPUT);
27 void measure (__attribute__((unused))
bool async=
false) {
28 _position = (
AskSinBase::readPin(sens, en, WAITMILLIS_AFTER_ENABLE) == 0) ? State::PosA : State::PosB;
35 uint8_t posmap[4] = {State::PosC,State::PosC,State::PosB,State::PosA};
40 void init (uint8_t pin1,uint8_t pin2,
const uint8_t* pmap) {
41 memcpy(posmap,pmap,4);
45 void init (uint8_t pin1,uint8_t pin2) {
50 void measure (__attribute__((unused))
bool async=
false) {
52 _position = posmap[pinstate & 0x03];