From c216d9ec8a38f4eebed8f321930cba580914337d Mon Sep 17 00:00:00 2001 From: Cristian Maglie <c.maglie@arduino.cc> Date: Fri, 20 Nov 2015 13:24:13 +0100 Subject: [PATCH] Fixed variant pins --- variants/mkr1000/variant.cpp | 163 ++++++++++++++++++----------------- variants/mkr1000/variant.h | 64 +++++++------- 2 files changed, 114 insertions(+), 113 deletions(-) diff --git a/variants/mkr1000/variant.cpp b/variants/mkr1000/variant.cpp index 18e37a35..4a79a6a0 100644 --- a/variants/mkr1000/variant.cpp +++ b/variants/mkr1000/variant.cpp @@ -18,32 +18,30 @@ #include "variant.h" -// TODO: FIX TIMERS +const PinDescription g_APinDescription[] = { -const PinDescription g_APinDescription[]= -{ /* +------------+------------------+--------+-----------------+--------+-----------------------+---------+---------+--------+--------+----------+----------+ | Pin number | MKR Board pin | PIN | Notes | Peri.A | Peripheral B | Perip.C | Perip.D | Peri.E | Peri.F | Periph.G | Periph.H | | | | | | EIC | ADC | AC | PTC | DAC | SERCOMx | SERCOMx | TCCx | TCCx | COM | AC/GLCK | | | | | |(EXTINT)|(AIN)|(AIN)| | | (x/PAD) | (x/PAD) | (x/WO) | (x/WO) | | | +------------+------------------+--------+-----------------+--------+-----+-----+-----+-----+---------+---------+--------+--------+----------+----------+ - | 0 | D0 | PA22 | | *06 | | | X10 | | 3/00 | 5/00 |* TC4/0 | TCC0/4 | | GCLK_IO6 | - | 1 | D1 | PA23 | | *07 | | | X11 | | 3/01 | 5/01 |* TC4/1 | TCC0/5 | USB/SOF | GCLK_IO7 | - | 2 | D2 | PA10 | | 10 | *18 | | X02 | | 0/02 | 2/02 |*TCC1/0 | TCC0/2 | I2S/SCK0 | GCLK_IO4 | - | 3 | D3 | PA11 | | 11 | *19 | | X03 | | 0/03 | 2/03 |*TCC1/1 | TCC0/3 | I2S/FS0 | GCLK_IO5 | - | 4 | D4 | PB10 | | 10 | | | | | | 4/02 |* TC5/0 | TCC0/4 | I2S/MCK1 | GCLK_IO4 | - | 5 | D5 | PB11 | | 11 | | | | | | 4/03 |* TC5/1 | TCC0/5 | I2S/SCK1 | GCLK_IO5 | - | 6 | D6 | PA20 | | *04 | | | X08 | | 5/02 | 3/02 | |*TCC0/6 | I2S/SCK0 | GCLK_IO4 | - | 7 | D7 | PA21 | | *05 | | | X09 | | 5/03 | 3/03 | |*TCC0/7 | I2S/FS0 | GCLK_IO5 | + | 00 | D0 | PA22 | | *06 | | | X10 | | 3/00 | 5/00 |* TC4/0 | TCC0/4 | | GCLK_IO6 | + | 01 | D1 | PA23 | | *07 | | | X11 | | 3/01 | 5/01 |* TC4/1 | TCC0/5 | USB/SOF | GCLK_IO7 | + | 02 | D2 | PA10 | | 10 | *18 | | X02 | | 0/02 | 2/02 |*TCC1/0 | TCC0/2 | I2S/SCK0 | GCLK_IO4 | + | 03 | D3 | PA11 | | 11 | *19 | | X03 | | 0/03 | 2/03 |*TCC1/1 | TCC0/3 | I2S/FS0 | GCLK_IO5 | + | 04 | D4 | PB10 | | *10 | | | | | | 4/02 |* TC5/0 | TCC0/4 | I2S/MCK1 | GCLK_IO4 | + | 05 | D5 | PB11 | | *11 | | | | | | 4/03 |* TC5/1 | TCC0/5 | I2S/SCK1 | GCLK_IO5 | + | 06 | D6 | PA20 | | *04 | | | X08 | | 5/02 | 3/02 | |*TCC0/6 | I2S/SCK0 | GCLK_IO4 | + | 07 | D7 | PA21 | | *05 | | | X09 | | 5/03 | 3/03 | |*TCC0/7 | I2S/FS0 | GCLK_IO5 | +------------+------------------+--------+-----------------+--------+-----+-----+-----+-----+---------+---------+--------+--------+----------+----------+ */ { PORTA, 22, PIO_DIGITAL, (PIN_ATTR_DIGITAL|PIN_ATTR_PWM|PIN_ATTR_TIMER ), No_ADC_Channel, PWM4_CH0, TC4_CH0, EXTERNAL_INT_6 }, - { PORTA, 23, PIO_DIGITAL, (PIN_ATTR_DIGITAL|PIN_ATTR_PWM|PIN_ATTR_TIMER ), No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_7 }, - { PORTA, 10, PIO_DIGITAL, (PIN_ATTR_DIGITAL|PIN_ATTR_PWM|PIN_ATTR_TIMER ), ADC_Channel18, NOT_ON_PWM, TCC1_CH0, EXTERNAL_INT_10 }, - { PORTA, 11, PIO_DIGITAL, (PIN_ATTR_DIGITAL|PIN_ATTR_PWM|PIN_ATTR_TIMER_ALT), ADC_Channel19, NOT_ON_PWM, TCC0_CH3, EXTERNAL_INT_11 }, - { PORTB, 10, PIO_DIGITAL, (PIN_ATTR_DIGITAL|PIN_ATTR_PWM|PIN_ATTR_TIMER ), No_ADC_Channel, NOT_ON_PWM, TC5_CH0, EXTERNAL_INT_10 }, - { PORTB, 11, PIO_DIGITAL, (PIN_ATTR_DIGITAL|PIN_ATTR_PWM|PIN_ATTR_TIMER_ALT), No_ADC_Channel, NOT_ON_PWM, TCC0_CH5, EXTERNAL_INT_11 }, + { PORTA, 23, PIO_DIGITAL, (PIN_ATTR_DIGITAL|PIN_ATTR_PWM|PIN_ATTR_TIMER ), No_ADC_Channel, PWM4_CH1, TC4_CH1, EXTERNAL_INT_7 }, + { PORTA, 10, PIO_DIGITAL, (PIN_ATTR_DIGITAL|PIN_ATTR_PWM|PIN_ATTR_TIMER ), ADC_Channel18, PWM1_CH0, TCC1_CH0, EXTERNAL_INT_NONE }, + { PORTA, 11, PIO_DIGITAL, (PIN_ATTR_DIGITAL|PIN_ATTR_PWM|PIN_ATTR_TIMER ), ADC_Channel19, PWM1_CH1, TCC1_CH1, EXTERNAL_INT_NONE }, + { PORTB, 10, PIO_DIGITAL, (PIN_ATTR_DIGITAL|PIN_ATTR_PWM|PIN_ATTR_TIMER ), No_ADC_Channel, PWM5_CH0, TC5_CH0, EXTERNAL_INT_10 }, + { PORTB, 11, PIO_DIGITAL, (PIN_ATTR_DIGITAL|PIN_ATTR_PWM|PIN_ATTR_TIMER ), No_ADC_Channel, PWM5_CH1, TC5_CH1, EXTERNAL_INT_11 }, { PORTA, 20, PIO_DIGITAL, (PIN_ATTR_DIGITAL|PIN_ATTR_PWM|PIN_ATTR_TIMER_ALT), No_ADC_Channel, PWM0_CH6, TCC0_CH6, EXTERNAL_INT_4 }, { PORTA, 21, PIO_DIGITAL, (PIN_ATTR_DIGITAL|PIN_ATTR_PWM|PIN_ATTR_TIMER_ALT), No_ADC_Channel, PWM0_CH7, TCC0_CH7, EXTERNAL_INT_5 }, @@ -53,20 +51,54 @@ const PinDescription g_APinDescription[]= | | | | | EIC | ADC | AC | PTC | DAC | SERCOMx | SERCOMx | TCCx | TCCx | COM | AC/GLCK | | | | | |(EXTINT)|(AIN)|(AIN)| | | (x/PAD) | (x/PAD) | (x/WO) | (x/WO) | | | +------------+------------------+--------+-----------------+--------+-----+-----+-----+-----+---------+---------+--------+--------+----------+----------+ - | 8 | A0 / DAC0 | PA02 | | 02 | *00 | | Y00 | OUT | | | | | | | - | 9 | A1 | PB02 | | *02 | *10 | | Y08 | | | 5/00 | | | | | - | 10 | A2 | PB03 | | *03 | *11 | | Y09 | | | 5/01 | | | | | - | 11 | A3 | PA04 | | 04 | *04 | 00 | Y02 | | | 0/00 |*TCC0/0 | | | | - | 12 | A4 | PA05 | | 05 | *05 | 01 | Y03 | | | 0/01 |*TCC0/1 | | | | - | 13 | A5 | PA06 | | 06 | *06 | 02 | Y04 | | | 0/02 | TCC1/0 | | | | - | 14 | A6 | PA07 | | 07 | *07 | 03 | Y05 | | | 0/03 | TCC1/1 | | I2S/SD0 | | + | | SPI | | | | | | | | | | | | | | + | 08 | MOSI | PA16 | | *00 | | | X04 | | *1/00 | 3/00 |*TCC2/0 | TCC0/6 | | GCLK_IO2 | + | 09 | SCK | PA17 | | *01 | | | X05 | | *1/01 | 3/01 | TCC2/1 | TCC0/7 | | GCLK_IO3 | + | 10 | MISO | PA19 | | 03 | | | X07 | | *1/03 | 3/03 |* TC3/1 | TCC0/3 | I2S/SD0 | AC/CMP1 | + +------------+------------------+--------+-----------------+--------------------+-----+-----+---------+---------+--------+--------+----------+----------+ + | | Wire | | | | | | | | | | | | | | + | 11 | SDA | PA08 | | NMI | *16 | | X00 | | *0/00 | 2/00 | TCC0/0 | TCC1/2 | I2S/SD1 | | + | 12 | SCL | PA09 | | 09 | *17 | | X01 | | *0/01 | 2/01 | TCC0/1 | TCC1/3 | I2S/MCK0 | | + +------------+------------------+--------+-----------------+--------+-----+-----+-----+-----+---------+---------+--------+--------+----------+----------+ + | | Serial1 | | | | | | | | | | | | | | + | 13 | RX | PB23 | | 07 | | | | | | *5/03 | | | | GCLK_IO1 | + | 14 | TX | PB22 | | 06 | | | | | | *5/02 | | | | GCLK_IO0 | + +------------+------------------+--------+-----------------+--------+-----+-----+-----+-----+---------+---------+--------+--------+----------+----------+ + */ + // DIPO=3 DOPO=0 + { PORTA, 16, PIO_SERCOM, (PIN_ATTR_DIGITAL|PIN_ATTR_PWM|PIN_ATTR_TIMER ), No_ADC_Channel, PWM2_CH0, TCC2_CH0, EXTERNAL_INT_0 }, // MOSI: SERCOM1/PAD[0] + { PORTA, 17, PIO_SERCOM, (PIN_ATTR_DIGITAL ), No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, // SCK: SERCOM1/PAD[1] + { PORTA, 19, PIO_SERCOM, (PIN_ATTR_DIGITAL|PIN_ATTR_PWM|PIN_ATTR_TIMER ), No_ADC_Channel, PWM3_CH1, TC3_CH1, EXTERNAL_INT_NONE }, // MISO: SERCOM1/PAD[3] + + // PINOUT=0 + { PORTA, 8, PIO_SERCOM, (PIN_ATTR_DIGITAL ), ADC_Channel16, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NMI }, // SDA: SERCOM0/PAD[0] + { PORTA, 9, PIO_SERCOM, (PIN_ATTR_DIGITAL ), ADC_Channel17, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, // SCL: SERCOM0/PAD[1] + + // RXPO=3 TXPO=1 + { PORTB, 23, PIO_SERCOM_ALT, (PIN_ATTR_DIGITAL ), No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, // RX: SERCOM5/PAD[3] + { PORTB, 22, PIO_SERCOM_ALT, (PIN_ATTR_DIGITAL ), No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, // TX: SERCOM5/PAD[2] + + +/* + +------------+------------------+--------+-----------------+--------+-----------------------+---------+---------+--------+--------+----------+----------+ + | Pin number | MKR Board pin | PIN | Notes | Peri.A | Peripheral B | Perip.C | Perip.D | Peri.E | Peri.F | Periph.G | Periph.H | + | | | | | EIC | ADC | AC | PTC | DAC | SERCOMx | SERCOMx | TCCx | TCCx | COM | AC/GLCK | + | | | | |(EXTINT)|(AIN)|(AIN)| | | (x/PAD) | (x/PAD) | (x/WO) | (x/WO) | | | + +------------+------------------+--------+-----------------+--------+-----+-----+-----+-----+---------+---------+--------+--------+----------+----------+ + | 15 | A0 / DAC0 | PA02 | | 02 | *00 | | Y00 | OUT | | | | | | | + | 16 | A1 | PB02 | | *02 | *10 | | Y08 | | | 5/00 | | | | | + | 17 | A2 | PB03 | | *03 | *11 | | Y09 | | | 5/01 | | | | | + | 18 | A3 | PA04 | | 04 | *04 | 00 | Y02 | | | 0/00 |*TCC0/0 | | | | + | 19 | A4 | PA05 | | 05 | *05 | 01 | Y03 | | | 0/01 |*TCC0/1 | | | | + | 20 | A5 | PA06 | | 06 | *06 | 02 | Y04 | | | 0/02 | TCC1/0 | | | | + | 21 | A6 | PA07 | | 07 | *07 | 03 | Y05 | | | 0/03 | TCC1/1 | | I2S/SD0 | | +------------+------------------+--------+-----------------+--------+-----+-----+-----+-----+---------+---------+--------+--------+----------+----------+ */ - { PORTA, 2, PIO_ANALOG, (PIN_ATTR_DIGITAL|PIN_ATTR_ANALOG ), ADC_Channel0, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, // DAC - { PORTB, 2, PIO_ANALOG, (PIN_ATTR_DIGITAL|PIN_ATTR_PWM|PIN_ATTR_TIMER ), ADC_Channel10, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_2 }, + { PORTA, 2, PIO_ANALOG, (PIN_ATTR_DIGITAL|PIN_ATTR_ANALOG /*DAC*/ ), ADC_Channel0, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, + { PORTB, 2, PIO_ANALOG, (PIN_ATTR_DIGITAL ), ADC_Channel10, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_2 }, { PORTB, 3, PIO_ANALOG, (PIN_ATTR_DIGITAL ), ADC_Channel11, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_3 }, - { PORTA, 4, PIO_ANALOG, (PIN_ATTR_DIGITAL ), ADC_Channel4, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, - { PORTA, 5, PIO_ANALOG, (PIN_ATTR_DIGITAL ), ADC_Channel5, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, + { PORTA, 4, PIO_ANALOG, (PIN_ATTR_DIGITAL|PIN_ATTR_PWM|PIN_ATTR_TIMER ), ADC_Channel4, PWM0_CH0, TCC0_CH0, EXTERNAL_INT_NONE }, + { PORTA, 5, PIO_ANALOG, (PIN_ATTR_DIGITAL|PIN_ATTR_PWM|PIN_ATTR_TIMER ), ADC_Channel5, PWM0_CH1, TCC0_CH1, EXTERNAL_INT_NONE }, { PORTA, 6, PIO_ANALOG, (PIN_ATTR_DIGITAL ), ADC_Channel6, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, { PORTA, 7, PIO_ANALOG, (PIN_ATTR_DIGITAL ), ADC_Channel7, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, @@ -76,33 +108,19 @@ const PinDescription g_APinDescription[]= | | | | | EIC | ADC | AC | PTC | DAC | SERCOMx | SERCOMx | TCCx | TCCx | COM | AC/GLCK | | | | | |(EXTINT)|(AIN)|(AIN)| | | (x/PAD) | (x/PAD) | (x/WO) | (x/WO) | | | +------------+------------------+--------+-----------------+--------+-----+-----+-----+-----+---------+---------+--------+--------+----------+----------+ - | | SPI | | | | | | | | | | | | | | - | 15 | MOSI | PA16 | | *00 | | | X04 | | 1/00 | 3/00 |*TCC2/0 | TCC0/6 | | GCLK_IO2 | - | 16 | SCK | PA17 | | *01 | | | X05 | | 1/01 | 3/01 | TCC2/1 | TCC0/7 | | GCLK_IO3 | - | 17 | MISO | PA19 | | 03 | | | X07 | | 1/03 | 3/03 |* TC3/1 | TCC0/3 | I2S/SD0 | AC/CMP1 | - +------------+------------------+--------+-----------------+--------------------+-----+-----+---------+---------+--------+--------+----------+----------+ - | | Wire | | | | | | | | | | | | | | - | 18 | SDA | PA08 | | NMI | 16 | | X00 | | 0/00 | 2/00 | TCC0/0 | TCC1/2 | I2S/SD1 | | - | 19 | DCL | PA09 | | 09 | 17 | | X01 | | 0/01 | 2/01 | TCC0/1 | TCC1/3 | I2S/MCK0 | | + | | USB | | | | | | | | | | | | | | + | 22 | | PA24 | USB N | 12 | | | | | 3/02 | 5/02 | TC5/0 | TCC1/2 | USB/DM | | + | 23 | | PA25 | USB P | 13 | | | | | 3/03 | 5/03 | TC5/1 | TCC1/3 | USB/DP | | + | 24 | | PA18 | USB ID | 02 | | | X06 | | 1/02 | 3/02 | TC3/0 | TCC0/2 | | AC/CMP0 | +------------+------------------+--------+-----------------+--------+-----+-----+-----+-----+---------+---------+--------+--------+----------+----------+ - | | Serial1 | | | | | | | | | | | | | | - | 20 | TX | PB22 | | 06 | | | | | | 5/02 | | | | GCLK_IO0 | - | 21 | RX | PB23 | | 07 | | | | | | 5/03 | | | | GCLK_IO1 | + | 25 | AREF | PA03 | | 03 | 01 | | Y01 | | | | | | | | +------------+------------------+--------+-----------------+--------+-----+-----+-----+-----+---------+---------+--------+--------+----------+----------+ */ - // DIPO=3 DOPO=0 - { PORTA, 16, PIO_SERCOM, (PIN_ATTR_DIGITAL|PIN_ATTR_PWM|PIN_ATTR_TIMER ), No_ADC_Channel, PWM2_CH0, TCC2_CH0, EXTERNAL_INT_0 }, // MOSI: SERCOM1/PAD[0] - { PORTA, 17, PIO_SERCOM, (PIN_ATTR_NONE ), No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, // SCK: SERCOM1/PAD[1] - { PORTA, 19, PIO_SERCOM, (PIN_ATTR_DIGITAL|PIN_ATTR_PWM|PIN_ATTR_TIMER ), No_ADC_Channel, PWM3_CH0, TC3_CH0, EXTERNAL_INT_NONE }, // MISO: SERCOM1/PAD[3] - - // PINOUT=0 - { PORTA, 8, PIO_SERCOM, (PIN_ATTR_DIGITAL|PIN_ATTR_PWM|PIN_ATTR_TIMER ), ADC_Channel16, PWM0_CH0, TCC0_CH0, EXTERNAL_INT_NMI }, // SDA: SERCOM0/PAD[0] - { PORTA, 9, PIO_SERCOM, (PIN_ATTR_DIGITAL|PIN_ATTR_PWM|PIN_ATTR_TIMER_ALT), ADC_Channel17, PWM0_CH1, TCC1_CH3, EXTERNAL_INT_NONE }, // SCL: SERCOM0/PAD[1] - - // RXPO=3 TXPO=1 - { PORTB, 22, PIO_SERCOM_ALT, (PIN_ATTR_NONE ), No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, // TX: SERCOM5/PAD[2] - { PORTB, 23, PIO_SERCOM_ALT, (PIN_ATTR_NONE ), No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, // RX: SERCOM5/PAD[3] + { PORTA, 24, PIO_COM, (PIN_ATTR_NONE ), No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, // USB/DM + { PORTA, 25, PIO_COM, (PIN_ATTR_NONE ), No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, // USB/DP + { PORTA, 18, PIO_DIGITAL, (PIN_ATTR_DIGITAL ), No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, + { PORTA, 3, PIO_DIGITAL, (PIN_ATTR_DIGITAL ), No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, // DAC/VREFP /* +------------+------------------+--------+-----------------+--------+-----------------------+---------+---------+--------+--------+----------+----------+ @@ -111,16 +129,20 @@ const PinDescription g_APinDescription[]= | | | | |(EXTINT)|(AIN)|(AIN)| | | (x/PAD) | (x/PAD) | (x/WO) | (x/WO) | | | +------------+------------------+--------+-----------------+--------+-----+-----+-----+-----+---------+---------+--------+--------+----------+----------+ | | ATWINC1501B SPI | | | | | | | | | | | | | | - | 22 | | PA12 | WINC MOSI | 12 | | | | | 2/00 | 4/00 | TCC2/0 | TCC0/6 | | AC/CMP0 | - | 23 | | PA13 | WINC SCK | 13 | | | | | 2/01 | 4/01 | TCC2/1 | TCC0/7 | | AC/CMP1 | - | 24 | | PA14 | WINC SSN | 14 | | | | | 2/02 | 4/02 | TC3/0 | TCC0/4 | | GCLK_IO0 | - | 25 | | PA15 | WINC MISO | 15 | | | | | 2/03 | 4/03 | TC3/1 | TCC0/5 | | GCLK_IO1 | + | 26 | | PA12 | WINC MOSI | 12 | | | | | *2/00 | 4/00 | TCC2/0 | TCC0/6 | | AC/CMP0 | + | 27 | | PA13 | WINC SCK | 13 | | | | | *2/01 | 4/01 | TCC2/1 | TCC0/7 | | AC/CMP1 | + | 28 | | PA14 | WINC SSN | 14 | | | | | 2/02 | 4/02 | TC3/0 | TCC0/4 | | GCLK_IO0 | + | 29 | | PA15 | WINC MISO | 15 | | | | | *2/03 | 4/03 | TC3/1 | TCC0/5 | | GCLK_IO1 | +------------+------------------+--------+-----------------+--------+-----+-----+-----+-----+---------+---------+--------+--------+----------+----------+ | | ATWINC1501B PINS | | | | | | | | | | | | | | - | 26 | | PA27 | WINC RESETN_WIFI| 15 | | | | | | | | | | GCLK_IO0 | - | 27 | | PA28 | WINC CHIP_EN | 08 | | | | | | | | | | GCLK_IO0 | - | 28 | | PB08 | WINC WAKE | 08 | 02 | | Y14 | | | 4/00 | TC4/0 | | | | - | 29 | | PB09 | WINC IRQN | *09 | 03 | | Y15 | | | 4/01 | TC4/1 | | | | + | 30 | | PA27 | WINC RESETN_WIFI| 15 | | | | | | | | | | GCLK_IO0 | + | 31 | | PA28 | WINC CHIP_EN | 08 | | | | | | | | | | GCLK_IO0 | + | 32 | | PB08 | WINC WAKE | 08 | 02 | | Y14 | | | 4/00 | TC4/0 | | | | + | 33 | | PB09 | WINC IRQN | *09 | 03 | | Y15 | | | 4/01 | TC4/1 | | | | + +------------+------------------+--------+-----------------+--------+-----+-----+-----+-----+---------+---------+--------+--------+----------+----------+ + | | 32768Hz Crystal | | | | | | | | | | | | | | + | 34 | | PA00 | XIN32 | 00 | | | | | | 1/00 | TCC2/0 | | | | + | 35 | | PA01 | XOUT32 | 01 | | | | | | 1/01 | TCC2/1 | | | | +------------+------------------+--------+-----------------+--------+-----+-----+-----+-----+---------+---------+--------+--------+----------+----------+ */ // DIPO=3 DOPO=0 @@ -134,29 +156,8 @@ const PinDescription g_APinDescription[]= { PORTB, 8, PIO_DIGITAL, (PIN_ATTR_NONE ), No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, { PORTB, 9, PIO_DIGITAL, (PIN_ATTR_NONE ), No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_9 }, -/* - +------------+------------------+--------+-----------------+--------+-----------------------+---------+---------+--------+--------+----------+----------+ - | Pin number | MKR Board pin | PIN | Notes | Peri.A | Peripheral B | Perip.C | Perip.D | Peri.E | Peri.F | Periph.G | Periph.H | - | | | | | EIC | ADC | AC | PTC | DAC | SERCOMx | SERCOMx | TCCx | TCCx | COM | AC/GLCK | - | | | | |(EXTINT)|(AIN)|(AIN)| | | (x/PAD) | (x/PAD) | (x/WO) | (x/WO) | | | - +------------+------------------+--------+-----------------+--------+-----+-----+-----+-----+---------+---------+--------+--------+----------+----------+ - | | USB | | | | | | | | | | | | | | - | 30 | | PA24 | USB N | 12 | | | | | 3/02 | 5/02 | TC5/0 | TCC1/2 | USB/DM | | - | 31 | | PA25 | USB P | 13 | | | | | 3/03 | 5/03 | TC5/1 | TCC1/3 | USB/DP | | - | 32 | | PA18 | USB ID | 02 | | | X06 | | 1/02 | 3/02 | TC3/0 | TCC0/2 | | AC/CMP0 | - +------------+------------------+--------+-----------------+--------+-----+-----+-----+-----+---------+---------+--------+--------+----------+----------+ - | 33 | AREF | PA03 | | 03 | 01 | | Y01 | | | | | | | | - +------------+------------------+--------+-----------------+--------+-----+-----+-----+-----+---------+---------+--------+--------+----------+----------+ - | | 32768Hz Crystal | | | | | | | | | | | | | | - | | | PA00 | XIN32 | 00 | | | | | | 1/00 | TCC2/0 | | | | - | | | PA01 | XOUT32 | 01 | | | | | | 1/01 | TCC2/1 | | | | - +------------+------------------+--------+-----------------+--------+-----+-----+-----+-----+---------+---------+--------+--------+----------+----------+ - */ - { PORTA, 24, PIO_COM, (PIN_ATTR_NONE ), No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, // USB/DM - { PORTA, 25, PIO_COM, (PIN_ATTR_NONE ), No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, // USB/DP - { PORTA, 18, PIO_DIGITAL, (PIN_ATTR_NONE ), No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, - - { PORTA, 3, PIO_DIGITAL, (PIN_ATTR_NONE ), No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, // DAC/VREFP + { PORTA, 0, PIO_DIGITAL, (PIN_ATTR_NONE ), No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, + { PORTA, 1, PIO_DIGITAL, (PIN_ATTR_NONE ), No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, }; const void* g_apTCInstances[TCC_INST_NUM + TC_INST_NUM]={ TCC0, TCC1, TCC2, TC3, TC4, TC5 }; diff --git a/variants/mkr1000/variant.h b/variants/mkr1000/variant.h index 8f042d58..cda39ec3 100644 --- a/variants/mkr1000/variant.h +++ b/variants/mkr1000/variant.h @@ -41,8 +41,8 @@ // Number of pins defined in PinDescription array #define PINS_COUNT (26u) -#define NUM_DIGITAL_PINS (14u) -#define NUM_ANALOG_INPUTS (6u) +#define NUM_DIGITAL_PINS (15u) +#define NUM_ANALOG_INPUTS (7u) #define NUM_ANALOG_OUTPUTS (1u) #define digitalPinToPort(P) (&(PORT->Group[g_APinDescription[P].ulPort])) @@ -66,19 +66,18 @@ // LEDs // ---- -#define PIN_LED (6u) -#define PIN_LED2 (7u) +#define PIN_LED (7u) #define LED_BUILTIN PIN_LED // Analog pins // ----------- -#define PIN_A0 (8u) -#define PIN_A1 (9u) -#define PIN_A2 (10u) -#define PIN_A3 (11u) -#define PIN_A4 (12u) -#define PIN_A5 (13u) -#define PIN_A6 (14u) +#define PIN_A0 (15u) +#define PIN_A1 (16u) +#define PIN_A2 (17u) +#define PIN_A3 (18u) +#define PIN_A4 (19u) +#define PIN_A5 (20u) +#define PIN_A6 (21u) static const uint8_t A0 = PIN_A0; static const uint8_t A1 = PIN_A1; static const uint8_t A2 = PIN_A2; @@ -93,10 +92,10 @@ static const uint8_t A6 = PIN_A6; #define SPI_INTERFACES_COUNT 2 // SPI -#define PIN_SPI_MISO (17u) -#define PIN_SPI_MOSI (15u) -#define PIN_SPI_SCK (16u) -#define PIN_SPI_SS (32u) +#define PIN_SPI_MISO (10u) +#define PIN_SPI_MOSI (8u) +#define PIN_SPI_SCK (9u) +#define PIN_SPI_SS (24u) #define PERIPH_SPI sercom1 #define PAD_SPI_TX SPI_PAD_0_SCK_1 #define PAD_SPI_RX SERCOM_RX_PAD_3 @@ -106,14 +105,14 @@ static const uint8_t MISO = PIN_SPI_MISO; static const uint8_t SCK = PIN_SPI_SCK; // SPI1: Connected to WINC1501B -#define PIN_SPI1_MISO (25u) -#define PIN_SPI1_MOSI (22u) -#define PIN_SPI1_SCK (23u) -#define PIN_SPI1_SS (24u) +#define PIN_SPI1_MISO (29u) +#define PIN_SPI1_MOSI (26u) +#define PIN_SPI1_SCK (27u) +#define PIN_SPI1_SS (28u) #define PERIPH_SPI1 sercom2 #define PAD_SPI1_TX SPI_PAD_0_SCK_1 #define PAD_SPI1_RX SERCOM_RX_PAD_3 -static const uint8_t SS1 = PIN_SPI1_SS; // SPI Slave SS not used. Set here only for reference. +static const uint8_t SS1 = PIN_SPI1_SS; static const uint8_t MOSI1 = PIN_SPI1_MOSI; static const uint8_t MISO1 = PIN_SPI1_MISO; static const uint8_t SCK1 = PIN_SPI1_SCK; @@ -123,16 +122,16 @@ static const uint8_t SCK1 = PIN_SPI1_SCK; #define WIRE_INTERFACES_COUNT 1 // Wire -#define PIN_WIRE_SDA (18u) -#define PIN_WIRE_SCL (19u) +#define PIN_WIRE_SDA (11u) +#define PIN_WIRE_SCL (12u) #define PERIPH_WIRE sercom0 #define WIRE_IT_HANDLER SERCOM0_Handler // USB // --- -#define PIN_USB_HOST_ENABLE (32ul) -#define PIN_USB_DM (30ul) -#define PIN_USB_DP (31ul) +#define PIN_USB_DM (22ul) +#define PIN_USB_DP (23ul) +#define PIN_USB_HOST_ENABLE (24ul) //#ifdef __cplusplus //} @@ -140,10 +139,11 @@ static const uint8_t SCK1 = PIN_SPI1_SCK; // Needed for WINC1501B (WiFi101) library // -------------------------------------- -#define WINC1501_RESET_PIN (26u) -#define WINC1501_INTN_PIN (29u) -#define WINC1501_SPI SPI1 -#define WINC1501_SPI_CS_PIN PIN_SPI1_SS +#define WINC1501_RESET_PIN (30u) +#define WINC1501_CHIP_EN_PIN (31u) +#define WINC1501_INTN_PIN (33u) +#define WINC1501_SPI SPI1 +#define WINC1501_SPI_CS_PIN PIN_SPI1_SS /*---------------------------------------------------------------------------- * Arduino objects - C++ only @@ -163,8 +163,8 @@ extern SERCOM sercom5; // Serial1 extern Uart Serial1; -#define PIN_SERIAL1_RX (20ul) -#define PIN_SERIAL1_TX (21ul) +#define PIN_SERIAL1_RX (13ul) +#define PIN_SERIAL1_TX (14ul) #define PAD_SERIAL1_TX (UART_TX_PAD_2) #define PAD_SERIAL1_RX (SERCOM_RX_PAD_3) #endif @@ -189,6 +189,6 @@ extern Uart Serial1; #define SERIAL_PORT_HARDWARE Serial1 #define SERIAL_PORT_HARDWARE_OPEN Serial1 -// Alisa Serial to SerialUSB, it's the most used serial port +// Alias Serial to SerialUSB #define Serial SerialUSB -- GitLab