#include <commands_3dm.hpp>
|
| enum | Feature : uint8_t {
Feature::UNUSED = 0,
Feature::GPIO = 1,
Feature::PPS = 2,
Feature::ENCODER = 3,
Feature::TIMESTAMP = 4,
Feature::UART = 5
} |
| |
| enum | Behavior : uint8_t {
Behavior::UNUSED = 0,
Behavior::GPIO_INPUT = 1,
Behavior::GPIO_OUTPUT_LOW = 2,
Behavior::GPIO_OUTPUT_HIGH = 3,
Behavior::PPS_INPUT = 1,
Behavior::PPS_OUTPUT = 2,
Behavior::ENCODER_A = 1,
Behavior::ENCODER_B = 2,
Behavior::TIMESTAMP_RISING = 1,
Behavior::TIMESTAMP_FALLING = 2,
Behavior::TIMESTAMP_EITHER = 3,
Behavior::UART_PORT2_TX = 33,
Behavior::UART_PORT2_RX = 34,
Behavior::UART_PORT3_TX = 49,
Behavior::UART_PORT3_RX = 50
} |
| |
◆ Behavior
| Enumerator |
|---|
| UNUSED | Use 0 unless otherwise specified.
|
| GPIO_INPUT | Pin will be an input. This can be used to stream or poll the value and is the default setting.
|
| GPIO_OUTPUT_LOW | Pin is an output initially in the LOW state. This state will be restored during system startup if the configuration is saved.
|
| GPIO_OUTPUT_HIGH | Pin is an output initially in the HIGH state. This state will be restored during system startup if the configuration is saved.
|
| PPS_INPUT | Pin will receive the pulse-per-second signal. Only one pin can have this behavior. This will only work if the PPS Source command is configured to GPIO.
|
| PPS_OUTPUT | Pin will transmit the pulse-per-second signal from the device.
|
| ENCODER_A | Encoder "A" quadrature input. Only one pin can have this behavior. The last command to set this behavior will take precedence.
|
| ENCODER_B | Encoder "B" quadrature input. Only one pin can have this behavior. The last command to set this behavior will take precedence.
|
| TIMESTAMP_RISING | Rising edges will be timestamped.
|
| TIMESTAMP_FALLING | Falling edges will be timestamped.
|
| TIMESTAMP_EITHER | Both rising and falling edges will be timestamped.
|
| UART_PORT2_TX | (0x21) UART port 2 transmit.
|
| UART_PORT2_RX | (0x22) UART port 2 receive.
|
| UART_PORT3_TX | (0x31) UART port 3 transmit.
|
| UART_PORT3_RX | (0x32) UART port 3 receive.
|
◆ Feature
| Enumerator |
|---|
| UNUSED | The pin is not used. It may be technically possible to read the pin state in this mode, but this is not guaranteed to be true of all devices or pins.
|
| GPIO | General purpose input or output. Use this for direct control of pin output state or to stream the state of the pin.
|
| PPS | Pulse per second input or output.
|
| ENCODER | Motor encoder/odometer input.
|
| TIMESTAMP | Precision Timestamping. Use with Event Trigger Configuration (0x0C,0x2E).
|
| UART | UART data or control lines.
|
◆ asTuple() [1/2]
| auto mip::commands_3dm::GpioConfig::asTuple |
( |
| ) |
|
|
inline |
◆ asTuple() [2/2]
| auto mip::commands_3dm::GpioConfig::asTuple |
( |
| ) |
const |
|
inline |
◆ create_sld_all()
◆ extract()
| void mip::commands_3dm::GpioConfig::extract |
( |
Serializer & |
serializer | ) |
|
◆ insert()
| void mip::commands_3dm::GpioConfig::insert |
( |
Serializer & |
serializer | ) |
const |
◆ behavior
Select an appropriate value from the enumeration based on the selected feature (e.g. for PPS, select one of the values prefixed with PPS_.)
◆ DESCRIPTOR
◆ DESCRIPTOR_SET
| constexpr const uint8_t mip::commands_3dm::GpioConfig::DESCRIPTOR_SET = ::mip::commands_3dm::DESCRIPTOR_SET |
|
staticconstexpr |
◆ DOC_NAME
| constexpr const char* mip::commands_3dm::GpioConfig::DOC_NAME = "GPIO Configuration" |
|
staticconstexpr |
◆ feature
| Feature mip::commands_3dm::GpioConfig::feature = static_cast<Feature>(0) |
Determines how the pin will be used.
◆ FIELD_DESCRIPTOR
◆ function
◆ HAS_FUNCTION_SELECTOR
| constexpr const bool mip::commands_3dm::GpioConfig::HAS_FUNCTION_SELECTOR = true |
|
staticconstexpr |
◆ NAME
| constexpr const char* mip::commands_3dm::GpioConfig::NAME = "GpioConfig" |
|
staticconstexpr |
◆ pin
| uint8_t mip::commands_3dm::GpioConfig::pin = 0 |
GPIO pin number counting from 1. For save, load, and default function selectors, this can be 0 to select all pins.
◆ pin_mode
| PinMode mip::commands_3dm::GpioConfig::pin_mode |
GPIO configuration. May be restricted depending on device, pin, feature, and behavior. See device user manual.
The documentation for this struct was generated from the following files: