The AT86RF212 is a low-power ,low voltage 700/800/900 MHz radio transceiver designed for industrial and consumer ZigBee/IEEE 802.15.4, 6LoWPAN, RF4CE and high data rate sub 1GHz ISM band applications.
Refer AT86RF212 Data Sheet for detailed information .
#define AACK_FLTR_RES_FT 5 |
#define AACK_I_AM_COORD 3 |
#define AACK_UPLD_RES_FT 4 |
#define AES_BLOCK_SIZE 16 |
#define AES_CORE_CYCLE_TIME 24 /* us */ |
#define AES_CTRL_M_REG 0x94 |
#define AES_CTRL_REG 0x83 |
#define AES_CTRL_REQUEST 7 |
#define AES_STATE_REG 0x84 |
#define AES_STATUS_DONE 0 |
#define AES_STATUS_REG 0x82 |
#define CC_CTRL_0_REG 0x13 |
#define CC_CTRL_1_REG 0x14 |
#define CCA_THRES_REG 0x09 |
#define CSMA_SEED_0_REG 0x2d |
#define CSMA_SEED_1_REG 0x2e |
#define FTN_CTRL_REG 0x18 |
#define IEEE_ADDR_0_REG 0x24 |
#define IEEE_ADDR_1_REG 0x25 |
#define IEEE_ADDR_2_REG 0x26 |
#define IEEE_ADDR_3_REG 0x27 |
#define IEEE_ADDR_4_REG 0x28 |
#define IEEE_ADDR_5_REG 0x29 |
#define IEEE_ADDR_6_REG 0x2a |
#define IEEE_ADDR_7_REG 0x2b |
#define IRQ_MASK_REG 0x0e |
#define IRQ_STATUS_REG 0x0f |
#define MAN_ID_0_REG 0x1e |
#define MAN_ID_1_REG 0x1f |
#define MAX_CSMA_RETRES 1 |
#define MAX_FRAME_RETRES 4 |
#define OQPSK_DATA_RATE 0 |
#define OQPSK_SUB1_RC_EN 4 /* Only in AT86RF212 */ |
#define PAN_ID_0_REG 0x22 |
#define PAN_ID_1_REG 0x23 |
#define PART_NUM_REG 0x1c |
#define PHY_CC_CCA_REG 0x08 |
#define PHY_ED_LEVEL_REG 0x07 |
#define PHY_HAS_AES_MODULE |
#define PHY_HAS_RANDOM_NUMBER_GENERATOR |
#define PHY_RSSI_BASE_VAL_BPSK_20 (-100) |
#define PHY_RSSI_BASE_VAL_BPSK_40 (-99) |
#define PHY_RSSI_BASE_VAL_OQPSK_RC_250 (-97) |
#define PHY_RSSI_BASE_VAL_OQPSK_SIN_250 (-97) |
#define PHY_RSSI_BASE_VAL_OQPSK_SIN_RC_100 (-98) |
#define PHY_RSSI_REG 0x06 |
#define PHY_TX_PWR_REG 0x05 |
#define RANDOM_NUMBER_UPDATE_INTERVAL 1 /* us */ |
#define RF_CMD_FRAME_R ((0 << 7) | (0 << 6) | (1 << 5)) |
#define RF_CMD_FRAME_W ((0 << 7) | (1 << 6) | (1 << 5)) |
#define RF_CMD_REG_R ((1 << 7) | (0 << 6)) |
#define RF_CMD_REG_W ((1 << 7) | (1 << 6)) |
#define RF_CMD_SRAM_R ((0 << 7) | (0 << 6) | (0 << 5)) |
#define RF_CMD_SRAM_W ((0 << 7) | (1 << 6) | (0 << 5)) |
#define RF_CTRL_0_REG 0x16 |
#define RF_CTRL_1_REG 0x19 /* Only in AT86RF212 */ |
#define SFD_VALUE_REG 0x0b |
#define SHORT_ADDR_0_REG 0x20 |
#define SHORT_ADDR_1_REG 0x21 |
#define SLOTTED_OPERATION 0 |
#define TRAC_STATUS_CHANNEL_ACCESS_FAILURE 3 |
#define TRAC_STATUS_INVALID 7 |
#define TRAC_STATUS_NO_ACK 5 |
#define TRAC_STATUS_SUCCESS 0 |
#define TRAC_STATUS_SUCCESS_DATA_PENDING 1 |
#define TRAC_STATUS_SUCCESS_WAIT_FOR_ACK 2 |
#define TRX_CMD_FORCE_PLL_ON 4 |
#define TRX_CMD_FORCE_TRX_OFF 3 |
#define TRX_CMD_RX_AACK_ON 22 |
#define TRX_CMD_TRX_OFF 8 |
#define TRX_CMD_TX_ARET_ON 25 |
#define TRX_CMD_TX_START 2 |
#define TRX_CTRL_0_REG 0x03 |
#define TRX_CTRL_1_REG 0x04 |
#define TRX_CTRL_2_REG 0x0c |
#define TRX_OFF_AVDD_EN 6 |
#define TRX_STATE_REG 0x02 |
#define TRX_STATUS_BUSY_RX 1 |
#define TRX_STATUS_BUSY_RX_AACK 17 |
#define TRX_STATUS_BUSY_RX_AACK_NOCLK 30 |
#define TRX_STATUS_BUSY_TX 2 |
#define TRX_STATUS_BUSY_TX_ARET 18 |
#define TRX_STATUS_MASK 0x1f |
#define TRX_STATUS_P_ON 0 |
#define TRX_STATUS_PLL_ON 9 |
#define TRX_STATUS_REG 0x01 |
#define TRX_STATUS_RX_AACK_ON 22 |
#define TRX_STATUS_RX_AACK_ON_NOCLK 29 |
#define TRX_STATUS_RX_ON 6 |
#define TRX_STATUS_RX_ON_NOCLK 28 |
#define TRX_STATUS_SLEEP 15 |
#define TRX_STATUS_STATE_TRANSITION 31 |
#define TRX_STATUS_TRX_OFF 8 |
#define TRX_STATUS_TX_ARET_ON 25 |
#define VERSION_NUM_REG 0x1d |
#define VREG_CTRL_REG 0x10 |
#define XAH_CTRL_0_REG 0x2c |
#define XAH_CTRL_1_REG 0x17 |
#define XOSC_CTRL_REG 0x12 |
Enumerator |
---|
PHY_STATUS_SUCCESS |
|
PHY_STATUS_CHANNEL_ACCESS_FAILURE |
|
PHY_STATUS_NO_ACK |
|
PHY_STATUS_ERROR |
|
void PHY_DataConf |
( |
uint8_t |
status | ) |
|
void PHY_DataReq |
( |
uint8_t * |
data | ) |
|
void PHY_EncryptReq |
( |
uint8_t * |
text, |
|
|
uint8_t * |
key |
|
) |
| |
uint16_t PHY_RandomReq |
( |
void |
| ) |
|
void PHY_SetBand |
( |
uint8_t |
band | ) |
|
void PHY_SetChannel |
( |
uint8_t |
channel | ) |
|
void PHY_SetIEEEAddr |
( |
uint8_t * |
ieee_addr | ) |
|
void PHY_SetModulation |
( |
uint8_t |
modulation | ) |
|
void PHY_SetPanId |
( |
uint16_t |
panId | ) |
|
void PHY_SetRxState |
( |
bool |
rx | ) |
|
void PHY_SetShortAddr |
( |
uint16_t |
addr | ) |
|
void PHY_TaskHandler |
( |
void |
| ) |
|