board.h File Reference

Board specific definitions for the Atmel SAM R21 Xplained Pro board. More...

Detailed Description

Board specific definitions for the Atmel SAM R21 Xplained Pro board.

Author
Thomas Eichinger thoma.nosp@m.s.ei.nosp@m.ching.nosp@m.er@f.nosp@m.u-ber.nosp@m.lin..nosp@m.de
Sebastian Meiling s@mln.nosp@m.g.ne.nosp@m.t

Definition in file board.h.

#include "cpu.h"
#include "periph_conf.h"
#include "periph_cpu.h"
#include "edbg_eui.h"
+ Include dependency graph for board.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Enumerations

enum  { RFCTL_ANTENNA_BOARD, RFCTL_ANTENNA_EXT }
 Antenna configuration values.
 

Functions

void board_init (void)
 Initialize board specific hardware, including clock, LEDs and std-IO.
 
void board_antenna_config (uint8_t antenna)
 Set antenna switch.
 

xtimer configuration

#define XTIMER_DEV   TIMER_DEV(1)
 
#define XTIMER_CHAN   (0)
 

ztimer configuration

#define CONFIG_ZTIMER_USEC_TYPE   ZTIMER_TYPE_PERIPH_TIMER
 
#define CONFIG_ZTIMER_USEC_DEV   TIMER_DEV(1)
 
#define CONFIG_ZTIMER_USEC_MIN   (10)
 

AT86RF233 configuration

{spi bus, spi speed, cs pin, int pin, reset pin, sleep pin}

#define AT86RF2XX_PARAM_CS   GPIO_PIN(PB, 31)
 
#define AT86RF2XX_PARAM_INT   GPIO_PIN(PB, 0)
 
#define AT86RF2XX_PARAM_SLEEP   GPIO_PIN(PA, 20)
 
#define AT86RF2XX_PARAM_RESET   GPIO_PIN(PB, 15)
 
static int _edbg_get_eui64 (const void *arg, eui64_t *addr)
 EDBG provides a EUI-64, the same that is printed on the board.
 

EUI sources on the board

     EUI-64 inside EDBG for the internal radio
#define EUI64_PROVIDER_FUNC   _edbg_get_eui64
 
#define EUI64_PROVIDER_TYPE   NETDEV_AT86RF2XX
 
#define EUI64_PROVIDER_INDEX   0
 

OpenWSN timing constants

#define PORT_maxTxDataPrepare   (900/PORT_US_PER_TICK)
 
#define PORT_maxRxAckPrepare   (500/PORT_US_PER_TICK)
 
#define PORT_maxRxDataPrepare   (550/PORT_US_PER_TICK)
 
#define PORT_maxTxAckPrepare   (750/PORT_US_PER_TICK)
 
#define PORT_delayTx   (650/PORT_US_PER_TICK)
 

LED pin definitions and handlers

#define LED0_PIN   GPIO_PIN(0, 19)
 
#define LED_PORT   PORT->Group[0]
 
#define LED0_MASK   (1 << 19)
 
#define LED0_ON   (LED_PORT.OUTCLR.reg = LED0_MASK)
 
#define LED0_OFF   (LED_PORT.OUTSET.reg = LED0_MASK)
 
#define LED0_TOGGLE   (LED_PORT.OUTTGL.reg = LED0_MASK)
 

SW0 (Button) pin definitions

#define BTN0_PORT   PORT->Group[0]
 
#define BTN0_PIN   GPIO_PIN(0, 28)
 
#define BTN0_MODE   GPIO_IN_PU
 

Antenna configuration pin interface

#define RFCTL1_PIN   GPIO_PIN(0, 9)
 
#define RFCTL2_PIN   GPIO_PIN(0, 12)
 

Default antenna configuration

#define RFCTL_ANTENNA_DEFAULT   RFCTL_ANTENNA_BOARD