35 #ifndef __DIGITALINOUTHBRIDGE_H__ 36 #define __DIGITALINOUTHBRIDGE_H__ 43 #include "StatusManager.h" 103 #ifndef HIDE_FROM_DOXYGEN 218 void ToneTimed(uint16_t frequency, uint32_t duration,
219 bool blocking =
false,
bool forceDuration =
false);
234 void TonePeriodic(uint16_t frequency, uint32_t timeOn, uint32_t timeOff);
289 int16_t
State()
override;
315 bool State(int16_t newState)
override;
331 #ifndef HIDE_FROM_DOXYGEN 343 uint32_t m_toneStartTick;
344 uint32_t m_toneOnTicks;
345 uint32_t m_toneOffTicks;
346 ToneState m_toneState;
349 const PeripheralRoute *m_pwmAInfo;
350 const PeripheralRoute *m_pwmBInfo;
356 bool m_forceToneDuration;
371 void Refresh()
override;
378 inline void ToneFrequency(uint16_t frequency);
385 void FaultState(
bool isFaulted);
391 const PeripheralRoute *inputInfo,
392 const PeripheralRoute *outputInfo,
393 const PeripheralRoute *pwmAInfo,
394 const PeripheralRoute *pwmBInfo,
396 bool invertDigitalLogic);
401 #endif // __HBRIDGE_H__ Definition: DigitalInOutHBridge.h:100
Defines the Peripheral Route structure, used in HardwareMapping.
virtual ConnectorModes Mode() override
Get the connector's operational mode.
Definition: DigitalInOutHBridge.h:124
volatile const ToneState & ToneActiveState()
Accessor for the state of the tone currently active on the H-Bridge.
Definition: DigitalInOutHBridge.h:259
ClearCore Digital Output Connector class.
Definition: DigitalInOutHBridge.h:82
void ToneTimed(uint16_t frequency, uint32_t duration, bool blocking=false, bool forceDuration=false)
Output a tone from the H-Bridge for the specified duration.
Definition: Connector.h:247
void ToneContinuous(uint16_t frequency)
Output a continuous tone from the H-Bridge.
Namespace to encompass the ClearCore board API.
Definition: AdcManager.h:36
LED shift register access class.
Base class for all connector classes.
ClearCore Status Register Manager class.
Definition: StatusManager.h:37
ConnectorModes
All possible operational modes for a connector.
Definition: Connector.h:74
int16_t State() override
Get connector's last sampled value.
bool IsWritable() override
Get R/W status of the connector.
Definition: DigitalInOutHBridge.h:95
void ToneAmplitude(int16_t amplitude)
Set the amplitude of a PWM output for tone generation.
Connector::ConnectorTypes Type() override
Get connector type.
Definition: DigitalInOutHBridge.h:165
ToneState
Possible states of the tone generator.
Definition: DigitalInOutHBridge.h:78
ClearCore digital output connector class.
Definition: DigitalInOut.h:60
ClearCore Board Supervisory System Manager.
Definition: SysManager.h:58
void TonePeriodic(uint16_t frequency, uint32_t timeOn, uint32_t timeOff)
Output a periodic tone from the H-Bridge.
Definition: DigitalInOutHBridge.h:90
ClearCorePins
ClearCore PIN definitions.
Definition: SysConnectors.h:54
Definition: DigitalInOutHBridge.h:86
virtual ConnectorModes Mode()
Get the connector's operational mode.
Definition: Connector.h:309
ConnectorTypes
The different types of ClearCore connectors.
Definition: Connector.h:172
ClearCore H-Bridge digital output connector class.
Definition: DigitalInOutHBridge.h:66