hal
Hardware Abstraction Layer
stm32f4_hal.h
Go to the documentation of this file.
1 
8 #ifndef _STM32F4_HAL_H
9 #define _STM32F4_HAL_H
10 
11 #ifdef DESKTOP_BUILD
12 #define CRITICAL_SECTION_ENTER()
13 #define CRITICAL_SECTION_EXIT()
14 #else
15 #define CRITICAL_SECTION_ENTER() __disable_irq()
16 #define CRITICAL_SECTION_EXIT() __enable_irq()
17 #endif
18 
19 #define ENUM_IN_RANGE(x, lowerbound_inclusive, upperbound_exclusive) \
20 ((lowerbound_inclusive) <= (x) && (x) < (upperbound_exclusive))
21 
22 #define AF7_MASK 7U
23 #define AF4_MASK 4U
24 #define AF_SHIFT_WIDTH 4U
25 
26 #define BIT_0 (1U << 0)
27 #define BIT_1 (1U << 1)
28 #define BIT_2 (1U << 2)
29 #define BIT_3 (1U << 3)
30 #define BIT_4 (1U << 4)
31 #define BIT_5 (1U << 5)
32 #define BIT_6 (1U << 6)
33 #define BIT_7 (1U << 7)
34 #define BIT_8 (1U << 8)
35 #define BIT_9 (1U << 9)
36 #define BIT_10 (1U << 10)
37 #define BIT_11 (1U << 11)
38 #define BIT_12 (1U << 12)
39 #define BIT_13 (1U << 13)
40 #define BIT_14 (1U << 14)
41 #define BIT_15 (1U << 15)
42 #define BIT_16 (1U << 16)
43 #define BIT_17 (1U << 17)
44 #define BIT_18 (1U << 18)
45 #define BIT_19 (1U << 19)
46 #define BIT_20 (1U << 20)
47 #define BIT_21 (1U << 21)
48 #define BIT_22 (1U << 22)
49 #define BIT_23 (1U << 23)
50 #define BIT_24 (1U << 24)
51 #define BIT_25 (1U << 25)
52 #define BIT_26 (1U << 26)
53 #define BIT_27 (1U << 27)
54 #define BIT_28 (1U << 28)
55 #define BIT_29 (1U << 29)
56 #define BIT_30 (1U << 30)
57 #define BIT_31 (1U << 31)
58 
59 #define PIN_0 (0)
60 #define PIN_1 (1)
61 #define PIN_2 (2)
62 #define PIN_3 (3)
63 #define PIN_4 (4)
64 #define PIN_5 (5)
65 #define PIN_6 (6)
66 #define PIN_7 (7)
67 #define PIN_8 (8)
68 #define PIN_9 (9)
69 #define PIN_10 (10)
70 #define PIN_11 (11)
71 #define PIN_12 (12)
72 #define PIN_13 (13)
73 #define PIN_14 (14)
74 #define PIN_15 (15)
75 
76 #endif /* _STM32F4_HAL_H */