|
18 | 18 |
|
19 | 19 | #include "variant.h"
|
20 | 20 |
|
| 21 | +// PyPortal uses ATSAMD51J20 (64-pin), Metro & Feather M4 use J19, Trellis uses 51G |
| 22 | +// NOT SURE ABOUT PIN_ATTR_PWM_n VALUES, defaulting all to "E" for now, update as required |
| 23 | +// Also setting PWM and TIMER pins to same value to start, update as required |
| 24 | +// Is LIGHT pin connected/routed anywhere? |
| 25 | + |
21 | 26 | /* NEW PIN DEFS IN PROGRESS:
|
22 | 27 |
|
23 |
| - { PORTA, 0, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_0 }, // TFT_RESET |
24 |
| - { PORTA, 1, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_1 }, // CARDDET |
| 28 | + { PORTA, 0, PIO_DIGITAL , PIN_ATTR_PWM_E , No_ADC_Channel, TC2_CH0 , TC2_CH0 , EXTERNAL_INT_0 }, // TFT_RESET |
| 29 | + { PORTA, 1, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, TC2_CH1 , TC2_CH1 , EXTERNAL_INT_1 }, // CARDDET |
25 | 30 | { PORTA, 2, PIO_ANALOG , PIN_ATTR_ANALOG, DAC_Channel0 , NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_2 }, // AUDIO_OUT
|
26 |
| - { PORTA, 3, PIO_ANALOG , PIN_ATTR_ANALOG, No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_3 }, // AREF? |
27 |
| - { PORTA, 4, PIO_ANALOG , PIN_ATTR_ANALOG, No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_4 }, // TOUCH_YD |
28 |
| - { PORTA, 5, PIO_ANALOG , PIN_ATTR_ANALOG, ADC_Channel0 , NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_5 }, // TOUCH_XL |
29 |
| - { PORTA, 6, PIO_ANALOG , PIN_ATTR_ANALOG, ADC_Channel6 , NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_6 }, // TOUCH_YU |
30 |
| - { PORTA, 7, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, // TFT_WR1 |
31 |
| - { PORTA, 8, PIO_COM , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, // QSPI_DATA0 |
| 31 | + { PORTA, 3, PIO_ANALOG , PIN_ATTR_ANALOG, ADC_Channel1 , NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_3 }, // AREF? |
| 32 | + { PORTA, 4, PIO_ANALOG , PIN_ATTR_ANALOG, ADC_Channel4 , TC0_CH0 , TC0_CH0 , EXTERNAL_INT_4 }, // TOUCH_YD |
| 33 | + { PORTA, 5, PIO_ANALOG , PIN_ATTR_ANALOG, ADC_Channel5 , TC0_CH1 , TC0_CH1 , EXTERNAL_INT_5 }, // TOUCH_XL |
| 34 | + { PORTA, 6, PIO_ANALOG , PIN_ATTR_ANALOG, ADC_Channel6 , TC1_CH0 , TC1_CH0 , EXTERNAL_INT_6 }, // TOUCH_YU |
| 35 | + { PORTA, 7, PIO_DIGITAL , PIN_ATTR_PWM_E , ADC_Channel7 , TC1_CH1 , TC1_CH1 , EXTERNAL_INT_7 }, // TFT_WR1 |
| 36 | + { PORTA, 8, PIO_COM , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NMI }, // QSPI_DATA0 |
32 | 37 | { PORTA, 9, PIO_COM , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_9 }, // QSPI_DATA1
|
33 | 38 | { PORTA, 10, PIO_COM , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_10 }, // QSPI_DATA2
|
34 | 39 | { PORTA, 11, PIO_COM , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_11 }, // QSPI_DATA3
|
35 |
| - { PORTA, 12, PIO_SERCOM_ALT, PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_12 }, // MOSI |
36 |
| - { PORTA, 13, PIO_SERCOM_ALT, PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_13 }, // SCK |
37 |
| - { PORTA, 14, PIO_SERCOM_ALT, PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_14 }, // MISO |
38 |
| - { PORTA, 15, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_15 }, // ESP_CS |
39 |
| - { PORTA, 16, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_0 }, // LCD_DATA0 |
40 |
| - { PORTA, 17, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_1 }, // LCD_DATA1 |
41 |
| - { PORTA, 18, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_2 }, // LCD_DATA2 |
42 |
| - { PORTA, 19, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_3 }, // LCD_DATA3 |
43 |
| - { PORTA, 20, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_4 }, // LCD_DATA4 |
44 |
| - { PORTA, 21, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_5 }, // LCD_DATA5 |
45 |
| - { PORTA, 22, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_6 }, // LCD_DATA6 |
46 |
| - { PORTA, 23, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_7 }, // LCD_DATA7 |
| 40 | + { PORTA, 12, PIO_SERCOM , PIN_ATTR_PWM_E , No_ADC_Channel, TC2_CH0 , TC2_CH0 , EXTERNAL_INT_12 }, // MOSI, SERCOM2/PAD[0] |
| 41 | + { PORTA, 13, PIO_SERCOM , PIN_ATTR_PWM_E , No_ADC_Channel, TC2_CH1 , TC2_CH1 , EXTERNAL_INT_13 }, // SCK, SERCOM2/PAD[1] |
| 42 | + { PORTA, 14, PIO_SERCOM , PIN_ATTR_PWM_E , No_ADC_Channel, TC3_CM0 , TC3_CH0 , EXTERNAL_INT_14 }, // MISO, SERCOM2/PAD[2] |
| 43 | + { PORTA, 15, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, TC3_CH1 , TC3_CH1 , EXTERNAL_INT_15 }, // ESP_CS |
| 44 | + { PORTA, 16, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, TC2_CH0 , TC2_CH0 , EXTERNAL_INT_0 }, // LCD_DATA0 |
| 45 | + { PORTA, 17, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, TC2_CH1 , TC2_CH1 , EXTERNAL_INT_1 }, // LCD_DATA1 |
| 46 | + { PORTA, 18, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, TC3_CH0 , TC3_CH0 , EXTERNAL_INT_2 }, // LCD_DATA2 |
| 47 | + { PORTA, 19, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, TC3_CH1 , TC3_CH1 , EXTERNAL_INT_3 }, // LCD_DATA3 |
| 48 | + { PORTA, 20, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, TC7_CH0 , TC7_CH0 , EXTERNAL_INT_4 }, // LCD_DATA4 |
| 49 | + { PORTA, 21, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, TC7_CH1 , TC7_CH1 , EXTERNAL_INT_5 }, // LCD_DATA5 |
| 50 | + { PORTA, 22, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, TC4_CH0 , TC4_CH0 , EXTERNAL_INT_6 }, // LCD_DATA6 |
| 51 | + { PORTA, 23, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, TC4_CH1 , TC4_CH1 , EXTERNAL_INT_7 }, // LCD_DATA7 |
47 | 52 | { PORTA, 24, PIO_COM , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, // USB D-
|
48 | 53 | { PORTA, 25, PIO_COM , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, // USB D+
|
49 |
| - { PORTA, 27, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_11 }, // D13 |
50 |
| - { PORTA, 30, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_14 }, // SWCLK |
51 |
| - { PORTA, 31, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_15 }, // SWDIO |
52 |
| -
|
53 |
| - { PORTB, 0, PIO_ANALOG , PIN_ATTR_ANALOG, ADC_Channel12 , NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_0 }, // D3 (mma) |
54 |
| - { PORTB, 1, PIO_ANALOG , PIN_ATTR_ANALOG, ADC_Channel12 , NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_1 }, // D4 (mma) |
55 |
| - { PORTB, 2, PIO_SERCOM_ALT, PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_2 }, // SDA (mma) |
56 |
| - { PORTB, 3, PIO_SERCOM_ALT, PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_3 }, // SCL (mma) |
| 54 | + { PORTA, 27, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_11 }, // D13 (LED) |
| 55 | + { PORTA, 30, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, TC6_CH0 , TC6_CH0 , EXTERNAL_INT_14 }, // SWCLK |
| 56 | + { PORTA, 31, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, TC6_CH1 , TC6_CH1 , EXTERNAL_INT_15 }, // SWDIO |
| 57 | +
|
| 58 | + { PORTB, 0, PIO_ANALOG , PIN_ATTR_ANALOG, ADC_Channel12 , NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_0 }, // D3 (SENSE JST) |
| 59 | + { PORTB, 1, PIO_ANALOG , PIN_ATTR_ANALOG, ADC_Channel12 , NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_1 }, // D4 (NEOPIX JST) |
| 60 | + { PORTB, 2, PIO_SERCOM_ALT, PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_2 }, // SDA (JST) |
| 61 | + { PORTB, 3, PIO_SERCOM_ALT, PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_3 }, // SCL (JST) |
57 | 62 | { PORTB, 4, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_4 }, // TFT_RD
|
58 | 63 | { PORTB, 5, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_5 }, // TFT_RS
|
59 | 64 | { PORTB, 6, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_6 }, // TFT_CS
|
|
62 | 67 | { PORTB, 9, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_9 }, // TFT_WR (wr2)
|
63 | 68 | { PORTB, 10, PIO_COM , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_10 }, // QSPI_SCK
|
64 | 69 | { PORTB, 11, PIO_COM , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_11 }, // QSPI_CS
|
65 |
| - { PORTB, 12, PIO_SERCOM_ALT, PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_12 }, // TXD - pin 1 (to ESP32) |
66 |
| - { PORTB, 13, PIO_SERCOM_ALT, PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_13 }, // RXD - pin 0 (to ESP32) |
| 70 | + { PORTB, 12, PIO_SERCOM , PIN_ATTR_NONE , No_ADC_Channel, TC4_CH0 , TCC3_CH0 , EXTERNAL_INT_12 }, // TXD (pin 1, to ESP32), SERCOM4/PAD[0] |
| 71 | + { PORTB, 13, PIO_SERCOM , PIN_ATTR_NONE , No_ADC_Channel, TC4_CH1 , TCC3_CH1 , EXTERNAL_INT_13 }, // RXD (pin 0, to ESP32), SERCOM4/PAD[1] |
67 | 72 | { PORTB, 14, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_14 }, // ESP_BUSY
|
68 | 73 | { PORTB, 15, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_15 }, // ESP_GPIO0
|
69 | 74 | { PORTB, 16, PIO_DIGITAL , PIN_ATTR_NONE , No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_0 }, // ESP_RST
|
|
0 commit comments