Loading...
Searching...
No Matches
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
9#pragma once
10
20
21#include "sdkconfig.h"
22
23#ifdef __cplusplus
24extern "C" {
25#endif
26
28#define CLOCK_CORECLOCK (1000000UL * CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ)
29
33#define CPU_CYCLES_PER_LOOP (6)
34
39#define GPIO0 (GPIO_PIN(PORT_GPIO, 0))
40#define GPIO1 (GPIO_PIN(PORT_GPIO, 1))
41#define GPIO2 (GPIO_PIN(PORT_GPIO, 2))
42#define GPIO3 (GPIO_PIN(PORT_GPIO, 3))
43#define GPIO4 (GPIO_PIN(PORT_GPIO, 4))
44#define GPIO5 (GPIO_PIN(PORT_GPIO, 5))
45#define GPIO6 (GPIO_PIN(PORT_GPIO, 6))
46#define GPIO7 (GPIO_PIN(PORT_GPIO, 7))
47#define GPIO8 (GPIO_PIN(PORT_GPIO, 8))
48#define GPIO9 (GPIO_PIN(PORT_GPIO, 9))
49#define GPIO10 (GPIO_PIN(PORT_GPIO, 10))
50#define GPIO11 (GPIO_PIN(PORT_GPIO, 11))
51#define GPIO12 (GPIO_PIN(PORT_GPIO, 12))
52#define GPIO13 (GPIO_PIN(PORT_GPIO, 13))
53#define GPIO14 (GPIO_PIN(PORT_GPIO, 14))
54#define GPIO15 (GPIO_PIN(PORT_GPIO, 15))
55#define GPIO16 (GPIO_PIN(PORT_GPIO, 16))
56#define GPIO17 (GPIO_PIN(PORT_GPIO, 17))
57#define GPIO18 (GPIO_PIN(PORT_GPIO, 18))
58#define GPIO19 (GPIO_PIN(PORT_GPIO, 19))
59/* GPIO 20 is not available */
60#define GPIO21 (GPIO_PIN(PORT_GPIO, 21))
61#define GPIO22 (GPIO_PIN(PORT_GPIO, 22))
62#define GPIO23 (GPIO_PIN(PORT_GPIO, 23))
63/* GPIO 24 is not available */
64#define GPIO25 (GPIO_PIN(PORT_GPIO, 25))
65#define GPIO26 (GPIO_PIN(PORT_GPIO, 26))
66#define GPIO27 (GPIO_PIN(PORT_GPIO, 27))
67/* GPIOs 28 ...32 are not available */
68#define GPIO32 (GPIO_PIN(PORT_GPIO, 32))
69#define GPIO33 (GPIO_PIN(PORT_GPIO, 33))
70/* GPIOs 34 ... 39 can only be used as inputs and do not have pullups/pulldowns */
71#define GPIO34 (GPIO_PIN(PORT_GPIO, 34))
72#define GPIO35 (GPIO_PIN(PORT_GPIO, 35))
73#define GPIO36 (GPIO_PIN(PORT_GPIO, 36))
74#define GPIO37 (GPIO_PIN(PORT_GPIO, 37))
75#define GPIO38 (GPIO_PIN(PORT_GPIO, 38))
76#define GPIO39 (GPIO_PIN(PORT_GPIO, 39))
78
100
106
126
133
137
197
215
216#ifdef MODULE_ESP_HW_COUNTER
218#define TIMER_NUMOF (2)
219#define TIMER_CHANNEL_NUMOF (1)
220#endif
222
245
246#ifdef __cplusplus
247}
248#endif
249
SDK configuration used by ESP-IDF for all ESP32x SoC variants (families)