8000 Merge pull request #9982 from SamantazFox/teensy-can · adafruit/circuitpython@04d9c53 · GitHub
[go: up one dir, main page]

Skip to content

Commit 04d9c53

Browse files
authored
Merge pull request #9982 from SamantazFox/teensy-can
canio: Add support for i.MX 10xx series of chips
2 parents 25ef665 + 69c88eb commit 04d9c53

File tree

15 files changed

+814
-2
lines changed

15 files changed

+814
-2
lines changed

locale/circuitpython.pot

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1019,6 +1019,7 @@ msgstr ""
10191019

10201020
#: ports/atmel-samd/common-hal/canio/Listener.c
10211021
#: ports/espressif/common-hal/canio/Listener.c
1022+
#: ports/mimxrt10xx/common-hal/canio/Listener.c
10221023
#: ports/stm/common-hal/canio/Listener.c
10231024
msgid "Filters too complex"
10241025
msgstr ""
@@ -2140,6 +2141,10 @@ msgstr ""
21402141
msgid "Unable to read color palette data"
21412142
msgstr ""
21422143

2144+
#: ports/mimxrt10xx/common-hal/canio/CAN.c
2145+
msgid "Unable to send CAN Message: all Tx message buffers are busy"
2146+
msgstr ""
2147+
21432148
#: ports/espressif/common-hal/mdns/Server.c
21442149
#: ports/raspberrypi/common-hal/mdns/Server.c
21452150
msgid "Unable to start mDNS query"

ports/mimxrt10xx/Makefile

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,10 @@ SRC_SDK += drivers/adc_12b1msps_sar/fsl_adc.c \
126126
drivers/tempmon/fsl_tempmon.c
127127
endif
128128

129+
ifeq ($(CIRCUITPY_CANIO), 1)
130+
SRC_SDK += drivers/flexcan/fsl_flexcan.c
131+
endif
132+
129133
ifeq ($(CHIP_FAMILY), MIMXRT1176)
130134
SRC_SDK += devices/$(CHIP_FAMILY)/drivers/fsl_anatop_ai.c \
131135
devices/$(CHIP_FAMILY)/drivers/fsl_dcdc.c \

ports/mimxrt10xx/boards/teensy41/mpconfigboard.mk

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,6 @@ CHIP_VARIANT = MIMXRT1062DVJ6A
77
CHIP_FAMILY = MIMXRT1062
88
FLASH = W25Q64JV
99
CIRCUITPY__EVE = 1
10+
CIRCUITPY_CANIO = 1
1011
CIRCUITPY_USB_HOST = 1
1112
CIRCUITPY_SETTABLE_PROCESSOR_FREQUENCY = 1

ports/mimxrt10xx/boards/teensy41/pins.c

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -179,5 +179,23 @@ static const mp_rom_map_elem_t board_module_globals_table[] = {
179179
{MP_OBJ_NEW_QSTR(MP_QSTR_TX7), MP_ROM_PTR(&pin_GPIO_EMC_31)},
180180
{MP_OBJ_NEW_QSTR(MP_QSTR_RX8), MP_ROM_PTR(&pin_GPIO_B1_13)},
181181
{MP_OBJ_NEW_QSTR(MP_QSTR_TX8), MP_ROM_PTR(&pin_GPIO_B1_12)},
182+
183+
// CAN and CAN-FD
184+
{MP_OBJ_NEW_QSTR(MP_QSTR_CAN1_RX), MP_ROM_PTR(&pin_GPIO_AD_B1_09)},
185+
{MP_OBJ_NEW_QSTR(MP_QSTR_CAN1_TX), MP_ROM_PTR(&pin_GPIO_AD_B1_08)},
186+
187+
{MP_OBJ_NEW_QSTR(MP_QSTR_CAN2_RX), MP_ROM_PTR(&pin_GPIO_AD_B0_03)},
188+
{MP_OBJ_NEW_QSTR(MP_QSTR_CAN2_TX), MP_ROM_PTR(&pin_GPIO_AD_B0_02)},
189+
190+
{MP_OBJ_NEW_QSTR(MP_QSTR_CAN3_RX), MP_ROM_PTR(&pin_GPIO_EMC_37)},
191+
{MP_OBJ_NEW_QSTR(MP_QSTR_CAN3_TX), MP_ROM_PTR(&pin_GPIO_EMC_36)},
192+
193+
// "CAN" is an alias for CAN1
194+
{MP_OBJ_NEW_QSTR(MP_QSTR_CAN_RX), MP_ROM_PTR(&pin_GPIO_AD_B1_09)},
195+
{MP_OBJ_NEW_QSTR(MP_QSTR_CAN_TX), MP_ROM_PTR(&pin_GPIO_AD_B1_08)},
196+
197+
// "CANFD" is an alias for CAN3
198+
{MP_OBJ_NEW_QSTR(MP_QSTR_CANFD_RX), MP_ROM_PTR(&pin_GPIO_EMC_37)},
199+
{MP_OBJ_NEW_QSTR(MP_QSTR_CANFD_TX), MP_ROM_PTR(&pin_GPIO_EMC_36)},
182200
};
183201
MP_DEFINE_CONST_DICT(board_module_globals, board_module_globals_table);

0 commit comments

Comments
 (0)
0