EFM32 Pearl Gecko 12 Software Documentation  efm32pg12-doc-5.1.2
ezradio_auto_ack_plugin.h
Go to the documentation of this file.
1 /***************************************************************************/
34 #ifndef EZRADIO_AUTO_ACK_PLUGIN_H_
35 #define EZRADIO_AUTO_ACK_PLUGIN_H_
36 
37 #ifdef __cplusplus
38 extern "C" {
39 #endif
40 
41 /***************************************************************************/
46 /***************************************************************************/
51 /***************************************************************************/
56 /***************************************************************************/
63 #if defined(EZRADIO_PLUGIN_AUTO_ACK) && defined(EZRADIO_PLUGIN_TRANSMIT) && defined(EZRADIO_PLUGIN_RECEIVE)
64 
67 {
72 
75 {
79 
82 {
87  uint8_t * pktBuf;
88  uint16_t pktId;
90 
91 
95 
97 #define EZRADIODRV_AUTO_ACK_PLUGIN_INIT_DEFAULT \
98 { /* Auto acknowledge */ \
99  NULL, /* CallBack */ \
100  ezradiodrvAutoAckDisabled, /* Ack mode */ \
101  ezradiodrvAutoAckPktDefault, /* Ack packet mode */ \
102  { /* Packet length config */ \
103  ezradiodrvTransmitLenghtDefault, /* Default length mode */ \
104  0, /* Packet length */ \
105  RADIO_CONFIG_DATA_FIELD_LENGTH, /* Field lengths */ \
106  }, \
107  NULL, /* Packet buffer */ \
108  0, /* Packet ID */ \
109 },
110 
111 #else //#if defined( EZRADIO_PLUGIN_AUTO_ACK ) && defined( EZRADIO_PLUGIN_TRANSMIT ) && defined( EZRADIO_PLUGIN_RECEIVE )
112 
113 #define EZRADIODRV_AUTO_ACK_PLUGIN_INIT_DEFAULT
114 
115 #endif //#if defined( EZRADIO_PLUGIN_AUTO_ACK ) && defined( EZRADIO_PLUGIN_TRANSMIT ) && defined( EZRADIO_PLUGIN_RECEIVE )
116 
122 #ifdef __cplusplus
123 }
124 #endif
125 
126 #endif /* EZRADIO_AUTO_ACK_PLUGIN_H_ */
EZRADIODRV_AutoAckPacketMode_t pktMode
Packet mode for aut ack.
struct EZRADIODRV_AutoAckHandle EZRADIODRV_AutoAckHandle_t
EzRadio auto acknowledge plug-in instance initialization and handler structure.
EZRADIODRV_Callback_t userCallback
User callback.
EZRADIODRV_AutoAckMode
EzRadio auto acknowledge mode.
Acknowledge transmission is skipped for one cycle, eg. not to transmit ACK if ACK is received...
EzRadio transmit packet length configuration structure.
EZRADIODRV_AutoAckPacketMode
EzRadio packet mode for auto acknowledge plug-in.
uint16_t pktId
Auto ack packet ID.
Auto acknowledge uses the same transmission configuration as the actual configuration.
Auto acknowledge uses custom packet configuration.
Auto acknowledge transmission disabled.
void(* EZRADIODRV_Callback_t)(EZRADIODRV_Handle_t handle, Ecode_t status)
EZRADIODRV feature callback function interface.
void ezradioEnableAutoAck(EZRADIODRV_AutoAckHandle_t *autoAckHandle)
Enables auto acknowledge sending feature.
Immediate acknowledge transmission.
EzRadio auto acknowledge plug-in instance initialization and handler structure.
enum EZRADIODRV_AutoAckPacketMode EZRADIODRV_AutoAckPacketMode_t
EzRadio packet mode for auto acknowledge plug-in.
void ezradioSkipAutoAck(EZRADIODRV_AutoAckHandle_t *autoAckHandle)
Configures auto acknowledge sending feature so that there will be no acknowledge transmitted to the n...
enum EZRADIODRV_AutoAckMode EZRADIODRV_AutoAckMode_t
EzRadio auto acknowledge mode.
EZRADIODRV_AutoAckMode_t ackMode
Auto ack mode.
void ezradioDisableAutoAck(EZRADIODRV_AutoAckHandle_t *autoAckHandle)
Disables auto acknowledge sending feature.
EZRADIODRV_PacketLengthConfig_t lenConfig
Pakcet length config for auto ack.
uint8_t * pktBuf
Pointer to the buffer that holds the auto ack packet.