Loading...
Searching...
No Matches
arduino_board_pins.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2023 Otto-von-Guericke-Universität Magdeburg
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
24
25#include "arduino_iomap.h"
26#include "periph/gpio.h"
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32#ifdef DOXYGEN
38#define ARDUINO_LED /* board specific number */
39
45#define ARDUINO_PIN_LAST /* board specific number */
46#endif /* DOXYGEN */
47
48#if !defined(ARDUINO_LED) && !defined(DOXYGEN)
49#define ARDUINO_LED (13)
50#endif
51
52#ifndef ARDUINO_PIN_LAST
53# error "ARDUINO_PIN_LAST undefined"
54#endif
55
75static const gpio_t arduino_pinmap[] = {
76#ifndef DOXYGEN
77#ifdef ARDUINO_PIN_0
78 ARDUINO_PIN_0,
79#elif ARDUINO_PIN_LAST > 0
81#endif
82#ifdef ARDUINO_PIN_1
83 ARDUINO_PIN_1,
84#elif ARDUINO_PIN_LAST > 1
86#endif
87#ifdef ARDUINO_PIN_2
88 ARDUINO_PIN_2,
89#elif ARDUINO_PIN_LAST > 2
91#endif
92#ifdef ARDUINO_PIN_3
93 ARDUINO_PIN_3,
94#elif ARDUINO_PIN_LAST > 3
96#endif
97#ifdef ARDUINO_PIN_4
98 ARDUINO_PIN_4,
99#elif ARDUINO_PIN_LAST > 4
101#endif
102#ifdef ARDUINO_PIN_5
103 ARDUINO_PIN_5,
104#elif ARDUINO_PIN_LAST > 5
106#endif
107#ifdef ARDUINO_PIN_6
108 ARDUINO_PIN_6,
109#elif ARDUINO_PIN_LAST > 6
111#endif
112#ifdef ARDUINO_PIN_7
113 ARDUINO_PIN_7,
114#elif ARDUINO_PIN_LAST > 7
116#endif
117#ifdef ARDUINO_PIN_8
118 ARDUINO_PIN_8,
119#elif ARDUINO_PIN_LAST > 8
121#endif
122#ifdef ARDUINO_PIN_9
123 ARDUINO_PIN_9,
124#elif ARDUINO_PIN_LAST > 9
126#endif
127#ifdef ARDUINO_PIN_10
128 ARDUINO_PIN_10,
129#elif ARDUINO_PIN_LAST > 10
131#endif
132#ifdef ARDUINO_PIN_11
133 ARDUINO_PIN_11,
134#elif ARDUINO_PIN_LAST > 11
136#endif
137#ifdef ARDUINO_PIN_12
138 ARDUINO_PIN_12,
139#elif ARDUINO_PIN_LAST > 12
141#endif
142#ifdef ARDUINO_PIN_13
143 ARDUINO_PIN_13,
144#elif ARDUINO_PIN_LAST > 13
146#endif
147#ifdef ARDUINO_PIN_14
148 ARDUINO_PIN_14,
149#elif ARDUINO_PIN_LAST > 14
151#endif
152#ifdef ARDUINO_PIN_15
153 ARDUINO_PIN_15,
154#elif ARDUINO_PIN_LAST > 15
156#endif
157#ifdef ARDUINO_PIN_16
158 ARDUINO_PIN_16,
159#elif ARDUINO_PIN_LAST > 16
161#endif
162#ifdef ARDUINO_PIN_17
163 ARDUINO_PIN_17,
164#elif ARDUINO_PIN_LAST > 17
166#endif
167#ifdef ARDUINO_PIN_18
168 ARDUINO_PIN_18,
169#elif ARDUINO_PIN_LAST > 18
171#endif
172#ifdef ARDUINO_PIN_19
173 ARDUINO_PIN_19,
174#elif ARDUINO_PIN_LAST > 19
176#endif
177#ifdef ARDUINO_PIN_20
178 ARDUINO_PIN_20,
179#elif ARDUINO_PIN_LAST > 20
181#endif
182#ifdef ARDUINO_PIN_21
183 ARDUINO_PIN_21,
184#elif ARDUINO_PIN_LAST > 21
186#endif
187#ifdef ARDUINO_PIN_22
188 ARDUINO_PIN_22,
189#elif ARDUINO_PIN_LAST > 22
191#endif
192#ifdef ARDUINO_PIN_23
193 ARDUINO_PIN_23,
194#elif ARDUINO_PIN_LAST > 23
196#endif
197#ifdef ARDUINO_PIN_24
198 ARDUINO_PIN_24,
199#elif ARDUINO_PIN_LAST > 24
201#endif
202#ifdef ARDUINO_PIN_25
203 ARDUINO_PIN_25,
204#elif ARDUINO_PIN_LAST > 25
206#endif
207#ifdef ARDUINO_PIN_26
208 ARDUINO_PIN_26,
209#elif ARDUINO_PIN_LAST > 26
211#endif
212#ifdef ARDUINO_PIN_27
213 ARDUINO_PIN_27,
214#elif ARDUINO_PIN_LAST > 27
216#endif
217#ifdef ARDUINO_PIN_28
218 ARDUINO_PIN_28,
219#elif ARDUINO_PIN_LAST > 28
221#endif
222#ifdef ARDUINO_PIN_29
223 ARDUINO_PIN_29,
224#elif ARDUINO_PIN_LAST > 29
226#endif
227#ifdef ARDUINO_PIN_30
228 ARDUINO_PIN_30,
229#elif ARDUINO_PIN_LAST > 30
231#endif
232#ifdef ARDUINO_PIN_31
233 ARDUINO_PIN_31,
234#elif ARDUINO_PIN_LAST > 31
236#endif
237#ifdef ARDUINO_PIN_32
238 ARDUINO_PIN_32,
239#elif ARDUINO_PIN_LAST > 32
241#endif
242#ifdef ARDUINO_PIN_33
243 ARDUINO_PIN_33,
244#elif ARDUINO_PIN_LAST > 33
246#endif
247#ifdef ARDUINO_PIN_34
248 ARDUINO_PIN_34,
249#elif ARDUINO_PIN_LAST > 34
251#endif
252#ifdef ARDUINO_PIN_35
253 ARDUINO_PIN_35,
254#elif ARDUINO_PIN_LAST > 35
256#endif
257#ifdef ARDUINO_PIN_36
258 ARDUINO_PIN_36,
259#elif ARDUINO_PIN_LAST > 36
261#endif
262#ifdef ARDUINO_PIN_37
263 ARDUINO_PIN_37,
264#elif ARDUINO_PIN_LAST > 37
266#endif
267#ifdef ARDUINO_PIN_38
268 ARDUINO_PIN_38,
269#elif ARDUINO_PIN_LAST > 38
271#endif
272#ifdef ARDUINO_PIN_39
273 ARDUINO_PIN_39,
274#elif ARDUINO_PIN_LAST > 39
276#endif
277#ifdef ARDUINO_PIN_40
278 ARDUINO_PIN_40,
279#elif ARDUINO_PIN_LAST > 40
281#endif
282#ifdef ARDUINO_PIN_41
283 ARDUINO_PIN_41,
284#elif ARDUINO_PIN_LAST > 41
286#endif
287#ifdef ARDUINO_PIN_42
288 ARDUINO_PIN_42,
289#elif ARDUINO_PIN_LAST > 42
291#endif
292#ifdef ARDUINO_PIN_43
293 ARDUINO_PIN_43,
294#elif ARDUINO_PIN_LAST > 43
296#endif
297#ifdef ARDUINO_PIN_44
298 ARDUINO_PIN_44,
299#elif ARDUINO_PIN_LAST > 44
301#endif
302#ifdef ARDUINO_PIN_45
303 ARDUINO_PIN_45,
304#elif ARDUINO_PIN_LAST > 45
306#endif
307#ifdef ARDUINO_PIN_46
308 ARDUINO_PIN_46,
309#elif ARDUINO_PIN_LAST > 46
311#endif
312#ifdef ARDUINO_PIN_47
313 ARDUINO_PIN_47,
314#elif ARDUINO_PIN_LAST > 47
316#endif
317#ifdef ARDUINO_PIN_48
318 ARDUINO_PIN_48,
319#elif ARDUINO_PIN_LAST > 48
321#endif
322#ifdef ARDUINO_PIN_49
323 ARDUINO_PIN_49,
324#elif ARDUINO_PIN_LAST > 49
326#endif
327#ifdef ARDUINO_PIN_50
328 ARDUINO_PIN_50,
329#elif ARDUINO_PIN_LAST > 50
331#endif
332#ifdef ARDUINO_PIN_51
333 ARDUINO_PIN_51,
334#elif ARDUINO_PIN_LAST > 51
336#endif
337#ifdef ARDUINO_PIN_52
338 ARDUINO_PIN_52,
339#elif ARDUINO_PIN_LAST > 52
341#endif
342#ifdef ARDUINO_PIN_53
343 ARDUINO_PIN_53,
344#elif ARDUINO_PIN_LAST > 53
346#endif
347#ifdef ARDUINO_PIN_54
348 ARDUINO_PIN_54,
349#elif ARDUINO_PIN_LAST > 54
351#endif
352#ifdef ARDUINO_PIN_55
353 ARDUINO_PIN_55,
354#elif ARDUINO_PIN_LAST > 55
356#endif
357#ifdef ARDUINO_PIN_56
358 ARDUINO_PIN_56,
359#elif ARDUINO_PIN_LAST > 56
361#endif
362#ifdef ARDUINO_PIN_57
363 ARDUINO_PIN_57,
364#elif ARDUINO_PIN_LAST > 57
366#endif
367#ifdef ARDUINO_PIN_58
368 ARDUINO_PIN_58,
369#elif ARDUINO_PIN_LAST > 58
371#endif
372#ifdef ARDUINO_PIN_59
373 ARDUINO_PIN_59,
374#elif ARDUINO_PIN_LAST > 59
376#endif
377#ifdef ARDUINO_PIN_60
378 ARDUINO_PIN_60,
379#elif ARDUINO_PIN_LAST > 60
381#endif
382#ifdef ARDUINO_PIN_61
383 ARDUINO_PIN_61,
384#elif ARDUINO_PIN_LAST > 61
386#endif
387#ifdef ARDUINO_PIN_62
388 ARDUINO_PIN_62,
389#elif ARDUINO_PIN_LAST > 62
391#endif
392#ifdef ARDUINO_PIN_63
393 ARDUINO_PIN_63,
394#elif ARDUINO_PIN_LAST > 63
396#endif
397#ifdef ARDUINO_PIN_64
398 ARDUINO_PIN_64,
399#elif ARDUINO_PIN_LAST > 64
401#endif
402#ifdef ARDUINO_PIN_65
403 ARDUINO_PIN_65,
404#elif ARDUINO_PIN_LAST > 65
406#endif
407#ifdef ARDUINO_PIN_66
408 ARDUINO_PIN_66,
409#elif ARDUINO_PIN_LAST > 66
411#endif
412#ifdef ARDUINO_PIN_67
413 ARDUINO_PIN_67,
414#elif ARDUINO_PIN_LAST > 67
416#endif
417#ifdef ARDUINO_PIN_68
418 ARDUINO_PIN_68,
419#elif ARDUINO_PIN_LAST > 68
421#endif
422#ifdef ARDUINO_PIN_69
423 ARDUINO_PIN_69,
424#elif ARDUINO_PIN_LAST > 69
426#endif
427#endif /* DOXYGEN */
428};
429
430#ifdef __cplusplus
431}
432#endif
433
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.