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... | |