1 /*
2  * Copyright (c) 2006-2022, RT-Thread Development Team
3  *
4  * SPDX-License-Identifier: Apache-2.0
5  *
6  * Change Logs:
7  * Date           Author       Notes
8  * 2021-12-10     Meco Man     first version
9  * 2022-09-18     Meco Man     sort pinout out
10  */
11 
12 #ifndef Pins_Arduino_h
13 #define Pins_Arduino_h
14 
15 #include <rtconfig.h>
16 
17 /* pins alias. Must keep in sequence */
18 #define D0        (0)
19 #define D1        (1)
20 #define D2        (2)
21 #define D3        (3)
22 #define D4        (4)
23 #define D5        (5)
24 #define D6        (6)
25 #define D7        (7)
26 #define D8        (8)
27 #define D9        (9)
28 #define D10       (10)
29 #define D11       (11)
30 #define D12       (12)
31 #define D13       (13)
32 #define D14       (14)
33 #define D15       (15)
34 #define D16       (16)
35 #define D17       (17)
36 #define D18       (18)
37 #define D19       (19)
38 #define D20       (20)
39 #define D21       (21)
40 #define D22       (22)
41 #define D23       (23)
42 #define D24       (24)
43 #define D25       (25)
44 #define D26       (26)
45 #define D27       (27)
46 #define D28       (28)
47 #define D29       (29)
48 #define D30       (30)
49 #define D31       (31)
50 #define D32       (32)
51 #define D33       (33)
52 #define D34       (34)
53 #define D35       (35)
54 #define D36       (36)
55 #define D37       (37)
56 #define D38       (38)
57 #define D39       (39)
58 #define A0        (40)
59 #define A1        (41)
60 #define A2        (42)
61 #define A3        (43)
62 #define DAC0      (44)
63 
64 #define RTDUINO_PIN_MAX_LIMIT DAC0 /* pin number max limit check */
65 
66 #define F_CPU          80000000L  /* CPU:80MHz */
67 
68 #define LED_BUILTIN     D22  /* Default Built-in LED */
69 
70 /* Serial2 - PA2-TX  PA3-RX */
71 #define RTDUINO_SERIAL2_DEVICE_NAME     "uart2"
72 
73 #define RTDUINO_TONE_HWTIMER_DEVICE_NAME "timer7"
74 
75 /* I2C */
76 #if defined(BSP_USING_ARDUINO_AHT10)
77 #define RTDUINO_DEFAULT_IIC_BUS_NAME    "i2c4" /* i2c4 - AHT10 (On Board) */
78 #elif defined(BSP_USING_ARDUINO_AP3216) || defined(BSP_USING_ARDUINO_ICM20608)
79 #define RTDUINO_DEFAULT_IIC_BUS_NAME    "i2c3" /* i2c3 - ICM20608, AP3216C (On Board) */
80 #else
81 #define RTDUINO_DEFAULT_IIC_BUS_NAME    "i2c1" /* i2c1 - PC7-SDA PC6-SCL (User I2C) */
82 #endif /* BSP_USING_ARDUINO_AHT10 */
83 
84 /* SPI */
85 #if defined(BSP_USING_ARDUINO_ST7789)
86 /*
87  * SPI LCD ST7789 (spi3)
88  * LCD-SPI-SDA  PB5
89  * LCD-SPI-SCK  PB3
90  * LCD-SPI-CS   PD7
91  * LCD-POWER    PB7
92  * LCD-RESET    PB6
93  * LCD-WR/DC    PB4
94  */
95 #define SS      D36  /* LCD-SPI-CS PD7 */
96 #define RTDUINO_DEFAULT_SPI_BUS_NAME      "spi3" /* LCD SPI Bus */
97 #else
98 /* spi2 - PB13-SCK  PB14-MISO  PB15-MOSI */
99 #define SS      D28  /* Chip select pin of default spi */
100 #define RTDUINO_DEFAULT_SPI_BUS_NAME      "spi2"
101 #endif /* BSP_USING_ARDUINO_ST7789 */
102 
103 #endif /* Pins_Arduino_h */
104