periph_cpu_esp32.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2022 Gunar Schorcht
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 
19 #ifndef PERIPH_CPU_ESP32_H
20 #define PERIPH_CPU_ESP32_H
21 
22 #include "sdkconfig.h"
23 
24 #ifdef __cplusplus
25 extern "C" {
26 #endif
27 
29 #define CLOCK_CORECLOCK (1000000UL * CONFIG_ESP32_DEFAULT_CPU_FREQ_MHZ)
30 
34 #define CPU_CYCLES_PER_LOOP (6)
35 
40 #define GPIO0 (GPIO_PIN(PORT_GPIO, 0))
41 #define GPIO1 (GPIO_PIN(PORT_GPIO, 1))
42 #define GPIO2 (GPIO_PIN(PORT_GPIO, 2))
43 #define GPIO3 (GPIO_PIN(PORT_GPIO, 3))
44 #define GPIO4 (GPIO_PIN(PORT_GPIO, 4))
45 #define GPIO5 (GPIO_PIN(PORT_GPIO, 5))
46 #define GPIO6 (GPIO_PIN(PORT_GPIO, 6))
47 #define GPIO7 (GPIO_PIN(PORT_GPIO, 7))
48 #define GPIO8 (GPIO_PIN(PORT_GPIO, 8))
49 #define GPIO9 (GPIO_PIN(PORT_GPIO, 9))
50 #define GPIO10 (GPIO_PIN(PORT_GPIO, 10))
51 #define GPIO11 (GPIO_PIN(PORT_GPIO, 11))
52 #define GPIO12 (GPIO_PIN(PORT_GPIO, 12))
53 #define GPIO13 (GPIO_PIN(PORT_GPIO, 13))
54 #define GPIO14 (GPIO_PIN(PORT_GPIO, 14))
55 #define GPIO15 (GPIO_PIN(PORT_GPIO, 15))
56 #define GPIO16 (GPIO_PIN(PORT_GPIO, 16))
57 #define GPIO17 (GPIO_PIN(PORT_GPIO, 17))
58 #define GPIO18 (GPIO_PIN(PORT_GPIO, 18))
59 #define GPIO19 (GPIO_PIN(PORT_GPIO, 19))
60 /* GPIO 20 is not available */
61 #define GPIO21 (GPIO_PIN(PORT_GPIO, 21))
62 #define GPIO22 (GPIO_PIN(PORT_GPIO, 22))
63 #define GPIO23 (GPIO_PIN(PORT_GPIO, 23))
64 /* GPIO 24 is not available */
65 #define GPIO25 (GPIO_PIN(PORT_GPIO, 25))
66 #define GPIO26 (GPIO_PIN(PORT_GPIO, 26))
67 #define GPIO27 (GPIO_PIN(PORT_GPIO, 27))
68 /* GPIOs 28 ...32 are not available */
69 #define GPIO32 (GPIO_PIN(PORT_GPIO, 32))
70 #define GPIO33 (GPIO_PIN(PORT_GPIO, 33))
71 /* GPIOs 34 ... 39 can only be used as inputs and do not have pullups/pulldowns */
72 #define GPIO34 (GPIO_PIN(PORT_GPIO, 34))
73 #define GPIO35 (GPIO_PIN(PORT_GPIO, 35))
74 #define GPIO36 (GPIO_PIN(PORT_GPIO, 36))
75 #define GPIO37 (GPIO_PIN(PORT_GPIO, 37))
76 #define GPIO38 (GPIO_PIN(PORT_GPIO, 38))
77 #define GPIO39 (GPIO_PIN(PORT_GPIO, 39))
218 #ifdef MODULE_ESP_HW_COUNTER
220 #define TIMER_NUMOF (2)
221 #define TIMER_CHANNEL_NUMOF (1)
222 #endif
248 #ifdef __cplusplus
249 }
250 #endif
251 
252 #endif /* PERIPH_CPU_ESP32_H */
RIOT-OS modification of the bootloader SDK configuration.