The DMX512 / RDM Transceiver.
Go to the source code of this file.
Data Structures | |
union | TransceiverTiming |
The timing measurements for an operation. More... | |
struct | TransceiverEvent |
Information about a transceiver event. More... | |
struct | TransceiverHardwareSettings |
The hardware settings to use for the Transceiver. More... | |
Typedefs | |
typedef bool(* | TransceiverEventCallback )(const TransceiverEvent *event) |
The callback run when a transceiver event occurs. More... | |
Enumerations | |
enum | TransceiverMode { T_MODE_CONTROLLER, T_MODE_RESPONDER, T_MODE_SELF_TEST, T_MODE_LAST } |
The operating modes of the transceiver. More... | |
enum | TransceiverOperation { T_OP_TX_ONLY, T_OP_RDM_DUB, T_OP_RDM_BROADCAST, T_OP_RDM_WITH_RESPONSE, T_OP_RX, T_OP_MODE_CHANGE, T_OP_SELF_TEST } |
Identifies the various types of transceiver operation. More... | |
enum | TransceiverOperationResult { T_RESULT_OK, T_RESULT_TX_ERROR, T_RESULT_RX_DATA, T_RESULT_RX_TIMEOUT, T_RESULT_RX_INVALID, T_RESULT_RX_START_FRAME, T_RESULT_RX_CONTINUE_FRAME, T_RESULT_RX_FRAME_TIMEOUT, T_RESULT_CANCELLED, T_RESULT_SELF_TEST_FAILED } |
The result of an operation. More... | |
Functions | |
void | Transceiver_Initialize (const TransceiverHardwareSettings *settings, TransceiverEventCallback tx_callback, TransceiverEventCallback rx_callback) |
Initialize the transceiver. More... | |
bool | Transceiver_SetMode (TransceiverMode mode, int16_t token) |
Change the operating mode of the transceiver. More... | |
TransceiverMode | Transceiver_GetMode () |
The operating mode of the transceiver. More... | |
void | Transceiver_Tasks () |
Perform the periodic transceiver tasks. More... | |
bool | Transceiver_QueueDMX (int16_t token, const uint8_t *data, unsigned int size) |
Queue a DMX frame for transmission. More... | |
bool | Transceiver_QueueASC (int16_t token, uint8_t start_code, const uint8_t *data, unsigned int size) |
Queue an alternate start code (ASC) frame for transmission. More... | |
bool | Transceiver_QueueRDMDUB (int16_t token, const uint8_t *data, unsigned int size) |
Queue an RDM DUB operation. More... | |
bool | Transceiver_QueueRDMRequest (int16_t token, const uint8_t *data, unsigned int size, bool is_broadcast) |
Queue an RDM Get / Set operation. More... | |
bool | Transceiver_QueueRDMResponse (bool include_break, const IOVec *iov, unsigned int iov_count) |
Queue an RDM Response. More... | |
bool | Transceiver_QueueSelfTest (int16_t token) |
Schedule a loopback self test. | |
void | Transceiver_Reset () |
Reset the transceiver state. More... | |
bool | Transceiver_SetBreakTime (uint16_t break_time_us) |
Set the break (space) time. More... | |
uint16_t | Transceiver_GetBreakTime () |
Return the current configured break time. More... | |
bool | Transceiver_SetMarkTime (uint16_t mark_time_us) |
Set the mark-after-break (MAB) time. More... | |
uint16_t | Transceiver_GetMarkTime () |
Return the current configured mark-after-break (MAB) time. More... | |
bool | Transceiver_SetRDMBroadcastTimeout (uint16_t delay) |
Set the controller timeout for broadcast RDM commands. More... | |
uint16_t | Transceiver_GetRDMBroadcastTimeout () |
Return the current controller timeout for broadcast RDM commands. More... | |
bool | Transceiver_SetRDMResponseTimeout (uint16_t delay) |
Set the controller's RDM response timeout. More... | |
uint16_t | Transceiver_GetRDMResponseTimeout () |
Return the controller's RDM response timeout. More... | |
bool | Transceiver_SetRDMDUBResponseLimit (uint16_t limit) |
Set the maximum time allowed for a DUB response. More... | |
uint16_t | Transceiver_GetRDMDUBResponseLimit () |
Return the Controller DUB response timeout. More... | |
bool | Transceiver_SetRDMResponderDelay (uint16_t delay) |
Configure the delay after the end of the controller's packet before the responder will transmit the reply. More... | |
uint16_t | Transceiver_GetRDMResponderDelay () |
Return the RDM responder delay. More... | |
bool | Transceiver_SetRDMResponderJitter (uint16_t max_jitter) |
Configure the jitter added to the responder delay. More... | |
uint16_t | Transceiver_GetRDMResponderJitter () |
Return the RDM responder jitter. More... | |
Variables | |
const int16_t | TRANSCEIVER_NO_NOTIFICATION |
Suppress event notifications. More... | |