38 #include "ezradio_cmd.h"
39 #include "ezradio_prop.h"
41 #include "ezradio_api_lib_add.h"
45 #if defined( EZRADIO_PLUGIN_TRANSMIT )
51 #if defined(EZRADIO_PLUGIN_AUTO_ACK) && defined(EZRADIO_PLUGIN_RECEIVE)
76 bool updateFields =
false;
78 if ( radioHandle == NULL )
90 pktLengthConf.
fieldLen.
f1 = (uint8_t)packetLength;
97 ezradioStartTx(radioHandle, updateFields, pktLengthConf, pioRadioPacket);
120 bool updateFields =
false;
122 if ( radioHandle == NULL )
139 ezradioStartTx(radioHandle, updateFields, pktLengthConf, pioRadioPacket);
159 bool updateFields =
false;
161 if ( radioHandle == NULL )
178 ezradioStartTx(radioHandle, updateFields, pktLengthConf, pioRadioPacket);
200 if ( radioHandle == NULL )
236 if ( radioHandle == NULL )
261 if ( radioHandle == NULL )
266 if ( radioReplyHandle->GET_INT_STATUS.PH_PEND & EZRADIO_CMD_GET_INT_STATUS_REP_PH_PEND_PACKET_SENT_PEND_BIT )
268 #if defined(EZRADIO_PLUGIN_AUTO_ACK) && defined(EZRADIO_PLUGIN_RECEIVE)
273 ezradioHandleAutoAckPlugin(radioHandle, radioReplyHandle);
276 #endif //#if defined(EZRADIO_PLUGIN_AUTO_ACK) && defined(EZRADIO_PLUGIN_RECEIVE)
305 ezradio_cmd_reply_t ezradioReply;
307 if ( radioHandle == NULL )
315 if (ezradioReply.REQUEST_DEVICE_STATE.CURR_STATE == EZRADIO_CMD_REQUEST_DEVICE_STATE_REP_CURR_STATE_MAIN_STATE_ENUM_TX) {
330 #if (RADIO_CONFIGURATION_DATA_RADIO_CHIP_FAMILY == RADIO_CHIP_FAMILY_EZRADIOPRO)
333 EZRADIO_PROP_GRP_ID_PKT, 2u,
334 EZRADIO_PROP_GRP_INDEX_PKT_FIELD_1_LENGTH,
339 EZRADIO_PROP_GRP_ID_PKT, 2u,
340 EZRADIO_PROP_GRP_INDEX_PKT_FIELD_2_LENGTH,
345 EZRADIO_PROP_GRP_ID_PKT, 2u,
346 EZRADIO_PROP_GRP_INDEX_PKT_FIELD_3_LENGTH,
351 EZRADIO_PROP_GRP_ID_PKT, 2u,
352 EZRADIO_PROP_GRP_INDEX_PKT_FIELD_4_LENGTH,
357 EZRADIO_PROP_GRP_ID_PKT, 2u,
358 EZRADIO_PROP_GRP_INDEX_PKT_FIELD_5_LENGTH,
361 #endif //#if !(RADIO_CONFIG_DATA_RADIO_TYPE == 4455)
375 #endif //#if defined( EZRADIO_PLUGIN_TRANSMIT )
#define ECODE_EMDRV_EZRADIODRV_TRANSMIT_FAILED
Unable to start transmission.
EZRADIODRV_PacketTxHandle_t packetTx
Packet transmission plug-in handler.
Ecode_t ezradioStartTransmitDefault(EZRADIODRV_Handle_t radioHandle, uint8_t *pioRadioPacket)
Start a default transmission using the packet information previously set to radioHandle. Depending on the information in the radioHandle parameter the function decides which transmission function has to be called.
void ezradio_write_tx_fifo(uint8_t numbytes, uint8_t *pdata)
#define ECODE_EMDRV_EZRADIODRV_OK
Success return value.
uint8_t f1
Field 1 length.
uint8_t f5
Field 5 length.
uint8_t channel
Transmission channel.
Auto acknowledge packet type.
EZRADIODRV_TransmitLengthMode_t lenMode
Length mode.
This file contains the common API library of the EZRadio and EZRadioPRO families. ...
void ezradio_start_tx(uint8_t channel, uint8_t condition, uint16_t tx_len)
This file contains the plug-in manager for the EZRadio and EZRadioPRO chip families.
CMSIS Cortex-M Peripheral Access Layer for Silicon Laboratories microcontroller devices.
EzRadio transmit plug-in managed by the plug-in manager if enabled.
EzRadio transmit packet length configuration structure.
EZRADIODRV_FieldLength_t fieldLen
Field lengths.
Ecode_t ezradioStartTransmitSmart(EZRADIODRV_Handle_t radioHandle, EZRADIODRV_PacketLengthConfig_t pktLengthConf, uint8_t *pioRadioPacket)
Start a smart transmission. Depending on the information in the pktLengthConf parameter the function ...
Ecode_t ezradioStartTransmitBasic(EZRADIODRV_Handle_t radioHandle, uint16_t packetLength, uint8_t *pioRadioPacket)
Start basic transmission. Radio transmits with data only in the first field in this case...
EZRADIODRV_AutoAckHandle_t autoAck
Auto-acknowledge plug-in handler.
Transmit packet length is defined by the application for field1 only.
EZRADIODRV_Callback_t userCallback
User callback.
uint32_t Ecode_t
Typedef for API function error code return values.
void ezradio_set_property(uint8_t group, uint8_t num_props, uint8_t start_prop,...)
Transmit packet length is defined in the generated configuration.
uint8_t f4
Field 4 length.
Transmit packet length is defined by the application for multiple fields.
#define ECODE_EMDRV_EZRADIODRV_ILLEGAL_HANDLE
Illegal SPI handle.
Immediate acknowledge transmission.
uint16_t pktLen
Packet length.
Ecode_t ezradioStartTransmitConfigured(EZRADIODRV_Handle_t radioHandle, uint8_t *pioRadioPacket)
Start transmission using the packet parameters from the generated configuration header file...
Ecode_t ezradioStartTransmitCustom(EZRADIODRV_Handle_t radioHandle, EZRADIODRV_PacketLengthConfig_t pktLengthConf, uint8_t *pioRadioPacket)
Start transmission using the packet parameters from pktLengthConf.
EZRADIODRV_TransmitPacketType_t pktType
Packet type.
uint8_t f2
Field 2 length.
EZRADIODRV_AutoAckMode_t ackMode
Auto ack mode.
ezradio_cmd_reply_t * EZRADIODRV_ReplyHandle_t
EZradio reply union handle.
EZRADIODRV_PacketLengthConfig_t lenConfig
Packet length configuration.
void ezradio_request_device_state(ezradio_cmd_reply_t *ezradioReply)
uint8_t f3
Field 3 length.