board_nucleo.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2017 Freie Universität Berlin
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 
21 #ifndef BOARD_NUCLEO_H
22 #define BOARD_NUCLEO_H
23 
24 #include "cpu.h"
25 #include "periph_conf.h"
26 
27 #ifdef __cplusplus
28 extern "C" {
29 #endif
30 
35 #if (defined(CPU_FAM_STM32F0) || defined(CPU_FAM_STM32L0)) && \
36  !defined(CPU_MODEL_STM32F042K6) && !defined(CPU_MODEL_STM32F031K6)
37 #define XTIMER_WIDTH (16)
38 #endif
39 
40 #if defined(CPU_FAM_STM32G0)
41 #define XTIMER_WIDTH (16)
42 #endif
43 
44 #if defined(CPU_FAM_STM32F1)
45 #define XTIMER_WIDTH (16)
46 #define XTIMER_BACKOFF (19)
47 #endif
48 
49 #if defined(CPU_FAM_STM32L1)
50 #define XTIMER_BACKOFF (11)
51 #endif
52 
53 #if defined(CPU_FAM_STM32F4) || defined(CPU_MODEL_STM32F303ZE)
54 #define XTIMER_BACKOFF (8)
55 #endif
56 
61 void board_common_nucleo_init(void);
62 
66 void board_init(void);
67 
68 #ifdef __cplusplus
69 }
70 #endif
71 
72 #endif /* BOARD_NUCLEO_H */
73 
board_init
void board_init(void)
Initialize board specific hardware, including clock, LEDs and std-IO.
board_common_nucleo_init
void board_common_nucleo_init(void)
Common board initialization routine for Nucleo boards.