Serial Wombat Arduino Library
Public Member Functions | Public Attributes | List of all members
SerialWombatSimulatedQuadEnc Class Reference

A class for testing SerialWombatQuadEnc inputs. More...

#include <SerialWombatSimulatedQuadEnc.h>

Public Member Functions

 SerialWombatSimulatedQuadEnc (SerialWombatChip &serialWombat0, SerialWombatChip &serialWombat1, uint8_t pin0, uint8_t pin1, bool openDrain, bool doubleTransition)
 
void bothPinsHigh ()
 
void togglePin0 ()
 
void togglePin1 ()
 
void pin0High ()
 
void pin1High ()
 
void pin0Low ()
 
void pin1Low ()
 
bool service ()
 
void initialize ()
 

Public Attributes

bool doubleTransition = false
 
SIMQUE_STATE_t state = SIMQE_IDLE
 
int32_t currentPosition = 0
 
int32_t targetPosition = 0
 
uint32_t delayAfterFirstPinFirstTransition_mS = 20
 
uint32_t delayAfterSecondPinFirstTransition_mS = 20
 
uint32_t delayAfterFirstPinSecondTransition_mS = 20
 
uint32_t delayAfterSecondPinSecondTransition_mS = 20
 
bool openDrain = true
 
uint32_t lastTransitionTime_millis = 0
 

Detailed Description

A class for testing SerialWombatQuadEnc inputs.

This class uses digital IO calls to simulate the output of a quadrature encoder. This is used to unit test the SerialWombatQuadEnc class. All processing occurs on the Arduino side. This class does not currently wrap a pin mode on the Serial Wombat chip. See the Unit Test example sketch for usage.

Constructor & Destructor Documentation

◆ SerialWombatSimulatedQuadEnc()

SerialWombatSimulatedQuadEnc::SerialWombatSimulatedQuadEnc ( SerialWombatChip serialWombat0,
SerialWombatChip serialWombat1,
uint8_t  pin0,
uint8_t  pin1,
bool  openDrain,
bool  doubleTransition 
)

Member Function Documentation

◆ bothPinsHigh()

void SerialWombatSimulatedQuadEnc::bothPinsHigh ( )

◆ initialize()

void SerialWombatSimulatedQuadEnc::initialize ( )

◆ pin0High()

void SerialWombatSimulatedQuadEnc::pin0High ( )

◆ pin0Low()

void SerialWombatSimulatedQuadEnc::pin0Low ( )

◆ pin1High()

void SerialWombatSimulatedQuadEnc::pin1High ( )

◆ pin1Low()

void SerialWombatSimulatedQuadEnc::pin1Low ( )

◆ service()

bool SerialWombatSimulatedQuadEnc::service ( )

◆ togglePin0()

void SerialWombatSimulatedQuadEnc::togglePin0 ( )

◆ togglePin1()

void SerialWombatSimulatedQuadEnc::togglePin1 ( )

Member Data Documentation

◆ currentPosition

int32_t SerialWombatSimulatedQuadEnc::currentPosition = 0

◆ delayAfterFirstPinFirstTransition_mS

uint32_t SerialWombatSimulatedQuadEnc::delayAfterFirstPinFirstTransition_mS = 20

◆ delayAfterFirstPinSecondTransition_mS

uint32_t SerialWombatSimulatedQuadEnc::delayAfterFirstPinSecondTransition_mS = 20

◆ delayAfterSecondPinFirstTransition_mS

uint32_t SerialWombatSimulatedQuadEnc::delayAfterSecondPinFirstTransition_mS = 20

◆ delayAfterSecondPinSecondTransition_mS

uint32_t SerialWombatSimulatedQuadEnc::delayAfterSecondPinSecondTransition_mS = 20

◆ doubleTransition

bool SerialWombatSimulatedQuadEnc::doubleTransition = false

◆ lastTransitionTime_millis

uint32_t SerialWombatSimulatedQuadEnc::lastTransitionTime_millis = 0

◆ openDrain

bool SerialWombatSimulatedQuadEnc::openDrain = true

◆ state

SIMQUE_STATE_t SerialWombatSimulatedQuadEnc::state = SIMQE_IDLE

◆ targetPosition

int32_t SerialWombatSimulatedQuadEnc::targetPosition = 0