Skip to content

Commit bf24eaa

Browse files
committed
match pybadge better
1 parent 356bf82 commit bf24eaa

File tree

2 files changed

+48
-46
lines changed

2 files changed

+48
-46
lines changed

variants/pygamer_m4/variant.cpp

Lines changed: 33 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@ const PinDescription g_APinDescription[]=
2626
// 0..13 - Digital pins
2727
// ----------------------
2828
// 0/1 - SERCOM/UART (Serial1)
29-
{ PORTB, 17, PIO_DIGITAL, PIN_ATTR_PWM_G, No_ADC_Channel, TCC0_CH5, NOT_ON_TIMER, EXTERNAL_INT_1 },
30-
{ PORTB, 16, PIO_DIGITAL, PIN_ATTR_PWM_G, No_ADC_Channel, TCC0_CH4, NOT_ON_TIMER, EXTERNAL_INT_0 },
29+
{ PORTB, 17, PIO_SERCOM, PIN_ATTR_PWM_G, No_ADC_Channel, TCC0_CH5, NOT_ON_TIMER, EXTERNAL_INT_1 },
30+
{ PORTB, 16, PIO_SERCOM, PIN_ATTR_PWM_G, No_ADC_Channel, TCC0_CH4, NOT_ON_TIMER, EXTERNAL_INT_0 },
3131

3232
// 2..12
3333
// Digital Low
@@ -50,17 +50,17 @@ const PinDescription g_APinDescription[]=
5050

5151
// 14..25 - Analog pins
5252
// --------------------
53-
{ PORTA, 2, PIO_ANALOG, PIN_ATTR_ANALOG, ADC_Channel0, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_2 }, // ADC0.0
54-
{ PORTA, 5, PIO_ANALOG, PIN_ATTR_ANALOG, ADC_Channel5, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_5 }, // ADC0.5
55-
{ PORTB, 8, PIO_ANALOG, PIN_ATTR_ANALOG, ADC_Channel2, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_8 }, // ADC0.2
56-
{ PORTB, 9, PIO_ANALOG, PIN_ATTR_ANALOG, ADC_Channel3, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_9 }, // ADC0.3
57-
{ PORTA, 4, PIO_ANALOG, PIN_ATTR_ANALOG, ADC_Channel4, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_6 }, // ADC0.4
58-
{ PORTA, 6, PIO_ANALOG, PIN_ATTR_ANALOG, ADC_Channel6, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_10 }, //ADC0.6
59-
60-
{ PORTB, 1, PIO_ANALOG, PIN_ATTR_ANALOG, ADC_Channel13, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_1 }, // A6, D20 - vbatt
53+
{ PORTA, 2, PIO_ANALOG, PIN_ATTR_ANALOG, ADC_Channel0, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_2 },
54+
{ PORTA, 5, PIO_ANALOG, PIN_ATTR_ANALOG, ADC_Channel5, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_5 },
55+
{ PORTB, 8, PIO_ANALOG, PIN_ATTR_ANALOG, ADC_Channel2, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_8 },
56+
{ PORTB, 9, PIO_ANALOG, PIN_ATTR_ANALOG, ADC_Channel3, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_9 },
57+
{ PORTA, 4, PIO_ANALOG, PIN_ATTR_ANALOG, ADC_Channel4, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_6 },
58+
{ PORTA, 6, PIO_ANALOG, PIN_ATTR_ANALOG, ADC_Channel6, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_10 },
59+
60+
{ PORTB, 1, PIO_ANALOG, PIN_ATTR_ANALOG, ADC_Channel13, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_1 }, // A6, D20 - vbatt
6161
{ PORTB, 4, PIO_ANALOG, PIN_ATTR_ANALOG_ALT, ADC_Channel6, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_4 }, // A7, D21 - Light
62-
{ PORTB, 3, PIO_ANALOG, PIN_ATTR_ANALOG, ADC_Channel15, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_2 }, // A8 / D2
63-
{ PORTB, 2, PIO_ANALOG, PIN_ATTR_ANALOG, ADC_Channel14, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_2 }, // A9 / D3
62+
{ PORTB, 3, PIO_ANALOG, PIN_ATTR_ANALOG, ADC_Channel15, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_2 }, // A8 / D2
63+
{ PORTB, 2, PIO_ANALOG, PIN_ATTR_ANALOG, ADC_Channel14, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_2 }, // A9 / D3
6464
{ PORTB, 6, PIO_ANALOG, PIN_ATTR_ANALOG_ALT, ADC_Channel8, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_6 }, // A10 / JOYY
6565
{ PORTB, 7, PIO_ANALOG, PIN_ATTR_ANALOG_ALT, ADC_Channel9, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_7 }, // A11 / JOYX
6666

@@ -85,38 +85,40 @@ const PinDescription g_APinDescription[]=
8585
// 34 (AREF)
8686
{ PORTA, 3, PIO_ANALOG, PIN_ATTR_ANALOG, No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, // DAC/VREFP
8787

88-
// ----------------------
89-
// 35..36 - Alternate use of A0 (DAC output)
90-
{ PORTA, 2, PIO_ANALOG, PIN_ATTR_ANALOG, DAC_Channel0, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, // DAC/VOUT0
91-
{ PORTA, 5, PIO_ANALOG, PIN_ATTR_ANALOG, DAC_Channel1, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, // DAC/VOUT1
92-
9388
// ----------------------
94-
// 37..42 QSPI (SCK, CS, IO0, IO1, IO2, IO3)
89+
// 35..40 QSPI (SCK, CS, IO0, IO1, IO2, IO3)
9590
{ PORTB, 10, PIO_COM, PIN_ATTR_NONE, No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE },
9691
{ PORTB, 11, PIO_COM, PIN_ATTR_NONE, No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE },
9792
{ PORTA, 8, PIO_COM, PIN_ATTR_NONE, No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE },
9893
{ PORTA, 9, PIO_COM, PIN_ATTR_NONE, No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE },
9994
{ PORTA, 10, PIO_COM, PIN_ATTR_NONE, No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE },
10095
{ PORTA, 11, PIO_COM, PIN_ATTR_NONE, No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE },
10196

102-
// 43..47 - TFT SPI port + control pins
97+
// 41..46 - TFT SPI port + control pins
10398
// --------------------
10499
{ PORTB, 15, PIO_SERCOM, PIN_ATTR_DIGITAL, No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_15 }, // SERCOM 4.3 MOSI
105100
{ PORTB, 13, PIO_SERCOM, PIN_ATTR_DIGITAL, No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_13 }, // SERCOM 4.1 SCK
106-
{ PORTB, 12, PIO_SERCOM, PIN_ATTR_DIGITAL, No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_12 }, // D45 TFT CS
107-
{ PORTB, 5, PIO_DIGITAL, PIN_ATTR_DIGITAL, No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_5 }, // D46 TFT DC
108-
{ PORTA, 0, PIO_DIGITAL, PIN_ATTR_PWM_E, No_ADC_Channel, TC2_CH0, TC2_CH0, EXTERNAL_INT_0 }, // D47 TFT RST
109-
110-
// 48 - backlight
111-
{ PORTA, 1, PIO_DIGITAL, PIN_ATTR_PWM_E, No_ADC_Channel, TC2_CH1, TC2_CH1, EXTERNAL_INT_1 }, // D48 TFT BACKLITE
112-
113-
// 49..51 - button control
114-
{ PORTB, 31, PIO_DIGITAL, PIN_ATTR_DIGITAL, No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_15 }, // D49 button clock
115-
{ PORTB, 30, PIO_DIGITAL, PIN_ATTR_DIGITAL, No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_14 }, // D50 button data
116-
{ PORTB, 0, PIO_DIGITAL, PIN_ATTR_DIGITAL, No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_0 }, // D51 button latch
101+
{ PORTB, 12, PIO_SERCOM, PIN_ATTR_DIGITAL, No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_12 }, // SERCOM 4.0 'miso' (NC)
102+
{ PORTB, 12, PIO_DIGITAL, PIN_ATTR_DIGITAL, No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_12 }, // D44 TFT CS
103+
{ PORTB, 5, PIO_DIGITAL, PIN_ATTR_DIGITAL, No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_5 }, // D45 TFT DC
104+
{ PORTA, 0, PIO_DIGITAL, PIN_ATTR_PWM_E, No_ADC_Channel, TC2_CH0, TC2_CH0, EXTERNAL_INT_0 }, // D46 TFT RST
105+
106+
// 47 - backlight
107+
{ PORTA, 1, PIO_DIGITAL, PIN_ATTR_PWM_E, No_ADC_Channel, TC2_CH1, TC2_CH1, EXTERNAL_INT_1 }, // D47 TFT BACKLITE
108+
109+
// 48 - button control
110+
{ PORTB, 31, PIO_DIGITAL, PIN_ATTR_DIGITAL, No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_15 }, // D48 button clock
111+
{ PORTB, 30, PIO_DIGITAL, PIN_ATTR_DIGITAL, No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_14 }, // D49 button data
112+
{ PORTB, 0, PIO_DIGITAL, PIN_ATTR_DIGITAL, No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_0 }, // D50 button latch
117113

118-
// D52 Speaker enable
114+
// D51 Speaker enable
119115
{ PORTA, 27, PIO_DIGITAL, PIN_ATTR_NONE, No_ADC_Channel, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE },
116+
117+
// ----------------------
118+
// D52..D53 - Alternate use of A0 (DAC outputs)
119+
{ PORTA, 2, PIO_ANALOG, PIN_ATTR_ANALOG, DAC_Channel0, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, // DAC/VOUT0
120+
{ PORTA, 5, PIO_ANALOG, PIN_ATTR_ANALOG, DAC_Channel1, NOT_ON_PWM, NOT_ON_TIMER, EXTERNAL_INT_NONE }, // DAC/VOUT1
121+
120122
} ;
121123

122124
const void* g_apTCInstances[TCC_INST_NUM+TC_INST_NUM]={ TCC0, TCC1, TCC2, TCC3, TCC4, TC0, TC1, TC2, TC3, TC4, TC5 } ;

variants/pygamer_m4/variant.h

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
#define VARIANT_MAINOSC (32768ul)
3131

3232
/** Master clock frequency */
33-
#define VARIANT_MCK (F_CPU)
33+
#define VARIANT_MCK (F_CPU)
3434

3535
#define VARIANT_GCLK0_FREQ (F_CPU)
3636
#define VARIANT_GCLK1_FREQ (48000000UL)
@@ -57,7 +57,7 @@ extern "C"
5757
*----------------------------------------------------------------------------*/
5858

5959
// Number of pins defined in PinDescription array
60-
#define PINS_COUNT (53u)
60+
#define PINS_COUNT (54u)
6161
#define NUM_DIGITAL_PINS (25u)
6262
#define NUM_ANALOG_INPUTS (12u)
6363
#define NUM_ANALOG_OUTPUTS (2u)
@@ -142,27 +142,27 @@ static const uint8_t ATN = PIN_ATN;
142142
*/
143143
#define SPI_INTERFACES_COUNT 2
144144

145-
#define PIN_SPI_MISO (28u)
146-
#define PIN_SPI_MOSI (29u)
147-
#define PIN_SPI_SCK (30u)
145+
#define PIN_SPI_MISO (26u)
146+
#define PIN_SPI_MOSI (27u)
147+
#define PIN_SPI_SCK (28u)
148148
#define PERIPH_SPI sercom1
149149
#define PAD_SPI_TX SPI_PAD_3_SCK_1
150150
#define PAD_SPI_RX SERCOM_RX_PAD_2
151151

152-
static const uint8_t SS = 4; // SERCOM1 last PAD is present on d9 but HW SS isn't used. Set here only for reference.
152+
static const uint8_t SS = 4 ; // SD card CS
153153
static const uint8_t MOSI = PIN_SPI_MOSI ;
154154
static const uint8_t MISO = PIN_SPI_MISO ;
155155
static const uint8_t SCK = PIN_SPI_SCK ;
156156

157157
// Internal SPI for TFT
158-
#define PIN_SPI1_MOSI (43u)
159-
#define PIN_SPI1_SCK (44u)
158+
#define PIN_SPI1_MOSI (41u)
159+
#define PIN_SPI1_SCK (42u)
160160
#define PIN_SPI1_MISO (0u)
161161
#define PERIPH_SPI1 sercom4
162162
#define PAD_SPI1_TX SPI_PAD_3_SCK_1
163163
#define PAD_SPI1_RX SERCOM_RX_PAD_0
164164

165-
static const uint8_t SS1 = 45 ;
165+
static const uint8_t SS1 = 44 ;
166166
static const uint8_t MOSI1 = PIN_SPI1_MOSI ;
167167
static const uint8_t MISO1 = PIN_SPI1_MISO ;
168168
static const uint8_t SCK1 = PIN_SPI1_SCK ;
@@ -194,12 +194,12 @@ static const uint8_t SCL = PIN_WIRE_SCL;
194194

195195

196196
//QSPI Pins
197-
#define PIN_QSPI_SCK (37u)
198-
#define PIN_QSPI_CS (38u)
199-
#define PIN_QSPI_IO0 (39u)
200-
#define PIN_QSPI_IO1 (40u)
201-
#define PIN_QSPI_IO2 (41u)
202-
#define PIN_QSPI_IO3 (42u)
197+
#define PIN_QSPI_SCK (35u)
198+
#define PIN_QSPI_CS (36u)
199+
#define PIN_QSPI_IO0 (37u)
200+
#define PIN_QSPI_IO1 (38u)
201+
#define PIN_QSPI_IO2 (39u)
202+
#define PIN_QSPI_IO3 (40u)
203203

204204
#if !defined(VARIANT_QSPI_BAUD_DEFAULT)
205205
// TODO: meaningful value for this

0 commit comments

Comments
 (0)