Contiki 3.x
board.h File Reference

Header file with definitions related to the I/O connections on the TI SmartRF06EB. More...

#include "dev/gpio.h"
#include "dev/nvic.h"

Go to the source code of this file.

Macros

SmartRF LED configuration

LEDs on the SmartRF06 (EB and BB) are connected as follows:

  • LED1 (Red) -> PC0
  • LED2 (Yellow) -> PC1
  • LED3 (Green) -> PC2
  • LED4 (Orange) -> PC3

LED1 shares the same pin with the USB pullup

#define LEDS_YELLOW   2
 LED2 (Yellow) -> PC1.
 
#define LEDS_GREEN   4
 LED3 (Green) -> PC2.
 
#define LEDS_ORANGE   8
 LED4 (Orange) -> PC3.
 
#define LEDS_CONF_ALL   15
 
#define LEDS_RED   1
 LED1 (Red) -> PC0.
 
#define PLATFORM_HAS_LEDS   1
 
USB configuration

The USB pullup is driven by PC0 and is shared with LED1

#define USB_PULLUP_PORT   GPIO_C_NUM
 
#define USB_PULLUP_PIN   0
 
UART configuration

On the SmartRF06EB, the UART (XDS back channel) is connected to the following ports/pins

  • RX: PA0
  • TX: PA1
  • CTS: PB0 (Can only be used with UART1)
  • RTS: PD3 (Can only be used with UART1)

We configure the port to use UART0. To use UART1, replace UART0_* with UART1_* below.

#define UART0_RX_PORT   GPIO_A_NUM
 
#define UART0_RX_PIN   0
 
#define UART0_TX_PORT   GPIO_A_NUM
 
#define UART0_TX_PIN   1
 
#define UART1_CTS_PORT   GPIO_B_NUM
 
#define UART1_CTS_PIN   0
 
#define UART1_RTS_PORT   GPIO_D_NUM
 
#define UART1_RTS_PIN   3
 
SmartRF Button configuration

Buttons on the SmartRF06 are connected as follows:

  • BUTTON_SELECT -> PA3
  • BUTTON_LEFT -> PC4
  • BUTTON_RIGHT -> PC5
  • BUTTON_UP -> PC6
  • BUTTON_DOWN -> PC7
#define BUTTON_SELECT_PORT   GPIO_A_NUM
 BUTTON_SELECT -> PA3.
 
#define BUTTON_SELECT_PIN   3
 
#define BUTTON_SELECT_VECTOR   NVIC_INT_GPIO_PORT_A
 
#define BUTTON_LEFT_PORT   GPIO_C_NUM
 BUTTON_LEFT -> PC4.
 
#define BUTTON_LEFT_PIN   4
 
#define BUTTON_LEFT_VECTOR   NVIC_INT_GPIO_PORT_C
 
#define BUTTON_RIGHT_PORT   GPIO_C_NUM
 BUTTON_RIGHT -> PC5.
 
#define BUTTON_RIGHT_PIN   5
 
#define BUTTON_RIGHT_VECTOR   NVIC_INT_GPIO_PORT_C
 
#define BUTTON_UP_PORT   GPIO_C_NUM
 BUTTON_UP -> PC6.
 
#define BUTTON_UP_PIN   6
 
#define BUTTON_UP_VECTOR   NVIC_INT_GPIO_PORT_C
 
#define BUTTON_DOWN_PORT   GPIO_C_NUM
 BUTTON_DOWN -> PC7.
 
#define BUTTON_DOWN_PIN   7
 
#define BUTTON_DOWN_VECTOR   NVIC_INT_GPIO_PORT_C
 
#define PLATFORM_HAS_BUTTON   1
 
ADC configuration

These values configure which CC2538 pins and ADC channels to use for the ADC inputs.

ADC inputs can only be on port A.

#define ADC_ALS_PWR_PORT   GPIO_A_NUM
 ALS power GPIO control port.
 
#define ADC_ALS_PWR_PIN   7
 ALS power GPIO control pin.
 
#define ADC_ALS_OUT_PIN   6
 ALS output ADC input pin on port A.
 
SPI configuration

These values configure which CC2538 pins to use for the SPI lines.

#define SPI_CLK_PORT   GPIO_A_NUM
 
#define SPI_CLK_PIN   2
 
#define SPI_MOSI_PORT   GPIO_A_NUM
 
#define SPI_MOSI_PIN   4
 
#define SPI_MISO_PORT   GPIO_A_NUM
 
#define SPI_MISO_PIN   5
 
Device string used on startup
#define BOARD_STRING   "TI SmartRF06 + cc2538EM"
 

Detailed Description

Header file with definitions related to the I/O connections on the TI SmartRF06EB.

Note
Do not include this file directly. It gets included by contiki-conf after all relevant directives have been set.

Definition in file board.h.