1 /*
2  * Copyright (c) 2006-2023, RT-Thread Development Team
3  *
4  * SPDX-License-Identifier: Apache-2.0
5  *
6  * Change Logs:
7  * Date           Author       Notes
8  * 2023-02-08     WangShun     first version
9  */
10 
11 #include <Arduino.h>
12 #include <board.h>
13 #include "pins_arduino.h"
14 
15 /*
16  * {Arduino Pin, RT-Thread Pin [, Device Name, Channel]}
17  * [] means optional
18  * Digital pins must NOT give the device name and channel.
19  * Analog pins MUST give the device name and channel(ADC, PWM or DAC).
20  * Arduino Pin must keep in sequence.
21  */
22 const pin_map_t pin_map_table[]=
23 {
24     {D0, GET_PIN(A,9),  "uart1"},       /* Serial1-TX */
25     {D1, GET_PIN(A,10), "uart1"},       /* Serial1-RX */
26     {D2, GET_PIN(B,4)},
27     {D3, GET_PIN(B,6), "pwm4", 1},      /* PWM */
28     {D4, GET_PIN(B,7), "pwm4", 2},      /* PWM */
29     {D5, GET_PIN(B,8), "pwm4", 3},      /* PWM */
30     {D6, GET_PIN(B,9), "pwm4", 4},      /* PWM */
31     {D7, GET_PIN(A,8), "pwm1", 1},      /* PWM */
32     {D8, GET_PIN(B,1), "pwm3", 4},      /* PWM */
33     {D9, GET_PIN(B,0), "pwm3", 3},      /* PWM */
34     {D10, GET_PIN(B,12)},
35     {D11, GET_PIN(B,15)},
36     {D12, GET_PIN(B,14)},
37     {D13, GET_PIN(B,13)},
38     {D14, GET_PIN(B,11), "i2c1"},       /* I2C-SDA (Wire) */
39     {D15, GET_PIN(B,10), "i2c1"},       /* I2C-SCL (Wire) */
40     {A0, GET_PIN(A,0), "adc1", 0},      /* ADC */
41     {A1, GET_PIN(A,1), "adc1", 1},      /* ADC */
42     {A2, GET_PIN(A,2), "adc1", 2},      /* ADC */
43     {A3, GET_PIN(A,3), "adc1", 3},      /* ADC */
44     {A4, GET_PIN(A,4), "adc1", 4},      /* ADC */
45     {A5, GET_PIN(A,5), "adc1", 5},      /* ADC */
46 };
47