|
| PWM (uint32_t channel) |
|
| PWM (uint8_t moduleNumber, uint32_t channel) |
|
virtual | ~PWM () |
|
virtual void | SetRaw (uint8_t value) |
|
virtual uint8_t | GetRaw () |
|
void | SetPeriodMultiplier (PeriodMultiplier mult) |
|
void | EnableDeadbandElimination (bool eliminateDeadband) |
|
void | SetBounds (int32_t max, int32_t deadbandMax, int32_t center, int32_t deadbandMin, int32_t min) |
|
void | SetBounds (double max, double deadbandMax, double center, double deadbandMin, double min) |
|
uint32_t | GetChannel () |
|
uint32_t | GetModuleNumber () |
|
| SensorBase () |
|
virtual | ~SensorBase () |
|
virtual Error & | GetError () |
| Retrieve the current error. Get the current error information associated with this sensor.
|
|
virtual const Error & | GetError () const |
|
virtual void | SetErrnoError (const char *contextMessage, const char *filename, const char *function, uint32_t lineNumber) const |
| Set error information associated with a C library call that set an error to the "errno" global variable. More...
|
|
virtual void | SetImaqError (int success, const char *contextMessage, const char *filename, const char *function, uint32_t lineNumber) const |
| Set the current error information associated from the nivision Imaq API. More...
|
|
virtual void | SetError (Error::Code code, const char *contextMessage, const char *filename, const char *function, uint32_t lineNumber) const |
| Set the current error information associated with this sensor. More...
|
|
virtual void | SetWPIError (const char *errorMessage, const char *contextMessage, const char *filename, const char *function, uint32_t lineNumber) const |
| Set the current error information associated with this sensor. More...
|
|
virtual void | CloneError (ErrorBase *rhs) const |
|
virtual void | ClearError () const |
| Clear the current error information associated with this sensor.
|
|
virtual bool | StatusIsFatal () const |
| Check if the current error code represents a fatal error. More...
|
|
|
static void | DeleteSingletons () |
|
static uint32_t | GetDefaultAnalogModule () |
|
static uint32_t | GetDefaultDigitalModule () |
|
static uint32_t | GetDefaultSolenoidModule () |
|
static bool | CheckAnalogModule (uint8_t moduleNumber) |
|
static bool | CheckDigitalModule (uint8_t moduleNumber) |
|
static bool | CheckPWMModule (uint8_t moduleNumber) |
|
static bool | CheckRelayModule (uint8_t moduleNumber) |
|
static bool | CheckSolenoidModule (uint8_t moduleNumber) |
|
static bool | CheckDigitalChannel (uint32_t channel) |
|
static bool | CheckRelayChannel (uint32_t channel) |
|
static bool | CheckPWMChannel (uint32_t channel) |
|
static bool | CheckAnalogChannel (uint32_t channel) |
|
static bool | CheckSolenoidChannel (uint32_t channel) |
|
static void | SetGlobalError (Error::Code code, const char *contextMessage, const char *filename, const char *function, uint32_t lineNumber) |
|
static void | SetGlobalWPIError (const char *errorMessage, const char *contextMessage, const char *filename, const char *function, uint32_t lineNumber) |
|
static Error & | GetGlobalError () |
|
static const uint32_t | kSystemClockTicksPerMicrosecond = 40 |
|
static const uint32_t | kDigitalChannels = 14 |
|
static const uint32_t | kAnalogChannels = 8 |
|
static const uint32_t | kAnalogModules = 2 |
|
static const uint32_t | kDigitalModules = 2 |
|
static const uint32_t | kSolenoidChannels = 8 |
|
static const uint32_t | kSolenoidModules = 2 |
|
static const uint32_t | kPwmChannels = 10 |
|
static const uint32_t | kRelayChannels = 8 |
|
static const uint32_t | kChassisSlots = 8 |
|
Class implements the PWM generation in the FPGA.
The values supplied as arguments for PWM outputs range from -1.0 to 1.0. They are mapped to the hardware dependent values, in this case 0-255 for the FPGA. Changes are immediately sent to the FPGA, and the update occurs at the next FPGA cycle. There is no delay.
As of revision 0.1.10 of the FPGA, the FPGA interprets the 0-255 values as follows:
- 255 = full "forward"
- 254 to 129 = linear scaling from "full forward" to "center"
- 128 = center value
- 127 to 2 = linear scaling from "center" to "full reverse"
- 1 = full "reverse"
- 0 = disabled (i.e. PWM output is held low)