Loading...
Searching...
No Matches
arduino_board_pins.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2023 Otto-von-Guericke-Universität Magdeburg
3 * SPDX-License-Identifier: LGPL-2.1-only
4 */
5
6#pragma once
7
21
22#include "arduino_iomap.h"
23#include "periph/gpio.h"
24
25#ifdef __cplusplus
26extern "C" {
27#endif
28
29#ifdef DOXYGEN
35#define ARDUINO_LED /* board specific number */
36
42#define ARDUINO_PIN_LAST /* board specific number */
43#endif /* DOXYGEN */
44
45#if !defined(ARDUINO_LED) && !defined(DOXYGEN)
46#define ARDUINO_LED (13)
47#endif
48
49#ifndef ARDUINO_PIN_LAST
50# error "ARDUINO_PIN_LAST undefined"
51#endif
52
72static const gpio_t arduino_pinmap[] = {
73#ifndef DOXYGEN
74#ifdef ARDUINO_PIN_0
75 ARDUINO_PIN_0,
76#elif ARDUINO_PIN_LAST > 0
78#endif
79#ifdef ARDUINO_PIN_1
80 ARDUINO_PIN_1,
81#elif ARDUINO_PIN_LAST > 1
83#endif
84#ifdef ARDUINO_PIN_2
85 ARDUINO_PIN_2,
86#elif ARDUINO_PIN_LAST > 2
88#endif
89#ifdef ARDUINO_PIN_3
90 ARDUINO_PIN_3,
91#elif ARDUINO_PIN_LAST > 3
93#endif
94#ifdef ARDUINO_PIN_4
95 ARDUINO_PIN_4,
96#elif ARDUINO_PIN_LAST > 4
98#endif
99#ifdef ARDUINO_PIN_5
100 ARDUINO_PIN_5,
101#elif ARDUINO_PIN_LAST > 5
103#endif
104#ifdef ARDUINO_PIN_6
105 ARDUINO_PIN_6,
106#elif ARDUINO_PIN_LAST > 6
108#endif
109#ifdef ARDUINO_PIN_7
110 ARDUINO_PIN_7,
111#elif ARDUINO_PIN_LAST > 7
113#endif
114#ifdef ARDUINO_PIN_8
115 ARDUINO_PIN_8,
116#elif ARDUINO_PIN_LAST > 8
118#endif
119#ifdef ARDUINO_PIN_9
120 ARDUINO_PIN_9,
121#elif ARDUINO_PIN_LAST > 9
123#endif
124#ifdef ARDUINO_PIN_10
125 ARDUINO_PIN_10,
126#elif ARDUINO_PIN_LAST > 10
128#endif
129#ifdef ARDUINO_PIN_11
130 ARDUINO_PIN_11,
131#elif ARDUINO_PIN_LAST > 11
133#endif
134#ifdef ARDUINO_PIN_12
135 ARDUINO_PIN_12,
136#elif ARDUINO_PIN_LAST > 12
138#endif
139#ifdef ARDUINO_PIN_13
140 ARDUINO_PIN_13,
141#elif ARDUINO_PIN_LAST > 13
143#endif
144#ifdef ARDUINO_PIN_14
145 ARDUINO_PIN_14,
146#elif ARDUINO_PIN_LAST > 14
148#endif
149#ifdef ARDUINO_PIN_15
150 ARDUINO_PIN_15,
151#elif ARDUINO_PIN_LAST > 15
153#endif
154#ifdef ARDUINO_PIN_16
155 ARDUINO_PIN_16,
156#elif ARDUINO_PIN_LAST > 16
158#endif
159#ifdef ARDUINO_PIN_17
160 ARDUINO_PIN_17,
161#elif ARDUINO_PIN_LAST > 17
163#endif
164#ifdef ARDUINO_PIN_18
165 ARDUINO_PIN_18,
166#elif ARDUINO_PIN_LAST > 18
168#endif
169#ifdef ARDUINO_PIN_19
170 ARDUINO_PIN_19,
171#elif ARDUINO_PIN_LAST > 19
173#endif
174#ifdef ARDUINO_PIN_20
175 ARDUINO_PIN_20,
176#elif ARDUINO_PIN_LAST > 20
178#endif
179#ifdef ARDUINO_PIN_21
180 ARDUINO_PIN_21,
181#elif ARDUINO_PIN_LAST > 21
183#endif
184#ifdef ARDUINO_PIN_22
186#elif ARDUINO_PIN_LAST > 22
188#endif
189#ifdef ARDUINO_PIN_23
191#elif ARDUINO_PIN_LAST > 23
193#endif
194#ifdef ARDUINO_PIN_24
196#elif ARDUINO_PIN_LAST > 24
198#endif
199#ifdef ARDUINO_PIN_25
200 ARDUINO_PIN_25,
201#elif ARDUINO_PIN_LAST > 25
203#endif
204#ifdef ARDUINO_PIN_26
205 ARDUINO_PIN_26,
206#elif ARDUINO_PIN_LAST > 26
208#endif
209#ifdef ARDUINO_PIN_27
210 ARDUINO_PIN_27,
211#elif ARDUINO_PIN_LAST > 27
213#endif
214#ifdef ARDUINO_PIN_28
215 ARDUINO_PIN_28,
216#elif ARDUINO_PIN_LAST > 28
218#endif
219#ifdef ARDUINO_PIN_29
220 ARDUINO_PIN_29,
221#elif ARDUINO_PIN_LAST > 29
223#endif
224#ifdef ARDUINO_PIN_30
225 ARDUINO_PIN_30,
226#elif ARDUINO_PIN_LAST > 30
228#endif
229#ifdef ARDUINO_PIN_31
230 ARDUINO_PIN_31,
231#elif ARDUINO_PIN_LAST > 31
233#endif
234#ifdef ARDUINO_PIN_32
235 ARDUINO_PIN_32,
236#elif ARDUINO_PIN_LAST > 32
238#endif
239#ifdef ARDUINO_PIN_33
240 ARDUINO_PIN_33,
241#elif ARDUINO_PIN_LAST > 33
243#endif
244#ifdef ARDUINO_PIN_34
245 ARDUINO_PIN_34,
246#elif ARDUINO_PIN_LAST > 34
248#endif
249#ifdef ARDUINO_PIN_35
250 ARDUINO_PIN_35,
251#elif ARDUINO_PIN_LAST > 35
253#endif
254#ifdef ARDUINO_PIN_36
255 ARDUINO_PIN_36,
256#elif ARDUINO_PIN_LAST > 36
258#endif
259#ifdef ARDUINO_PIN_37
260 ARDUINO_PIN_37,
261#elif ARDUINO_PIN_LAST > 37
263#endif
264#ifdef ARDUINO_PIN_38
265 ARDUINO_PIN_38,
266#elif ARDUINO_PIN_LAST > 38
268#endif
269#ifdef ARDUINO_PIN_39
270 ARDUINO_PIN_39,
271#elif ARDUINO_PIN_LAST > 39
273#endif
274#ifdef ARDUINO_PIN_40
275 ARDUINO_PIN_40,
276#elif ARDUINO_PIN_LAST > 40
278#endif
279#ifdef ARDUINO_PIN_41
280 ARDUINO_PIN_41,
281#elif ARDUINO_PIN_LAST > 41
283#endif
284#ifdef ARDUINO_PIN_42
285 ARDUINO_PIN_42,
286#elif ARDUINO_PIN_LAST > 42
288#endif
289#ifdef ARDUINO_PIN_43
290 ARDUINO_PIN_43,
291#elif ARDUINO_PIN_LAST > 43
293#endif
294#ifdef ARDUINO_PIN_44
295 ARDUINO_PIN_44,
296#elif ARDUINO_PIN_LAST > 44
298#endif
299#ifdef ARDUINO_PIN_45
300 ARDUINO_PIN_45,
301#elif ARDUINO_PIN_LAST > 45
303#endif
304#ifdef ARDUINO_PIN_46
305 ARDUINO_PIN_46,
306#elif ARDUINO_PIN_LAST > 46
308#endif
309#ifdef ARDUINO_PIN_47
310 ARDUINO_PIN_47,
311#elif ARDUINO_PIN_LAST > 47
313#endif
314#ifdef ARDUINO_PIN_48
315 ARDUINO_PIN_48,
316#elif ARDUINO_PIN_LAST > 48
318#endif
319#ifdef ARDUINO_PIN_49
320 ARDUINO_PIN_49,
321#elif ARDUINO_PIN_LAST > 49
323#endif
324#ifdef ARDUINO_PIN_50
325 ARDUINO_PIN_50,
326#elif ARDUINO_PIN_LAST > 50
328#endif
329#ifdef ARDUINO_PIN_51
330 ARDUINO_PIN_51,
331#elif ARDUINO_PIN_LAST > 51
333#endif
334#ifdef ARDUINO_PIN_52
335 ARDUINO_PIN_52,
336#elif ARDUINO_PIN_LAST > 52
338#endif
339#ifdef ARDUINO_PIN_53
340 ARDUINO_PIN_53,
341#elif ARDUINO_PIN_LAST > 53
343#endif
344#ifdef ARDUINO_PIN_54
345 ARDUINO_PIN_54,
346#elif ARDUINO_PIN_LAST > 54
348#endif
349#ifdef ARDUINO_PIN_55
350 ARDUINO_PIN_55,
351#elif ARDUINO_PIN_LAST > 55
353#endif
354#ifdef ARDUINO_PIN_56
355 ARDUINO_PIN_56,
356#elif ARDUINO_PIN_LAST > 56
358#endif
359#ifdef ARDUINO_PIN_57
360 ARDUINO_PIN_57,
361#elif ARDUINO_PIN_LAST > 57
363#endif
364#ifdef ARDUINO_PIN_58
365 ARDUINO_PIN_58,
366#elif ARDUINO_PIN_LAST > 58
368#endif
369#ifdef ARDUINO_PIN_59
370 ARDUINO_PIN_59,
371#elif ARDUINO_PIN_LAST > 59
373#endif
374#ifdef ARDUINO_PIN_60
375 ARDUINO_PIN_60,
376#elif ARDUINO_PIN_LAST > 60
378#endif
379#ifdef ARDUINO_PIN_61
380 ARDUINO_PIN_61,
381#elif ARDUINO_PIN_LAST > 61
383#endif
384#ifdef ARDUINO_PIN_62
385 ARDUINO_PIN_62,
386#elif ARDUINO_PIN_LAST > 62
388#endif
389#ifdef ARDUINO_PIN_63
390 ARDUINO_PIN_63,
391#elif ARDUINO_PIN_LAST > 63
393#endif
394#ifdef ARDUINO_PIN_64
395 ARDUINO_PIN_64,
396#elif ARDUINO_PIN_LAST > 64
398#endif
399#ifdef ARDUINO_PIN_65
400 ARDUINO_PIN_65,
401#elif ARDUINO_PIN_LAST > 65
403#endif
404#ifdef ARDUINO_PIN_66
405 ARDUINO_PIN_66,
406#elif ARDUINO_PIN_LAST > 66
408#endif
409#ifdef ARDUINO_PIN_67
410 ARDUINO_PIN_67,
411#elif ARDUINO_PIN_LAST > 67
413#endif
414#ifdef ARDUINO_PIN_68
415 ARDUINO_PIN_68,
416#elif ARDUINO_PIN_LAST > 68
418#endif
419#ifdef ARDUINO_PIN_69
420 ARDUINO_PIN_69,
421#elif ARDUINO_PIN_LAST > 69
423#endif
424#endif /* DOXYGEN */
425};
426
427#ifdef __cplusplus
428}
429#endif
430
#define ARDUINO_PIN_23
Arduino pin 23 (A6)
#define ARDUINO_PIN_24
Arduino pin 24 (A7)
#define ARDUINO_PIN_22
Arduino pin 22 (A5 / SCL)
static const gpio_t arduino_pinmap[]
Look-up table for the Arduino's digital pins:
#define GPIO_UNDEF
Definition of a fitting UNDEF value.
Low-level GPIO peripheral driver interface definitions.