Microchip® Advanced Software Framework

radio_transaction.h File Reference

This is the radio_transaction header file which contains Transmit, Receive and Interrupt handling interfaces.

Copyright (c) 2019-2020 Microchip Technology Inc. and its subsidiaries.

#include "radio_interface.h"
#include <stdint.h>
#include <stddef.h>

Data Structures

struct  _RadioCallbackMask_t::_BitMask_
 
union  _RadioCallbackMask_t
 Possible callback events registration. More...
 
struct  _RadioEvents_t
 Possible events from DIO's and timers. More...
 

Macros

#define BLOCKING_REQ   1
 
#define NON_BLOCKING_REQ   0
 
#define RADIO_BUFFER_SIZE   RADIO_LORA_BUFFER_SPACE
 
#define RADIO_FSK_BUFFER_SPACE   64u
 
#define RADIO_LORA_BUFFER_SPACE   271u
 
#define RADIO_RFCTRL_RX   (0u)
 
#define RADIO_RFCTRL_TX   (1u)
 
#define RADIO_RX_FIFO_LEVEL   (63u)
 
#define RADIO_TX_FIFO_LEVEL   (63u)
 

Typedefs

typedef union _RadioCallbackMask_t RadioCallbackMask_t
 Possible callback events registration. More...
 
typedef struct _RadioEvents_t RadioEvents_t
 Possible events from DIO's and timers. More...
 

Functions

void Radio_DisableRfControl (bool type)
 This function is to Reset RF front End Control. More...
 
void Radio_EnableRfControl (bool type)
 This function is to Set RF front End Control. More...
 
void Radio_FSKTxPayloadHandler (uint8_t *buffer, uint8_t bufferLen)
 This function handles the payload transfer of bytes from buffer to FIFO. More...
 
void Radio_ResetClockInput (void)
 This function power off/Resets the clock source of Radio. More...
 
void Radio_RxFSKTimeout (uint8_t time)
 This function is triggered by a timer timeout in FSK mode to save Rx power. More...
 
void Radio_SetClockInput (void)
 This function sets the clock input to Radio. More...
 
void Radio_WatchdogTimeout (uint8_t time)
 This function is the callback function for watchdog timer timeout. More...
 
void RadioSetState (RadioState_t state)
 This function sets the radio state. More...
 

#define BLOCKING_REQ   1
#define NON_BLOCKING_REQ   0
#define RADIO_BUFFER_SIZE   RADIO_LORA_BUFFER_SPACE
#define RADIO_FSK_BUFFER_SPACE   64u
#define RADIO_LORA_BUFFER_SPACE   271u
#define RADIO_RFCTRL_RX   (0u)

Referenced by RADIO_ReadRandom().

#define RADIO_RFCTRL_TX   (1u)
#define RADIO_RX_FIFO_LEVEL   (63u)
#define RADIO_TX_FIFO_LEVEL   (63u)

Possible callback events registration.

typedef struct _RadioEvents_t RadioEvents_t

Possible events from DIO's and timers.

void Radio_DisableRfControl ( bool  type)

This function is to Reset RF front End Control.

Parameters
type- RX = false/0, TX = true/1.

Referenced by RADIO_ReadRandom().

void Radio_EnableRfControl ( bool  type)

This function is to Set RF front End Control.

Parameters
type- RX = false/0, TX = true/1.

Referenced by RADIO_ReadRandom().

void Radio_FSKTxPayloadHandler ( uint8_t *  buffer,
uint8_t  bufferLen 
)

This function handles the payload transfer of bytes from buffer to FIFO.

Parameters
[in]bufferPointer to the data to be written into the frame buffer
[in]bufferLenLength of the data to be written
Returns
- none
void Radio_ResetClockInput ( void  )

This function power off/Resets the clock source of Radio.

Parameters
-None
Returns
- None.

Referenced by RADIO_ReadRandom().

void Radio_RxFSKTimeout ( uint8_t  time)

This function is triggered by a timer timeout in FSK mode to save Rx power.

Parameters
time- The time for which the timeout was started.
Returns
- none
void Radio_SetClockInput ( void  )

This function sets the clock input to Radio.

    It will inform the radio from which clock it is sourced
Parameters
-None
Returns
- None.

Referenced by RADIO_ReadRandom().

void Radio_WatchdogTimeout ( uint8_t  time)

This function is the callback function for watchdog timer timeout.

Parameters
time- The watchdog timeout time.
Returns
- none
void RadioSetState ( RadioState_t  state)

This function sets the radio state.

Parameters
state- The state of the radio to be set to.