Microchip® Advanced Software Framework

trx_access_2.c File Reference

Performs interface functionalities between the PHY layer and ASF drivers.

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

#include "board.h"
#include "spi.h"
#include "trx_access_2.h"
#include "tal.h"
#include "usart.h"
#include "sio2ncp.h"
#include "conf_sio2ncp.h"
#include "delay.h"
#include "interrupt.h"
#include "conf_pal.h"

Macros

#define DISABLE_TRX_INTERRUPT()
 
#define ENABLE_TRX_INTERRUPT()
 
#define TAL_DEFAULT_BB_IRQ_MASK   (BB_IRQ_TXFE | BB_IRQ_RXFE)
 
#define TAL_DEFAULT_RF_IRQ_MASK   RF_IRQ_ALL_IRQ
 

Functions

void AT86RFX_ISR (void)
 
void PhyReset (void)
 Resets the TRX radio. More...
 
uint8_t trx_bit_read (uint16_t addr, uint8_t mask, uint8_t pos)
 Subregister read. More...
 
void trx_bit_write (uint16_t reg_addr, uint8_t mask, uint8_t pos, uint8_t new_value)
 Subregister write. More...
 
void trx_irq_init (FUNC_PTR trx_irq_cb)
 
void trx_read (uint16_t addr, uint8_t *data, uint16_t length)
 
uint8_t trx_reg_read (uint16_t addr)
 
void trx_reg_write (uint16_t addr, uint8_t data)
 Writes data into a transceiver register. More...
 
void trx_spi_init (void)
 Initializes the SPI interface for communication with the transceiver. More...
 
void trx_write (uint16_t addr, uint8_t *data, uint16_t length)
 

Variables

struct spi_config config
 
uint16_t dummy_read
 
static irq_handler_t irq_hdl_trx = NULL
 
struct spi_module master
 
struct spi_slave_inst slave
 
struct spi_slave_inst_config slave_dev_config
 

#define DISABLE_TRX_INTERRUPT ( )
Value:
void trx_reg_write(uint16_t addr, uint8_t data)
Writes data into a transceiver register.
Definition: trx_access_2.c:417
#define RG_RF09_IRQM
Address for register RF09_IRQM.
Definition: at86rf215.h:1882
#define RF_BASE_ADDR_OFFSET
Register offset between RF09 and TRX24.
Definition: tal_rf215.h:103
#define BB_BASE_ADDR_OFFSET
Register offset between the baseband cores.
Definition: tal_rf215.h:106
#define RG_BBC0_IRQM
Address for register BBC0_IRQM.
Definition: at86rf215.h:2592

Referenced by trx_read(), and trx_write().

#define ENABLE_TRX_INTERRUPT ( )
Value:
#define TAL_DEFAULT_RF_IRQ_MASK
Definition: trx_access_2.c:142
#define TAL_DEFAULT_BB_IRQ_MASK
Definition: trx_access_2.c:141
void trx_reg_write(uint16_t addr, uint8_t data)
Writes data into a transceiver register.
Definition: trx_access_2.c:417
#define RG_RF09_IRQM
Address for register RF09_IRQM.
Definition: at86rf215.h:1882
#define RF_BASE_ADDR_OFFSET
Register offset between RF09 and TRX24.
Definition: tal_rf215.h:103
#define BB_BASE_ADDR_OFFSET
Register offset between the baseband cores.
Definition: tal_rf215.h:106
#define RG_BBC0_IRQM
Address for register BBC0_IRQM.
Definition: at86rf215.h:2592

Referenced by trx_read(), and trx_write().

#define TAL_DEFAULT_BB_IRQ_MASK   (BB_IRQ_TXFE | BB_IRQ_RXFE)
#define TAL_DEFAULT_RF_IRQ_MASK   RF_IRQ_ALL_IRQ

void AT86RFX_ISR ( void  )

Referenced by trx_spi_init().

struct spi_config config

Referenced by trx_spi_init().

uint16_t dummy_read
irq_handler_t irq_hdl_trx = NULL
static

Referenced by trx_irq_init().

struct spi_module master
struct spi_slave_inst slave
struct spi_slave_inst_config slave_dev_config

Referenced by trx_spi_init().