board.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2022 SSV Software Systems GmbH
3  *
4  * This file is subject to the terms and conditions of the GNU Lesser
5  * General Public License v2.1. See the file LICENSE in the top level
6  * directory for more details.
7  */
8 
9 #pragma once
10 
21 #include "cpu.h"
22 #include "periph_conf.h"
23 #include "periph_cpu.h"
24 #include "periph/gpio.h"
25 
26 #ifdef __cplusplus
27 extern "C" {
28 #endif
29 
35 #define PM_BLOCKER_INITIAL { 0, 0, 0 }
36 
41 #define CONFIG_ZTIMER_LPTIMER_DEV TIMER_DEV(1)
42 #define CONFIG_ZTIMER_LPTIMER_FREQ LFXO_FREQ
43 #define CONFIG_ZTIMER_LPTIMER_WIDTH 24
44 #define CONFIG_ZTIMER_LPTIMER_BLOCK_PM_MODE EFM32_PM_MODE_EM3
55 /* #define GPIO_INT_PM_BLOCKER PM_MODE_EM2 */
56 
62 #define VCOM_UART UART_DEV(0)
63 #define VCOM_EN_PIN GPIO_PIN(PB, 0)
64 
69 #define PB0_PIN GPIO_PIN(PB, 1)
70 #define PB1_PIN GPIO_PIN(PB, 3)
77 #define LED0_PIN GPIO_PIN(PB, 2)
78 #define LED1_PIN GPIO_PIN(PD, 3)
85 #define LED0_ON gpio_set(LED0_PIN)
86 #define LED0_OFF gpio_clear(LED0_PIN)
87 #define LED0_TOGGLE gpio_toggle(LED0_PIN)
88 #define LED1_ON gpio_set(LED1_PIN)
89 #define LED1_OFF gpio_clear(LED1_PIN)
90 #define LED1_TOGGLE gpio_toggle(LED1_PIN)
99 #define DISP_SPI SPI_DEV(0)
100 #define DISP_SCS_PIN GPIO_PIN(PC, 8)
101 #define DISP_EXTCOMIN_PIN GPIO_PIN(PC, 6)
102 #define DISP_ENABLE_PIN GPIO_PIN(PC, 9)
111 #define FLASH_SPI SPI_DEV(0)
112 #define FLASH_CS_PIN GPIO_PIN(PC, 4)
121 #define SI70XX_PARAM_I2C_DEV I2C_DEV(0)
122 #define SI7021_EN_PIN GPIO_PIN(PC, 9)
128 void board_init(void);
129 
130 #ifdef __cplusplus
131 }
132 #endif
133 
Peripheral MCU configuration for the Zigduino board.
Low-level GPIO peripheral driver interface definitions.
void board_init(void)
Initialize the board (GPIO, sensors, clocks).