Skip to content

Commit 9710ef0

Browse files
committed
matrixportal_m4: Add board.MTX_ADDRESS and board.MTX_COMMON
This eases using the RGBMatrix constructor and matches the Matrixportal S3.
1 parent 9b20e31 commit 9710ef0

File tree

1 file changed

+38
-0
lines changed
  • ports/atmel-samd/boards/matrixportal_m4

1 file changed

+38
-0
lines changed

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

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,40 @@
11
#include "shared-bindings/board/__init__.h"
22

3+
STATIC const mp_rom_obj_tuple_t matrix_addr_tuple = {
4+
{&mp_type_tuple},
5+
5,
6+
{
7+
MP_ROM_PTR(&pin_PB07),
8+
MP_ROM_PTR(&pin_PB08),
9+
MP_ROM_PTR(&pin_PB09),
10+
MP_ROM_PTR(&pin_PB15),
11+
MP_ROM_PTR(&pin_PB13),
12+
}
13+
};
14+
15+
STATIC const mp_rom_obj_tuple_t matrix_data_tuple = {
16+
{&mp_type_tuple},
17+
6,
18+
{
19+
MP_ROM_PTR(&pin_PB00),
20+
MP_ROM_PTR(&pin_PB01),
21+
MP_ROM_PTR(&pin_PB02),
22+
23+
MP_ROM_PTR(&pin_PB03),
24+
MP_ROM_PTR(&pin_PB04),
25+
MP_ROM_PTR(&pin_PB05),
26+
}
27+
};
28+
29+
STATIC const mp_rom_map_elem_t matrix_common_table[] = {
30+
{ MP_OBJ_NEW_QSTR(MP_QSTR_rgb_pins),MP_ROM_PTR(&matrix_data_tuple) },
31+
{ MP_OBJ_NEW_QSTR(MP_QSTR_clock_pin),MP_ROM_PTR(&pin_PB06) },
32+
{ MP_OBJ_NEW_QSTR(MP_QSTR_latch_pin),MP_ROM_PTR(&pin_PB14) },
33+
{ MP_OBJ_NEW_QSTR(MP_QSTR_output_enable_pin),MP_ROM_PTR(&pin_PB12) },
34+
};
35+
MP_DEFINE_CONST_DICT(matrix_common_dict, matrix_common_table);
36+
37+
338
STATIC const mp_rom_map_elem_t board_module_globals_table[] = {
439
CIRCUITPYTHON_BOARD_DICT_STANDARD_ITEMS
540

@@ -30,6 +65,9 @@ STATIC const mp_rom_map_elem_t board_module_globals_table[] = {
3065
{ MP_OBJ_NEW_QSTR(MP_QSTR_MOSI),MP_ROM_PTR(&pin_PA19) },
3166
{ MP_OBJ_NEW_QSTR(MP_QSTR_MISO),MP_ROM_PTR(&pin_PA17) },
3267

68+
{ MP_OBJ_NEW_QSTR(MP_QSTR_MTX_ADDRESS),MP_ROM_PTR(&matrix_addr_tuple) },
69+
{ MP_OBJ_NEW_QSTR(MP_QSTR_MTX_COMMON),MP_ROM_PTR(&matrix_common_dict) },
70+
3371
{ MP_OBJ_NEW_QSTR(MP_QSTR_MTX_R1),MP_ROM_PTR(&pin_PB00) },
3472
{ MP_OBJ_NEW_QSTR(MP_QSTR_MTX_G1),MP_ROM_PTR(&pin_PB01) },
3573
{ MP_OBJ_NEW_QSTR(MP_QSTR_MTX_B1),MP_ROM_PTR(&pin_PB02) },

0 commit comments

Comments
 (0)