EFM32 Pearl Gecko Software Documentation  efm32pg1-doc-4.2.1
COMM_Layer

EzRadio Communication Layer, see Communication Layer on page EZRADIODRV EzRadio Peripheral Interface driver for detailed documentation.

. More...

Macros

#define EZRADIO_CTS_TIMEOUT   10000
 

Functions

uint8_t ezradio_comm_GetResp (uint8_t byteCount, uint8_t *pData)
 
void ezradio_comm_SendCmd (uint8_t byteCount, uint8_t *pData)
 
void ezradio_comm_ReadData (uint8_t cmd, uint8_t pollCts, uint8_t byteCount, uint8_t *pData)
 
void ezradio_comm_WriteData (uint8_t cmd, uint8_t pollCts, uint8_t byteCount, uint8_t *pData)
 
uint8_t ezradio_comm_PollCTS (void)
 
uint8_t ezradio_comm_SendCmdGetResp (uint8_t cmdByteCount, uint8_t *pCmdData, uint8_t respByteCount, uint8_t *pRespData)
 
void ezradio_comm_ClearCTS (void)
 

Variables

uint8_t ezradio_comm_CtsWentHigh
 

Detailed Description

Macro Definition Documentation

#define EZRADIO_CTS_TIMEOUT   10000

Radio CTS timeout

Definition at line 58 of file ezradio_comm.h.

Referenced by ezradio_comm_GetResp().

Function Documentation

uint8_t ezradio_comm_GetResp ( uint8_t  byteCount,
uint8_t *  pData 
)

Gets a command response from the radio chip

Parameters
byteCountNumber of bytes to get from the radio chip
pDataPointer to where to put the data
Returns
CTS value

Definition at line 52 of file ezradio_comm.c.

References ezradio_comm_CtsWentHigh, EZRADIO_CTS_TIMEOUT, ezradio_hal_ClearNsel(), ezradio_hal_SetNsel(), ezradio_hal_SpiReadByte(), ezradio_hal_SpiReadData(), and ezradio_hal_SpiWriteByte().

Referenced by ezradio_comm_PollCTS(), and ezradio_comm_SendCmdGetResp().

void ezradio_comm_ReadData ( uint8_t  cmd,
uint8_t  pollCts,
uint8_t  byteCount,
uint8_t *  pData 
)

Gets a command response from the radio chip

Parameters
cmdCommand ID
pollCtsSet to poll CTS
byteCountNumber of bytes to get from the radio chip.
pDataPointer to where to put the data.

Definition at line 120 of file ezradio_comm.c.

References ezradio_comm_CtsWentHigh, ezradio_comm_PollCTS(), ezradio_hal_ClearNsel(), ezradio_hal_SetNsel(), ezradio_hal_SpiReadData(), and ezradio_hal_SpiWriteByte().

Referenced by ezradio_frr_a_read(), ezradio_frr_b_read(), ezradio_frr_c_read(), ezradio_frr_d_read(), and ezradio_read_rx_fifo().

void ezradio_comm_WriteData ( uint8_t  cmd,
uint8_t  pollCts,
uint8_t  byteCount,
uint8_t *  pData 
)

Gets a command response from the radio chip

Parameters
cmdCommand ID
pollCtsSet to poll CTS
byteCountNumber of bytes to get from the radio chip
pDataPointer to where to put the data

Definition at line 145 of file ezradio_comm.c.

References ezradio_comm_CtsWentHigh, ezradio_comm_PollCTS(), ezradio_hal_ClearNsel(), ezradio_hal_SetNsel(), ezradio_hal_SpiWriteByte(), and ezradio_hal_SpiWriteData().

Referenced by ezradio_write_ezconfig_array(), and ezradio_write_tx_fifo().

uint8_t ezradio_comm_PollCTS ( void  )

Waits for CTS to be high

Returns
CTS value

Definition at line 166 of file ezradio_comm.c.

References ezradio_comm_CtsWentHigh, and ezradio_comm_GetResp().

Referenced by ezradio_comm_ReadData(), ezradio_comm_SendCmd(), and ezradio_comm_WriteData().

uint8_t ezradio_comm_SendCmdGetResp ( uint8_t  cmdByteCount,
uint8_t *  pCmdData,
uint8_t  respByteCount,
uint8_t *  pRespData 
)
void ezradio_comm_ClearCTS ( void  )

Clears the CTS state variable.

Definition at line 183 of file ezradio_comm.c.

References ezradio_comm_CtsWentHigh.

Referenced by ezradio_reset().

Variable Documentation

uint8_t ezradio_comm_CtsWentHigh

Can be used to prevent CTS check before any communication command.

Definition at line 42 of file ezradio_comm.c.

Referenced by ezradio_comm_ClearCTS(), ezradio_comm_GetResp(), ezradio_comm_PollCTS(), ezradio_comm_ReadData(), ezradio_comm_SendCmd(), ezradio_comm_WriteData(), and ezradio_ezconfig_check().