board.h File Reference

Board specific definitions for the Waspmote PRO v1.2 board. More...

Detailed Description

Board specific definitions for the Waspmote PRO v1.2 board.

Author
Hinnerk van Bruinehsen h.v.b.nosp@m.ruin.nosp@m.ehsen.nosp@m.@fu-.nosp@m.berli.nosp@m.n.de
Francisco Acosta franc.nosp@m.isco.nosp@m..acos.nosp@m.ta@i.nosp@m.nria..nosp@m.fr

Definition in file board.h.

#include "cpu.h"
#include "waspmote_pinmap.h"
+ Include dependency graph for board.h:

Go to the source code of this file.

Functions

void board_init (void)
 Initialize board specific hardware, including clock, LEDs and std-IO.
 
#define STDIO_UART_BAUDRATE   (9600U)
 As the CPU is too slow to handle 115200 baud, we set the default baudrate to 9600 for this board.
 

LED pin definitions

Use the UART 0 for STDIO on this board, if the XBee socket is not being used

#define LED0_PORT   PORTD
 
#define LED1_PORT   PORTC
 
#define LED0_PIN   (1 << 6)
 
#define LED1_PIN   (1 << 1)
 

Macros for controlling the on-board LEDs.

#define LED0_ENABLE_PORT   DDRD |= (1 << DDD6)
 
#define LED0_ON   LED0_PORT |= LED0_PIN
 
#define LED0_OFF   LED0_PORT &= ~LED0_PIN
 
#define LED0_TOGGLE   LED0_PORT ^= LED0_PIN;
 
#define LED1_ENABLE_PORT   DDRC |= (1 << DDC1)
 
#define LED1_ON   LED1_PORT |= LED1_PIN
 
#define LED1_OFF   LED1_PORT &= ~LED1_PIN
 
#define LED1_TOGGLE   LED1_PORT ^= LED1_PIN;
 
#define LED_GREEN_ON   LED1_ON
 
#define LED_GREEN_OFF   LED1_OFF
 
#define LED_GREEN_TOGGLE   LED1_TOGGLE
 
#define LED_RED_ON   LED0_ON
 
#define LED_RED_OFF   LED0_OFF
 
#define LED_RED_TOGGLE   LED0_TOGGLE
 

Usage of LED to turn on when a kernel panic occurs.

#define LED_PANIC   LED_RED_ON
 

Macros for controlling the on-board MUXes.

#define MUX_PW_PORT   PORTD
 
#define MUX0_PORT   PORTB
 
#define MUX1_PORT   PORTB
 
#define MUX_USB_XBEE_PORT   PORTD
 
#define MUX_PW_PIN   (1 << 7)
 
#define MUX0_PIN   (1 << 6)
 
#define MUX1_PIN   (1 << 7)
 
#define MUX_USB_XBEE_PIN   (1 << 5)
 
#define MUX_PW_ENABLE_PORT   DDRD |= (1 << DDD7);
 
#define MUX_PW_ON   MUX_PW_PORT |= MUX_PW_PIN
 
#define MUX_PW_OFF   MUX_PW_PORT &= ~MUX_PW_PIN
 
#define MUX0_ENABLE_PORT   DDRB |= (1 << DDB6)
 
#define MUX0_ON   MUX0_PORT |= MUX0_PIN
 
#define MUX0_OFF   MUX0_PORT &= ~MUX0_PIN
 
#define MUX1_ENABLE_PORT   DDRB |= (1 << DDB7)
 
#define MUX1_ON   MUX1_PORT |= MUX1_PIN
 
#define MUX1_OFF   MUX1_PORT &= ~MUX1_PIN
 
#define MUX_USB_XBEE_ENABLE_PORT   DDRD |= (1 << DDD5)
 
#define MUX_USB_XBEE_ON   MUX_USB_XBEE_PORT |= MUX_USB_XBEE_PIN
 
#define MUX_USB_XBEE_OFF   MUX_USB_XBEE_PORT &= ~MUX_USB_XBEE_PIN
 
#define SET_MUX_GPS
 
#define SET_MUX_SOCKET1
 
#define SET_MUX_AUX1_MODULE
 
#define SET_MUX_AUX2_MODULE
 
#define SET_MUX_USB_MODULE
 
#define SET_MUX_SOCKET0
 

CPU clock scale for waspmote-pro

#define CPU_ATMEGA_CLK_SCALE_INIT   CPU_ATMEGA_CLK_SCALE_DIV1
 

xtimer configuration values

Warning
This configuration is not actually compatible with xtimer. Sadly, no compatible clock frequency can be generated with the given core frequency
#define XTIMER_WIDTH   (16)
 
#define XTIMER_HZ   (230400LU)
 
#define XTIMER_BACKOFF   (80)
 
#define XTIMER_ISR_BACKOFF   (120)
 

ztimer configuration values

#define CONFIG_ZTIMER_USEC_TYPE   ZTIMER_TYPE_PERIPH_TIMER
 
#define CONFIG_ZTIMER_USEC_DEV   (TIMER_DEV(0))
 
#define CONFIG_ZTIMER_USEC_FREQ   (230400LU)
 
#define CONFIG_ZTIMER_USEC_WIDTH   (16)
 

Macro Definition Documentation

◆ SET_MUX_AUX1_MODULE

#define SET_MUX_AUX1_MODULE
Value:
MUX_PW_ENABLE_PORT; MUX_PW_ON; \
MUX0_ENABLE_PORT; MUX1_ENABLE_PORT; \
MUX0_ON; MUX1_OFF

Definition at line 139 of file board.h.

◆ SET_MUX_AUX2_MODULE

#define SET_MUX_AUX2_MODULE
Value:
MUX_PW_ENABLE_PORT; MUX_PW_ON; \
MUX0_ENABLE_PORT; MUX1_ENABLE_PORT; \
MUX0_OFF; MUX1_OFF

Definition at line 142 of file board.h.

◆ SET_MUX_GPS

#define SET_MUX_GPS
Value:
MUX_PW_ENABLE_PORT; MUX_PW_ON; \
MUX0_ENABLE_PORT; MUX1_ENABLE_PORT; \
MUX0_OFF; MUX1_ON

Definition at line 133 of file board.h.

◆ SET_MUX_SOCKET0

#define SET_MUX_SOCKET0
Value:
MUX_PW_ENABLE_PORT; MUX_PW_ON; \
MUX_USB_XBEE_ENABLE_PORT; \
MUX_USB_XBEE_ON

Definition at line 148 of file board.h.

◆ SET_MUX_SOCKET1

#define SET_MUX_SOCKET1
Value:
MUX_PW_ENABLE_PORT; MUX_PW_ON; \
MUX0_ENABLE_PORT; MUX1_ENABLE_PORT; \
MUX0_ON; MUX1_ON

Definition at line 136 of file board.h.

◆ SET_MUX_USB_MODULE

#define SET_MUX_USB_MODULE
Value:
MUX_PW_ENABLE_PORT; MUX_PW_ON; \
MUX_USB_XBEE_ENABLE_PORT; \
MUX_USB_XBEE_OFF

Definition at line 145 of file board.h.