Microchip® Advanced Software Framework

tal_helper.h File Reference

This file contains TAL helper function declarations.

Copyright (c) 2013-2018 Microchip Technology Inc. and its subsidiaries.

Macros

#define AACK_PROM_DISABLE   (0x00)
 
#define AACK_PROM_ENABLE   (0x01)
 
#define ANT_AUTO_SEL   (0)
 
#define ANT_CTRL_0   (0)
 Support and FAQ: visit Atmel Support More...
 
#define ANT_CTRL_1   (1)
 
#define ANT_CTRL_2   (2)
 
#define ANT_CTRL_3   (3)
 
#define ANT_DIVERSITY_DISABLE   (0)
 
#define ANT_DIVERSITY_ENABLE   (1)
 
#define ANT_EXTERNAL_SW_DISABLE   (0)
 
#define ANT_EXTERNAL_SW_ENABLE   (1)
 
#define BASE_ISM_FREQUENCY_MHZ   (2306)
 
#define CC_1_END_FREQUENCY   (794.5)
 
#define CC_1_START_FREQUENCY   (769.0)
 
#define CC_2_END_FREQUENCY   (882.5)
 
#define CC_2_START_FREQUENCY   (857.0)
 
#define CC_3_END_FREQUENCY   (928.5)
 
#define CC_3_START_FREQUENCY   (903.0)
 
#define CC_4_END_FREQUENCY   (863.0)
 
#define CC_4_START_FREQUENCY   (769.0)
 
#define CC_5_END_FREQUENCY   (935.0)
 
#define CC_5_START_FREQUENCY   (833.0)
 
#define CC_6_END_FREQUENCY   (927.5)
 
#define CC_6_START_FREQUENCY   (902.0)
 
#define CC_BAND_0   (0x00)
 
#define CC_BAND_0   (0x00)
 
#define CC_BAND_1   (0x01)
 
#define CC_BAND_2   (0x02)
 
#define CC_BAND_3   (0x03)
 
#define CC_BAND_4   (0x04)
 
#define CC_BAND_5   (0x05)
 
#define CC_BAND_6   (0x06)
 
#define CC_BAND_8   (0x08)
 
#define CC_BAND_9   (0x09)
 
#define CC_NUMBER_0   (0x00)
 
#define DBM_VALUE   (0x00)
 
#define MAX_CC_BAND   (0x05)
 
#define MAX_ISM_FREQUENCY_MHZ   (2527)
 
#define MAX_PDT_LEVEL   (0x0f)
 
#define MAX_REG_ADDR_VALUE   (0x1ff)
 
#define MID_ISM_FREQUENCY_MHZ   (2434)
 
#define MIN_CC_BAND_4_OFFSET   (0x5E)
 
#define MIN_CC_BAND_5_OFFSET   (0x66)
 
#define MIN_CC_BAND_8_OFFSET   (0x20)
 
#define MIN_CC_BAND_9_OFFSET   (0xBA)
 
#define MIN_ISM_FREQUENCY_MHZ   (2322)
 
#define REGISTER_VALUE   (0x01)
 

Typedefs

typedef enum param_tag param_type
 

Enumerations

enum  param_tag {
  CC_BAND = 0x04,
  CC_NUMBER = 0x05,
  TX_PWR = 0x06
}
 

Functions

retval_t tal_calculate_frequency (uint8_t cc_band, uint8_t cc_number, float *freq)
 
retval_t tal_dump_registers (uint16_t start_addr, uint16_t end_addr, uint8_t *value)
 
retval_t tal_get_curr_trx_config (param_type parameter, uint8_t *param_value)
 
int8_t tal_get_rssi_base_val (void)
 
tal_trx_status_t tal_get_trx_status (void)
 
retval_t tal_rpc_mode_config (uint8_t rpc_mode_sel)
 
retval_t tal_rxsafe_mode_ctrl (bool safe_mode_ctrl)
 Enable/Disable the rx safe mode. More...
 
retval_t tal_set_frequency (float frequency)
 Enable/Disable the external RF front end control. More...
 
retval_t tal_set_frequency_regs (uint8_t cc_band, uint8_t cc_number)
 to set the frequency based on CC_BAND and CC_NUMBER Registers More...
 
retval_t tal_trx_reg_read (uint16_t reg_addr, uint8_t *data)
 
retval_t tal_trx_reg_write (uint16_t reg_addr, uint8_t value)
 

#define AACK_PROM_DISABLE   (0x00)
#define AACK_PROM_ENABLE   (0x01)
#define ANT_AUTO_SEL   (0)
#define ANT_CTRL_0   (0)

Support and FAQ: visit Atmel Support

Referenced by tal_ant_div_config().

#define ANT_CTRL_1   (1)
#define ANT_CTRL_2   (2)
#define ANT_CTRL_3   (3)

Referenced by tal_ant_div_config().

#define ANT_DIVERSITY_DISABLE   (0)
#define ANT_DIVERSITY_ENABLE   (1)
#define ANT_EXTERNAL_SW_DISABLE   (0)
#define ANT_EXTERNAL_SW_ENABLE   (1)
#define BASE_ISM_FREQUENCY_MHZ   (2306)
#define CC_1_END_FREQUENCY   (794.5)

Referenced by tal_set_frequency().

#define CC_1_START_FREQUENCY   (769.0)
#define CC_2_END_FREQUENCY   (882.5)

Referenced by tal_set_frequency().

#define CC_2_START_FREQUENCY   (857.0)
#define CC_3_END_FREQUENCY   (928.5)

Referenced by tal_set_frequency().

#define CC_3_START_FREQUENCY   (903.0)
#define CC_4_END_FREQUENCY   (863.0)

Referenced by tal_set_frequency().

#define CC_4_START_FREQUENCY   (769.0)
#define CC_5_END_FREQUENCY   (935.0)

Referenced by tal_set_frequency().

#define CC_5_START_FREQUENCY   (833.0)
#define CC_6_END_FREQUENCY   (927.5)

Referenced by tal_set_frequency().

#define CC_6_START_FREQUENCY   (902.0)
#define CC_BAND_0   (0x00)
#define CC_BAND_0   (0x00)
#define CC_BAND_1   (0x01)

Referenced by tal_set_frequency().

#define CC_BAND_2   (0x02)

Referenced by tal_set_frequency().

#define CC_BAND_3   (0x03)

Referenced by tal_set_frequency().

#define CC_BAND_4   (0x04)
#define CC_BAND_5   (0x05)
#define CC_BAND_6   (0x06)

Referenced by tal_set_frequency().

#define CC_BAND_8   (0x08)
#define CC_BAND_9   (0x09)
#define CC_NUMBER_0   (0x00)
#define DBM_VALUE   (0x00)
#define MAX_CC_BAND   (0x05)
#define MAX_ISM_FREQUENCY_MHZ   (2527)

Referenced by tal_set_frequency().

#define MAX_PDT_LEVEL   (0x0f)
#define MAX_REG_ADDR_VALUE   (0x1ff)
#define MID_ISM_FREQUENCY_MHZ   (2434)
#define MIN_CC_BAND_4_OFFSET   (0x5E)
#define MIN_CC_BAND_5_OFFSET   (0x66)
#define MIN_CC_BAND_8_OFFSET   (0x20)
#define MIN_CC_BAND_9_OFFSET   (0xBA)
#define MIN_ISM_FREQUENCY_MHZ   (2322)

Referenced by tal_set_frequency().

#define REGISTER_VALUE   (0x01)

typedef enum param_tag param_type

enum param_tag
Enumerator
CC_BAND 
CC_NUMBER 
TX_PWR 

retval_t tal_dump_registers ( uint16_t  start_addr,
uint16_t  end_addr,
uint8_t *  value 
)
tal_trx_status_t tal_get_trx_status ( void  )

References SR_TRX_STATUS, and trx_bit_read().

retval_t tal_rpc_mode_config ( uint8_t  rpc_mode_sel)
retval_t tal_rxsafe_mode_ctrl ( bool  safe_mode_ctrl)

Enable/Disable the rx safe mode.

Parameters
safe_mode_ctrltrue if rx safe mode has to be enabled
Returns
MAC_SUCCESS if rx_safe_mode bit is configured correctly FAILURE otherwise

References FAILURE, MAC_SUCCESS, SR_RX_SAFE_MODE, trx_bit_read(), and trx_bit_write().

retval_t tal_set_frequency_regs ( uint8_t  cc_band,
uint8_t  cc_number 
)

to set the frequency based on CC_BAND and CC_NUMBER Registers

Parameters
cc_bandband to be selected in cc_band register bits
cc_numberoffset frequency to be selected in cc_number register bits
Returns
MAC_SUCCESS if frequency is configured correctly MAC_INVALID_PARAMETER if out of range or incorrect values are given FAILURE if frequency registers are not configured properly

References CC_BAND_4, CC_BAND_5, CC_BAND_8, CC_BAND_9, CMD_RX_AACK_ON, CMD_TRX_OFF, FAILURE, MAC_INVALID_PARAMETER, MAC_SUCCESS, MAX_CC_BAND, MIN_CC_BAND_4_OFFSET, MIN_CC_BAND_5_OFFSET, MIN_CC_BAND_8_OFFSET, MIN_CC_BAND_9_OFFSET, RG_CC_CTRL_0, RX_AACK_ON, set_trx_state(), SR_CC_BAND, tal_trx_status, trx_bit_read(), trx_bit_write(), TRX_OFF, trx_reg_read(), and trx_reg_write().

retval_t tal_trx_reg_read ( uint16_t  reg_addr,
uint8_t *  data 
)
retval_t tal_trx_reg_write ( uint16_t  reg_addr,
uint8_t  value 
)