Skip to content

Commit 992d50a

Browse files
committed
Fix up available SPI buses; swap I2C pins
1 parent a9c9aa5 commit 992d50a

File tree

2 files changed

+30
-22
lines changed

2 files changed

+30
-22
lines changed

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

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -14,18 +14,16 @@
1414
#define IGNORE_PIN_PA24 1
1515
#define IGNORE_PIN_PA25 1
1616

17-
#define DEFAULT_I2C_BUS_SCL (&pin_PB31)
18-
#define DEFAULT_I2C_BUS_SDA (&pin_PB30)
19-
20-
#define LCD_SPI_BUS_SCK (&pin_PA05)
21-
#define LCD_SPI_BUS_MOSI (&pin_PA04)
22-
#define LCD_SPI_BUS_CS (&pin_PA07)
23-
#define LCD_BACKLIGHT (&pin_PA06)
24-
25-
#define SDCARD_SPI_BUS_SCK (&pin_PA17)
26-
#define SDCARD_SPI_BUS_MOSI (&pin_PA16)
27-
#define SDCARD_SPI_BUS_MISO (&pin_PA18)
28-
#define SDCARD_SPI_BUS_CS (&pin_PA19)
17+
#define DEFAULT_I2C_BUS_SCL (&pin_PB30)
18+
#define DEFAULT_I2C_BUS_SDA (&pin_PB31)
19+
20+
#define CIRCUITPY_BOARD_SPI (3)
21+
// These correspond to the CIRCUITPY_BOARD_BUS_SINGLETON definitions in pins.c
22+
#define CIRCUITPY_BOARD_SPI_PIN { \
23+
{.clock = &pin_PB03, .mosi = &pin_PB02, .miso = &pin_PB00}, /*board.SPI()*/ \
24+
{.clock = &pin_PA05, .mosi = &pin_PA04, .miso = NULL}, /*board.LCD_SPI()*/ \
25+
{.clock = &pin_PA17, .mosi = &pin_PA16, .miso = &pin_PA18}, /*board.SD_SPI()*/ \
26+
}
2927

3028
#define DEFAULT_CAN_BUS_TX (&pin_PB12)
3129
#define DEFAULT_CAN_BUS_RX (&pin_PB13)

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

Lines changed: 20 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,12 @@
66

77
#include "shared-bindings/board/__init__.h"
88

9+
// The singleton for board.SPI() is already defined.
10+
// board.LCD_SPI()
11+
CIRCUITPY_BOARD_BUS_SINGLETON(lcd_spi, spi, 1)
12+
// board.SD_SPI()
13+
CIRCUITPY_BOARD_BUS_SINGLETON(sd_spi, spi, 2)
14+
915
static const mp_rom_map_elem_t board_module_globals_table[] = {
1016
CIRCUITPYTHON_BOARD_DICT_STANDARD_ITEMS
1117

@@ -19,7 +25,7 @@ static const mp_rom_map_elem_t board_module_globals_table[] = {
1925
{ MP_ROM_QSTR(MP_QSTR_D7), MP_ROM_PTR(&pin_PB17) },
2026
{ MP_ROM_QSTR(MP_QSTR_D8), MP_ROM_PTR(&pin_PB22) },
2127
{ MP_ROM_QSTR(MP_QSTR_D13), MP_ROM_PTR(&pin_PB23) },
22-
28+
2329
{ MP_ROM_QSTR(MP_QSTR_LED), MP_ROM_PTR(&pin_PB23) },
2430

2531
{ MP_ROM_QSTR(MP_QSTR_NEOPIX), MP_ROM_PTR(&pin_PB22) },
@@ -41,8 +47,8 @@ static const mp_rom_map_elem_t board_module_globals_table[] = {
4147
{ MP_ROM_QSTR(MP_QSTR_LCD_MOSI), MP_ROM_PTR(&pin_PA04) },
4248
{ MP_ROM_QSTR(MP_QSTR_LCD_SCK), MP_ROM_PTR(&pin_PA05) },
4349

44-
{ MP_ROM_QSTR(MP_QSTR_SDA), MP_ROM_PTR(&pin_PB30) },
45-
{ MP_ROM_QSTR(MP_QSTR_SCL), MP_ROM_PTR(&pin_PB31) },
50+
{ MP_ROM_QSTR(MP_QSTR_SCL), MP_ROM_PTR(&pin_PB30) },
51+
{ MP_ROM_QSTR(MP_QSTR_SDA), MP_ROM_PTR(&pin_PB31) },
4652

4753
{ MP_ROM_QSTR(MP_QSTR_BLE_TX), MP_ROM_PTR(&pin_PA12) },
4854
{ MP_ROM_QSTR(MP_QSTR_BLE_RX), MP_ROM_PTR(&pin_PA13) },
@@ -53,9 +59,16 @@ static const mp_rom_map_elem_t board_module_globals_table[] = {
5359
{ MP_ROM_QSTR(MP_QSTR_SD_SCK), MP_ROM_PTR(&pin_PA17) },
5460
{ MP_ROM_QSTR(MP_QSTR_SD_CS), MP_ROM_PTR(&pin_PA19) },
5561

62+
{ MP_ROM_QSTR(MP_QSTR_MISO), MP_ROM_PTR(&pin_PB00) },
5663
{ MP_ROM_QSTR(MP_QSTR_SPARE_0), MP_ROM_PTR(&pin_PB00) },
64+
65+
{ MP_ROM_QSTR(MP_QSTR_CS), MP_ROM_PTR(&pin_PB01) },
5766
{ MP_ROM_QSTR(MP_QSTR_SPARE_1), MP_ROM_PTR(&pin_PB01) },
67+
68+
{ MP_ROM_QSTR(MP_QSTR_MOSI), MP_ROM_PTR(&pin_PB02) },
5869
{ MP_ROM_QSTR(MP_QSTR_SPARE_2), MP_ROM_PTR(&pin_PB02) },
70+
71+
{ MP_ROM_QSTR(MP_QSTR_SCK ), MP_ROM_PTR(&pin_PB03) },
5972
{ MP_ROM_QSTR(MP_QSTR_SPARE_3), MP_ROM_PTR(&pin_PB03) },
6073

6174
{ MP_ROM_QSTR(MP_QSTR_DEBUG_TX), MP_ROM_PTR(&pin_PA22) },
@@ -65,14 +78,11 @@ static const mp_rom_map_elem_t board_module_globals_table[] = {
6578
{ MP_OBJ_NEW_QSTR(MP_QSTR_CAN_TX), MP_ROM_PTR(&pin_PB12) },
6679
{ MP_OBJ_NEW_QSTR(MP_QSTR_CAN_STANDBY), MP_ROM_PTR(&pin_PB17) },
6780

68-
{ MP_ROM_QSTR(MP_QSTR_CAN_RX), MP_ROM_PTR(&pin_PB13) },
69-
{ MP_ROM_QSTR(MP_QSTR_CAN_TX), MP_ROM_PTR(&pin_PB12) },
70-
{ MP_ROM_QSTR(MP_QSTR_CAN_STANDBY), MP_ROM_PTR(&pin_PB17) },
71-
7281
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
73-
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
7482
{ MP_ROM_QSTR(MP_QSTR_UART), MP_ROM_PTR(&board_uart_obj) },
75-
{ MP_ROM_QSTR(MP_QSTR_SDSPI), MP_ROM_PTR(&board_sdspi_obj) },
76-
{ MP_ROM_QSTR(MP_QSTR_LCDSPI), MP_ROM_PTR(&board_lcdspi_obj) },
83+
84+
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
85+
{ MP_ROM_QSTR(MP_QSTR_LCD_SPI), MP_ROM_PTR(&board_lcd_spi_obj) },
86+
{ MP_ROM_QSTR(MP_QSTR_SD_SPI), MP_ROM_PTR(&board_sd_spi_obj) },
7787
};
7888
MP_DEFINE_CONST_DICT(board_module_globals, board_module_globals_table);

0 commit comments

Comments
 (0)