Skip to content

Commit 8581ee3

Browse files
authored
Merge pull request #844 from matt-land/feature-default-spi-circuit-playground
Feature: 'default' SPI support for atmel-samd boards
2 parents 91db71e + c846f4b commit 8581ee3

File tree

37 files changed

+113
-4
lines changed

37 files changed

+113
-4
lines changed

ports/atmel-samd/board_busses.c

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
*/
2626

2727
#include "shared-bindings/busio/I2C.h"
28+
#include "shared-bindings/busio/SPI.h"
2829
#include "shared-bindings/microcontroller/Pin.h"
2930
#include "mpconfigboard.h"
3031
#include "pins.h"
@@ -60,3 +61,30 @@
6061
#endif
6162

6263
MP_DEFINE_CONST_FUN_OBJ_0(board_i2c_obj, board_i2c);
64+
65+
#if !defined(DEFAULT_SPI_BUS_SCK) || !defined(DEFAULT_SPI_BUS_MISO) || !defined(DEFAULT_SPI_BUS_MOSI)
66+
STATIC mp_obj_t board_spi(void) {
67+
mp_raise_NotImplementedError("No default SPI bus");
68+
return NULL;
69+
}
70+
#else
71+
STATIC mp_obj_t spi_singleton = NULL;
72+
73+
STATIC mp_obj_t board_spi(void) {
74+
75+
if (spi_singleton == NULL) {
76+
busio_spi_obj_t *self = m_new_obj(busio_spi_obj_t);
77+
self->base.type = &busio_spi_type;
78+
assert_pin_free(DEFAULT_SPI_BUS_SCK);
79+
assert_pin_free(DEFAULT_SPI_BUS_MOSI);
80+
assert_pin_free(DEFAULT_SPI_BUS_MISO);
81+
const mcu_pin_obj_t* clock = MP_OBJ_TO_PTR(DEFAULT_SPI_BUS_SCK);
82+
const mcu_pin_obj_t* mosi = MP_OBJ_TO_PTR(DEFAULT_SPI_BUS_MOSI);
83+
const mcu_pin_obj_t* miso = MP_OBJ_TO_PTR(DEFAULT_SPI_BUS_MISO);
84+
common_hal_busio_spi_construct(self, clock, mosi, miso);
85+
spi_singleton = (mp_obj_t)self;
86+
}
87+
return spi_singleton;
88+
}
89+
#endif
90+
MP_DEFINE_CONST_FUN_OBJ_0(board_spi_obj, board_spi);

ports/atmel-samd/board_busses.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,4 +30,7 @@
3030
void board_i2c(void);
3131
extern mp_obj_fun_builtin_fixed_t board_i2c_obj;
3232

33+
void board_spi(void);
34+
extern mp_obj_fun_builtin_fixed_t board_spi_obj;
35+
3336
#endif // MICROPY_INCLUDED_ATMEL_SAMD_BOARD_BUSSES_H

ports/atmel-samd/boards/arduino_zero/mpconfigboard.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,3 +17,7 @@
1717

1818
#define DEFAULT_I2C_BUS_SCL (&pin_PA23)
1919
#define DEFAULT_I2C_BUS_SDA (&pin_PA22)
20+
21+
#define DEFAULT_SPI_BUS_SCK (&pin_PB11)
22+
#define DEFAULT_SPI_BUS_MOSI (&pin_PB10)
23+
#define DEFAULT_SPI_BUS_MISO (&pin_PA12)

ports/atmel-samd/boards/arduino_zero/pins.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,5 +33,6 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
3333
{ MP_ROM_QSTR(MP_QSTR_MOSI), MP_ROM_PTR(&pin_PB10) },
3434
{ MP_ROM_QSTR(MP_QSTR_MISO), MP_ROM_PTR(&pin_PA12) },
3535
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
36+
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
3637
};
3738
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);

ports/atmel-samd/boards/circuitplayground_express/mpconfigboard.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,3 +61,7 @@
6161

6262
#define DEFAULT_I2C_BUS_SCL (&pin_PB03)
6363
#define DEFAULT_I2C_BUS_SDA (&pin_PB02)
64+
65+
#define DEFAULT_SPI_BUS_SCK (&pin_PA05)
66+
#define DEFAULT_SPI_BUS_MOSI (&pin_PA07)
67+
#define DEFAULT_SPI_BUS_MISO (&pin_PA06)

ports/atmel-samd/boards/circuitplayground_express/pins.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,5 +58,6 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
5858
{ MP_ROM_QSTR(MP_QSTR_MOSI), MP_ROM_PTR(&pin_PA07) },
5959
{ MP_ROM_QSTR(MP_QSTR_MISO), MP_ROM_PTR(&pin_PA06) },
6060
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
61+
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
6162
};
6263
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);

ports/atmel-samd/boards/feather_m0_adalogger/mpconfigboard.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,3 +15,7 @@
1515

1616
#define DEFAULT_I2C_BUS_SCL (&pin_PA22)
1717
#define DEFAULT_I2C_BUS_SDA (&pin_PA23)
18+
19+
#define DEFAULT_SPI_BUS_SCK (&pin_PB11)
20+
#define DEFAULT_SPI_BUS_MOSI (&pin_PB10)
21+
#define DEFAULT_SPI_BUS_MISO (&pin_PA12)

ports/atmel-samd/boards/feather_m0_adalogger/pins.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,5 +32,6 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
3232
{ MP_ROM_QSTR(MP_QSTR_D13), MP_ROM_PTR(&pin_PA17) },
3333
{ MP_ROM_QSTR(MP_QSTR_RED_LED), MP_ROM_PTR(&pin_PA17) },
3434
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
35+
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
3536
};
3637
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);

ports/atmel-samd/boards/feather_m0_basic/mpconfigboard.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,3 +16,7 @@
1616

1717
#define DEFAULT_I2C_BUS_SCL (&pin_PA23)
1818
#define DEFAULT_I2C_BUS_SDA (&pin_PA22)
19+
20+
#define DEFAULT_SPI_BUS_SCK (&pin_PB11)
21+
#define DEFAULT_SPI_BUS_MOSI (&pin_PB10)
22+
#define DEFAULT_SPI_BUS_MISO (&pin_PA12)

ports/atmel-samd/boards/feather_m0_basic/pins.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,5 +25,6 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
2525
{ MP_ROM_QSTR(MP_QSTR_D12), MP_ROM_PTR(&pin_PA19) },
2626
{ MP_ROM_QSTR(MP_QSTR_D13), MP_ROM_PTR(&pin_PA17) },
2727
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
28+
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
2829
};
2930
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);

ports/atmel-samd/boards/feather_m0_express/mpconfigboard.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,3 +51,7 @@
5151

5252
#define DEFAULT_I2C_BUS_SCL (&pin_PA23)
5353
#define DEFAULT_I2C_BUS_SDA (&pin_PA22)
54+
55+
#define DEFAULT_SPI_BUS_SCK (&pin_PB11)
56+
#define DEFAULT_SPI_BUS_MOSI (&pin_PB10)
57+
#define DEFAULT_SPI_BUS_MISO (&pin_PA12)

ports/atmel-samd/boards/feather_m0_express/pins.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,5 +26,6 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
2626
{ MP_ROM_QSTR(MP_QSTR_D13), MP_ROM_PTR(&pin_PA17) },
2727
{ MP_ROM_QSTR(MP_QSTR_NEOPIXEL), MP_ROM_PTR(&pin_PA06) },
2828
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
29+
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
2930
};
3031
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);

ports/atmel-samd/boards/feather_m0_rfm69/mpconfigboard.h

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,9 @@
1414

1515
#define BOARD_FLASH_SIZE (0x00040000 - 0x2000 - 0x010000)
1616

17-
// https://learn.adafruit.com/assets/46254
18-
// https://learn.adafruit.com/assets/46255
1917
#define DEFAULT_I2C_BUS_SCL (&pin_PA23)
2018
#define DEFAULT_I2C_BUS_SDA (&pin_PA22)
19+
20+
#define DEFAULT_SPI_BUS_SCK (&pin_PB11)
21+
#define DEFAULT_SPI_BUS_MOSI (&pin_PB10)
22+
#define DEFAULT_SPI_BUS_MISO (&pin_PA12)

ports/atmel-samd/boards/feather_m0_rfm69/pins.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,5 +28,6 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
2828
{ MP_ROM_QSTR(MP_QSTR_RFM69_RST), MP_ROM_PTR(&pin_PA08) },
2929
{ MP_ROM_QSTR(MP_QSTR_RFM69_CS), MP_ROM_PTR(&pin_PA06) },
3030
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
31+
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
3132
};
3233
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);

ports/atmel-samd/boards/feather_m0_rfm9x/mpconfigboard.h

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,9 @@
1414

1515
#define BOARD_FLASH_SIZE (0x00040000 - 0x2000 - 0x010000)
1616

17-
// https://learn.adafruit.com/assets/46254
18-
// https://learn.adafruit.com/assets/46255
1917
#define DEFAULT_I2C_BUS_SCL (&pin_PA23)
2018
#define DEFAULT_I2C_BUS_SDA (&pin_PA22)
2119

20+
#define DEFAULT_SPI_BUS_SCK (&pin_PB11)
21+
#define DEFAULT_SPI_BUS_MOSI (&pin_PB10)
22+
#define DEFAULT_SPI_BUS_MISO (&pin_PA12)

ports/atmel-samd/boards/feather_m0_rfm9x/pins.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,5 +28,6 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
2828
{ MP_ROM_QSTR(MP_QSTR_RFM9X_RST), MP_ROM_PTR(&pin_PA08) },
2929
{ MP_ROM_QSTR(MP_QSTR_RFM9X_CS), MP_ROM_PTR(&pin_PA06) },
3030
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
31+
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
3132
};
3233
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);

ports/atmel-samd/boards/feather_m0_supersized/mpconfigboard.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,3 +50,7 @@
5050

5151
#define DEFAULT_I2C_BUS_SCL (&pin_PA23)
5252
#define DEFAULT_I2C_BUS_SDA (&pin_PA22)
53+
54+
#define DEFAULT_SPI_BUS_SCK (&pin_PB11)
55+
#define DEFAULT_SPI_BUS_MOSI (&pin_PB10)
56+
#define DEFAULT_SPI_BUS_MISO (&pin_PA12)

ports/atmel-samd/boards/feather_m0_supersized/pins.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,5 +26,6 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
2626
{ MP_ROM_QSTR(MP_QSTR_D13), MP_ROM_PTR(&pin_PA17) },
2727
{ MP_ROM_QSTR(MP_QSTR_NEOPIXEL), MP_ROM_PTR(&pin_PA06) },
2828
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
29+
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
2930
};
3031
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);

ports/atmel-samd/boards/feather_m4_express/mpconfigboard.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,3 +34,7 @@
3434

3535
#define DEFAULT_I2C_BUS_SCL (&pin_PA13)
3636
#define DEFAULT_I2C_BUS_SDA (&pin_PA12)
37+
38+
#define DEFAULT_SPI_BUS_SCK (&pin_PA17)
39+
#define DEFAULT_SPI_BUS_MOSI (&pin_PA19)
40+
#define DEFAULT_SPI_BUS_MISO (&pin_PA18)

ports/atmel-samd/boards/feather_m4_express/pins.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,5 +28,6 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
2828
{ MP_ROM_QSTR(MP_QSTR_D13), MP_ROM_PTR(&pin_PA23) },
2929
{ MP_ROM_QSTR(MP_QSTR_NEOPIXEL), MP_ROM_PTR(&pin_PB23) },
3030
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
31+
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
3132
};
3233
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);

ports/atmel-samd/boards/gemma_m0/pins.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,5 +21,6 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
2121
{ MP_ROM_QSTR(MP_QSTR_APA102_MOSI), MP_ROM_PTR(&pin_PA00) },
2222
{ MP_ROM_QSTR(MP_QSTR_APA102_SCK), MP_ROM_PTR(&pin_PA01) },
2323
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
24+
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
2425
};
2526
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);

ports/atmel-samd/boards/itsybitsy_m0_express/mpconfigboard.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,3 +49,7 @@
4949

5050
#define DEFAULT_I2C_BUS_SCL (&pin_PA23)
5151
#define DEFAULT_I2C_BUS_SDA (&pin_PA22)
52+
53+
#define DEFAULT_SPI_BUS_SCK (&pin_PB11)
54+
#define DEFAULT_SPI_BUS_MOSI (&pin_PB10)
55+
#define DEFAULT_SPI_BUS_MISO (&pin_PA12)

ports/atmel-samd/boards/itsybitsy_m0_express/pins.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,5 +40,6 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
4040
{ MP_ROM_QSTR(MP_QSTR_APA102_MOSI), MP_ROM_PTR(&pin_PA01) },
4141
{ MP_ROM_QSTR(MP_QSTR_APA102_SCK), MP_ROM_PTR(&pin_PA00) },
4242
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
43+
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
4344
};
4445
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);

ports/atmel-samd/boards/itsybitsy_m4_express/mpconfigboard.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,3 +34,7 @@
3434

3535
#define DEFAULT_I2C_BUS_SCL (&pin_PA13)
3636
#define DEFAULT_I2C_BUS_SDA (&pin_PA12)
37+
38+
#define DEFAULT_SPI_BUS_SCK (&pin_PA01)
39+
#define DEFAULT_SPI_BUS_MOSI (&pin_PA00)
40+
#define DEFAULT_SPI_BUS_MISO (&pin_PB23)

ports/atmel-samd/boards/itsybitsy_m4_express/pins.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,5 +37,6 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
3737
{ MP_ROM_QSTR(MP_QSTR_APA102_MOSI), MP_ROM_PTR(&pin_PB03) },
3838
{ MP_ROM_QSTR(MP_QSTR_APA102_SCK), MP_ROM_PTR(&pin_PB02) },
3939
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
40+
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
4041
};
4142
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);

ports/atmel-samd/boards/metro_m0_express/mpconfigboard.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,3 +52,7 @@
5252

5353
#define DEFAULT_I2C_BUS_SCL (&pin_PA23)
5454
#define DEFAULT_I2C_BUS_SDA (&pin_PA22)
55+
56+
#define DEFAULT_SPI_BUS_SCK (&pin_PB11)
57+
#define DEFAULT_SPI_BUS_MOSI (&pin_PB10)
58+
#define DEFAULT_SPI_BUS_MISO (&pin_PA12)

ports/atmel-samd/boards/metro_m0_express/pins.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,5 +31,6 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
3131
{ MP_ROM_QSTR(MP_QSTR_MOSI), MP_ROM_PTR(&pin_PB10) },
3232
{ MP_ROM_QSTR(MP_QSTR_MISO), MP_ROM_PTR(&pin_PA12) },
3333
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
34+
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
3435
};
3536
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);

ports/atmel-samd/boards/metro_m4_express/mpconfigboard.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,3 +35,7 @@
3535

3636
#define DEFAULT_I2C_BUS_SCL (&pin_PB03)
3737
#define DEFAULT_I2C_BUS_SDA (&pin_PB02)
38+
39+
#define DEFAULT_SPI_BUS_SCK (&pin_PA13)
40+
#define DEFAULT_SPI_BUS_MOSI (&pin_PA12)
41+
#define DEFAULT_SPI_BUS_MISO (&pin_PA14)

ports/atmel-samd/boards/metro_m4_express/pins.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,5 +43,6 @@ STATIC const mp_map_elem_t board_global_dict_table[] = {
4343
{ MP_OBJ_NEW_QSTR(MP_QSTR_LED_RX), (mp_obj_t)&pin_PB06 },
4444
{ MP_OBJ_NEW_QSTR(MP_QSTR_LED_TX), (mp_obj_t)&pin_PA27 },
4545
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
46+
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
4647
};
4748
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);

ports/atmel-samd/boards/metro_m4_express_revb/mpconfigboard.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,3 +63,7 @@
6363

6464
#define DEFAULT_I2C_BUS_SCL (&pin_PB03)
6565
#define DEFAULT_I2C_BUS_SDA (&pin_PB02)
66+
67+
#define DEFAULT_SPI_BUS_SCK (&pin_PA13)
68+
#define DEFAULT_SPI_BUS_MOSI (&pin_PA12)
69+
#define DEFAULT_SPI_BUS_MISO (&pin_PA15)

ports/atmel-samd/boards/metro_m4_express_revb/pins.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,5 +42,6 @@ STATIC const mp_map_elem_t board_global_dict_table[] = {
4242
{ MP_OBJ_NEW_QSTR(MP_QSTR_LED_RX), (mp_obj_t)&pin_PB06 },
4343
{ MP_OBJ_NEW_QSTR(MP_QSTR_LED_TX), (mp_obj_t)&pin_PA27 },
4444
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
45+
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
4546
};
4647
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);

ports/atmel-samd/boards/pirkey_m0/pins.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,6 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
77
{ MP_ROM_QSTR(MP_QSTR_APA102_MOSI), MP_ROM_PTR(&pin_PA00) },
88
{ MP_ROM_QSTR(MP_QSTR_APA102_SCK), MP_ROM_PTR(&pin_PA01) },
99
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
10+
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
1011
};
1112
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);

ports/atmel-samd/boards/trinket_m0/mpconfigboard.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,3 +59,7 @@
5959

6060
#define DEFAULT_I2C_BUS_SCL (&pin_PA09)
6161
#define DEFAULT_I2C_BUS_SDA (&pin_PA08)
62+
63+
#define DEFAULT_SPI_BUS_SCK (&pin_PA07)
64+
#define DEFAULT_SPI_BUS_MOSI (&pin_PA06)
65+
#define DEFAULT_SPI_BUS_MISO (&pin_PA09)

ports/atmel-samd/boards/trinket_m0/pins.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,5 +29,6 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
2929
{ MP_ROM_QSTR(MP_QSTR_APA102_MOSI), MP_ROM_PTR(&pin_PA00) },
3030
{ MP_ROM_QSTR(MP_QSTR_APA102_SCK), MP_ROM_PTR(&pin_PA01) },
3131
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
32+
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
3233
};
3334
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);

ports/atmel-samd/boards/trinket_m0_haxpress/mpconfigboard.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,3 +57,7 @@
5757

5858
#define DEFAULT_I2C_BUS_SCL (&pin_PA09)
5959
#define DEFAULT_I2C_BUS_SDA (&pin_PA08)
60+
61+
#define DEFAULT_SPI_BUS_SCK (&pin_PA07)
62+
#define DEFAULT_SPI_BUS_MOSI (&pin_PA06)
63+
#define DEFAULT_SPI_BUS_MISO (&pin_PA09)

ports/atmel-samd/boards/trinket_m0_haxpress/pins.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,5 +29,6 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
2929
{ MP_ROM_QSTR(MP_QSTR_APA102_MOSI), MP_ROM_PTR(&pin_PA00) },
3030
{ MP_ROM_QSTR(MP_QSTR_APA102_SCK), MP_ROM_PTR(&pin_PA01) },
3131
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
32+
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
3233
};
3334
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);

ports/atmel-samd/boards/ugame10/pins.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,5 +25,6 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
2525
{ MP_ROM_QSTR(MP_QSTR_C), MP_ROM_PTR(&pin_PA15) },
2626
{ MP_ROM_QSTR(MP_QSTR_D), MP_ROM_PTR(&pin_PA28) },
2727
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
28+
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
2829
};
2930
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);

0 commit comments

Comments
 (0)