mirror of
https://github.com/RT-Thread/rt-thread.git
synced 2026-03-23 18:47:22 +08:00
feat[nxp][can]:add mcxa346 can device
Some checks failed
ToolsCI / Tools (push) Has been cancelled
RT-Thread BSP Static Build Check / 🔍 Summary of Git Diff Changes (push) Has been cancelled
RT-Thread BSP Static Build Check / ${{ matrix.legs.RTT_BSP }} (push) Has been cancelled
RT-Thread BSP Static Build Check / collect-artifacts (push) Has been cancelled
pkgs_test / change (push) Has been cancelled
utest_auto_run / A9 :components/dfs.cfg (push) Has been cancelled
utest_auto_run / A9 :components/lwip.cfg (push) Has been cancelled
utest_auto_run / A9 :components/netdev.cfg (push) Has been cancelled
utest_auto_run / A9 :components/sal.cfg (push) Has been cancelled
utest_auto_run / A9 :cpp11/cpp11.cfg (push) Has been cancelled
utest_auto_run / AARCH64-rtsmart :default.cfg (push) Has been cancelled
utest_auto_run / A9-rtsmart :default.cfg (push) Has been cancelled
utest_auto_run / RISCV-rtsmart :default.cfg (push) Has been cancelled
utest_auto_run / XUANTIE-rtsmart :default.cfg (push) Has been cancelled
utest_auto_run / AARCH64 :default.cfg (push) Has been cancelled
utest_auto_run / AARCH64-smp :default.cfg (push) Has been cancelled
utest_auto_run / A9 :default.cfg (push) Has been cancelled
utest_auto_run / A9-smp :default.cfg (push) Has been cancelled
utest_auto_run / RISCV :default.cfg (push) Has been cancelled
utest_auto_run / RISCV-smp :default.cfg (push) Has been cancelled
utest_auto_run / A9 :kernel/atomic_c11.cfg (push) Has been cancelled
utest_auto_run / RISCV :kernel/atomic_c11.cfg (push) Has been cancelled
utest_auto_run / A9 :kernel/ipc.cfg (push) Has been cancelled
utest_auto_run / A9 :kernel/kernel_basic.cfg (push) Has been cancelled
utest_auto_run / A9 :kernel/mem.cfg (push) Has been cancelled
doc_doxygen / doxygen_doc generate (push) Has been cancelled
doc_doxygen / deploy (push) Has been cancelled
Some checks failed
ToolsCI / Tools (push) Has been cancelled
RT-Thread BSP Static Build Check / 🔍 Summary of Git Diff Changes (push) Has been cancelled
RT-Thread BSP Static Build Check / ${{ matrix.legs.RTT_BSP }} (push) Has been cancelled
RT-Thread BSP Static Build Check / collect-artifacts (push) Has been cancelled
pkgs_test / change (push) Has been cancelled
utest_auto_run / A9 :components/dfs.cfg (push) Has been cancelled
utest_auto_run / A9 :components/lwip.cfg (push) Has been cancelled
utest_auto_run / A9 :components/netdev.cfg (push) Has been cancelled
utest_auto_run / A9 :components/sal.cfg (push) Has been cancelled
utest_auto_run / A9 :cpp11/cpp11.cfg (push) Has been cancelled
utest_auto_run / AARCH64-rtsmart :default.cfg (push) Has been cancelled
utest_auto_run / A9-rtsmart :default.cfg (push) Has been cancelled
utest_auto_run / RISCV-rtsmart :default.cfg (push) Has been cancelled
utest_auto_run / XUANTIE-rtsmart :default.cfg (push) Has been cancelled
utest_auto_run / AARCH64 :default.cfg (push) Has been cancelled
utest_auto_run / AARCH64-smp :default.cfg (push) Has been cancelled
utest_auto_run / A9 :default.cfg (push) Has been cancelled
utest_auto_run / A9-smp :default.cfg (push) Has been cancelled
utest_auto_run / RISCV :default.cfg (push) Has been cancelled
utest_auto_run / RISCV-smp :default.cfg (push) Has been cancelled
utest_auto_run / A9 :kernel/atomic_c11.cfg (push) Has been cancelled
utest_auto_run / RISCV :kernel/atomic_c11.cfg (push) Has been cancelled
utest_auto_run / A9 :kernel/ipc.cfg (push) Has been cancelled
utest_auto_run / A9 :kernel/kernel_basic.cfg (push) Has been cancelled
utest_auto_run / A9 :kernel/mem.cfg (push) Has been cancelled
doc_doxygen / doxygen_doc generate (push) Has been cancelled
doc_doxygen / deploy (push) Has been cancelled
This commit is contained in:
@@ -37,6 +37,9 @@ if GetDepend('BSP_USING_PWM'):
|
||||
if GetDepend('BSP_USING_FLASH'):
|
||||
src += ['drv_chipflash.c']
|
||||
|
||||
if GetDepend('BSP_USING_CAN'):
|
||||
src += ['drv_can.c']
|
||||
|
||||
path = [cwd,cwd + '/config']
|
||||
|
||||
group = DefineGroup('Drivers', src, depend = [''], CPPPATH = path)
|
||||
|
||||
551
bsp/nxp/mcx/mcxa/Libraries/drivers/drv_can.c
Normal file
551
bsp/nxp/mcx/mcxa/Libraries/drivers/drv_can.c
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,9 @@
|
||||
scons.args: &scons
|
||||
scons_arg:
|
||||
- '--strict'
|
||||
|
||||
# ------ component CI ------
|
||||
component.can:
|
||||
kconfig:
|
||||
- CONFIG_BSP_USING_CAN
|
||||
- CONFIG_BSP_USING_CAN0
|
||||
@@ -104,23 +104,39 @@ menu "On-chip Peripheral Drivers"
|
||||
default n
|
||||
endif
|
||||
|
||||
menuconfig BSP_USING_PWM
|
||||
config BSP_USING_PWM
|
||||
bool "Enable PWM"
|
||||
select RT_USING_PWM
|
||||
default n
|
||||
|
||||
if BSP_USING_PWM
|
||||
config BSP_USING_PWM0
|
||||
bool "Enable eFlex PWM0"
|
||||
default n
|
||||
config BSP_USING_PWM1
|
||||
bool "Enable eFlex PWM1"
|
||||
default n
|
||||
config BSP_USING_PWM2
|
||||
bool "Enable eFlex PWM2"
|
||||
default n
|
||||
endif
|
||||
menuconfig BSP_USING_PWM
|
||||
config BSP_USING_PWM
|
||||
bool "Enable PWM"
|
||||
select RT_USING_PWM
|
||||
default n
|
||||
|
||||
if BSP_USING_PWM
|
||||
config BSP_USING_PWM0
|
||||
bool "Enable eFlex PWM0"
|
||||
default n
|
||||
config BSP_USING_PWM1
|
||||
bool "Enable eFlex PWM1"
|
||||
default n
|
||||
config BSP_USING_PWM2
|
||||
bool "Enable eFlex PWM2"
|
||||
default n
|
||||
endif
|
||||
|
||||
menuconfig BSP_USING_CAN
|
||||
config BSP_USING_CAN
|
||||
bool "Enable CAN"
|
||||
select RT_USING_CAN
|
||||
default n
|
||||
if BSP_USING_CAN
|
||||
config BSP_USING_CAN0
|
||||
bool "Enable CAN0"
|
||||
default n
|
||||
|
||||
config BSP_USING_CAN1
|
||||
bool "Enable CAN1"
|
||||
default n
|
||||
endif
|
||||
|
||||
endmenu
|
||||
|
||||
|
||||
|
||||
@@ -48,6 +48,7 @@ void BOARD_InitPins(void)
|
||||
static const reset_ip_name_t i2c_resets[] = LPI2C_RSTS;
|
||||
static const reset_ip_name_t spi_resets[] = LPSPI_RSTS;
|
||||
static const reset_ip_name_t dma_resets[] = DMA_RSTS_N;
|
||||
static const reset_ip_name_t can_resets[] = FLEXCAN_RSTS_N;
|
||||
|
||||
// Release resets
|
||||
release_reset_array(port_resets, ARRAY_SIZE(port_resets));
|
||||
@@ -56,7 +57,7 @@ void BOARD_InitPins(void)
|
||||
release_reset_array(i2c_resets, ARRAY_SIZE(i2c_resets));
|
||||
release_reset_array(spi_resets, ARRAY_SIZE(spi_resets));
|
||||
release_reset_array(dma_resets, ARRAY_SIZE(dma_resets));
|
||||
|
||||
release_reset_array(can_resets, ARRAY_SIZE(can_resets));
|
||||
|
||||
const port_pin_config_t port2_2_pin35_config = {/* Internal pull-up resistor is enabled */
|
||||
.pullSelect = kPORT_PullUp,
|
||||
@@ -285,107 +286,6 @@ void BOARD_InitPins(void)
|
||||
/* PORT3_28 (pin 73) is configured as LPI2C3_SDA */
|
||||
PORT_SetPinConfig(PORT3, 28U, &port3_28_pin73_config);
|
||||
|
||||
|
||||
const port_pin_config_t port1_0_pin135_config = {/* Internal pull-up/down resistor is disabled */
|
||||
.pullSelect = kPORT_PullDisable,
|
||||
/* Low internal pull resistor value is selected. */
|
||||
.pullValueSelect = kPORT_LowPullResistor,
|
||||
/* Fast slew rate is configured */
|
||||
.slewRate = kPORT_FastSlewRate,
|
||||
/* Passive input filter is disabled */
|
||||
.passiveFilterEnable = kPORT_PassiveFilterDisable,
|
||||
/* Open drain output is disabled */
|
||||
.openDrainEnable = kPORT_OpenDrainDisable,
|
||||
/* Low drive strength is configured */
|
||||
.driveStrength = kPORT_LowDriveStrength,
|
||||
/* Normal drive strength is configured */
|
||||
.driveStrength1 = kPORT_NormalDriveStrength,
|
||||
/* Pin is configured as LPSPI0_SDO */
|
||||
.mux = kPORT_MuxAlt2,
|
||||
/* Digital input enabled */
|
||||
.inputBuffer = kPORT_InputBufferEnable,
|
||||
/* Digital input is not inverted */
|
||||
.invertInput = kPORT_InputNormal,
|
||||
/* Pin Control Register fields [15:0] are not locked */
|
||||
.lockRegister = kPORT_UnlockRegister};
|
||||
/* PORT1_0 (pin 135) is configured as LPSPI0_SDO */
|
||||
PORT_SetPinConfig(PORT1, 0U, &port1_0_pin135_config);
|
||||
|
||||
const port_pin_config_t port1_1_pin136_config = {/* Internal pull-up/down resistor is disabled */
|
||||
.pullSelect = kPORT_PullDisable,
|
||||
/* Low internal pull resistor value is selected. */
|
||||
.pullValueSelect = kPORT_LowPullResistor,
|
||||
/* Fast slew rate is configured */
|
||||
.slewRate = kPORT_FastSlewRate,
|
||||
/* Passive input filter is disabled */
|
||||
.passiveFilterEnable = kPORT_PassiveFilterDisable,
|
||||
/* Open drain output is disabled */
|
||||
.openDrainEnable = kPORT_OpenDrainDisable,
|
||||
/* Low drive strength is configured */
|
||||
.driveStrength = kPORT_LowDriveStrength,
|
||||
/* Normal drive strength is configured */
|
||||
.driveStrength1 = kPORT_NormalDriveStrength,
|
||||
/* Pin is configured as LPSPI0_SCK */
|
||||
.mux = kPORT_MuxAlt2,
|
||||
/* Digital input enabled */
|
||||
.inputBuffer = kPORT_InputBufferEnable,
|
||||
/* Digital input is not inverted */
|
||||
.invertInput = kPORT_InputNormal,
|
||||
/* Pin Control Register fields [15:0] are not locked */
|
||||
.lockRegister = kPORT_UnlockRegister};
|
||||
/* PORT1_1 (pin 136) is configured as LPSPI0_SCK */
|
||||
PORT_SetPinConfig(PORT1, 1U, &port1_1_pin136_config);
|
||||
|
||||
const port_pin_config_t port1_2_pin137_config = {/* Internal pull-up/down resistor is disabled */
|
||||
.pullSelect = kPORT_PullDisable,
|
||||
/* Low internal pull resistor value is selected. */
|
||||
.pullValueSelect = kPORT_LowPullResistor,
|
||||
/* Fast slew rate is configured */
|
||||
.slewRate = kPORT_FastSlewRate,
|
||||
/* Passive input filter is disabled */
|
||||
.passiveFilterEnable = kPORT_PassiveFilterDisable,
|
||||
/* Open drain output is disabled */
|
||||
.openDrainEnable = kPORT_OpenDrainDisable,
|
||||
/* Low drive strength is configured */
|
||||
.driveStrength = kPORT_LowDriveStrength,
|
||||
/* Normal drive strength is configured */
|
||||
.driveStrength1 = kPORT_NormalDriveStrength,
|
||||
/* Pin is configured as LPSPI0_SDI */
|
||||
.mux = kPORT_MuxAlt2,
|
||||
/* Digital input enabled */
|
||||
.inputBuffer = kPORT_InputBufferEnable,
|
||||
/* Digital input is not inverted */
|
||||
.invertInput = kPORT_InputNormal,
|
||||
/* Pin Control Register fields [15:0] are not locked */
|
||||
.lockRegister = kPORT_UnlockRegister};
|
||||
/* PORT1_2 (pin 137) is configured as LPSPI0_SDI */
|
||||
PORT_SetPinConfig(PORT1, 2U, &port1_2_pin137_config);
|
||||
|
||||
const port_pin_config_t port1_3_pin138_config = {/* Internal pull-up/down resistor is disabled */
|
||||
.pullSelect = kPORT_PullDisable,
|
||||
/* Low internal pull resistor value is selected. */
|
||||
.pullValueSelect = kPORT_LowPullResistor,
|
||||
/* Fast slew rate is configured */
|
||||
.slewRate = kPORT_FastSlewRate,
|
||||
/* Passive input filter is disabled */
|
||||
.passiveFilterEnable = kPORT_PassiveFilterDisable,
|
||||
/* Open drain output is disabled */
|
||||
.openDrainEnable = kPORT_OpenDrainDisable,
|
||||
/* Low drive strength is configured */
|
||||
.driveStrength = kPORT_LowDriveStrength,
|
||||
/* Normal drive strength is configured */
|
||||
.driveStrength1 = kPORT_NormalDriveStrength,
|
||||
/* Pin is configured as LPSPI0_PCS0 */
|
||||
.mux = kPORT_MuxAlt2,
|
||||
/* Digital input enabled */
|
||||
.inputBuffer = kPORT_InputBufferEnable,
|
||||
/* Digital input is not inverted */
|
||||
.invertInput = kPORT_InputNormal,
|
||||
/* Pin Control Register fields [15:0] are not locked */
|
||||
.lockRegister = kPORT_UnlockRegister};
|
||||
/* PORT1_3 (pin 138) is configured as LPSPI0_PCS0 */
|
||||
PORT_SetPinConfig(PORT1, 3U, &port1_3_pin138_config);
|
||||
|
||||
const port_pin_config_t port3_10_pin96_config = {/* Internal pull-up/down resistor is disabled */
|
||||
.pullSelect = kPORT_PullDisable,
|
||||
/* Low internal pull resistor value is selected. */
|
||||
@@ -485,4 +385,54 @@ void BOARD_InitPins(void)
|
||||
.lockRegister = kPORT_UnlockRegister};
|
||||
/* PORT3_9 (pin 97) is configured as LPSPI1_SDI */
|
||||
PORT_SetPinConfig(PORT3, 9U, &port3_9_pin97_config);
|
||||
|
||||
const port_pin_config_t port1_11_pin4_config = {/* Internal pull-up/down resistor is disabled */
|
||||
.pullSelect = kPORT_PullDisable,
|
||||
/* Low internal pull resistor value is selected. */
|
||||
.pullValueSelect = kPORT_LowPullResistor,
|
||||
/* Fast slew rate is configured */
|
||||
.slewRate = kPORT_FastSlewRate,
|
||||
/* Passive input filter is disabled */
|
||||
.passiveFilterEnable = kPORT_PassiveFilterDisable,
|
||||
/* Open drain output is disabled */
|
||||
.openDrainEnable = kPORT_OpenDrainDisable,
|
||||
/* Low drive strength is configured */
|
||||
.driveStrength = kPORT_LowDriveStrength,
|
||||
/* Normal drive strength is configured */
|
||||
.driveStrength1 = kPORT_NormalDriveStrength,
|
||||
/* Pin is configured as CAN0_RXD */
|
||||
.mux = kPORT_MuxAlt11,
|
||||
/* Digital input enabled */
|
||||
.inputBuffer = kPORT_InputBufferEnable,
|
||||
/* Digital input is not inverted */
|
||||
.invertInput = kPORT_InputNormal,
|
||||
/* Pin Control Register fields [15:0] are not locked */
|
||||
.lockRegister = kPORT_UnlockRegister};
|
||||
/* PORT1_11 (pin 4) is configured as CAN0_RXD */
|
||||
PORT_SetPinConfig(PORT1, 11U, &port1_11_pin4_config);
|
||||
|
||||
const port_pin_config_t port1_2_pin137_config = {/* Internal pull-up/down resistor is disabled */
|
||||
.pullSelect = kPORT_PullDisable,
|
||||
/* Low internal pull resistor value is selected. */
|
||||
.pullValueSelect = kPORT_LowPullResistor,
|
||||
/* Fast slew rate is configured */
|
||||
.slewRate = kPORT_FastSlewRate,
|
||||
/* Passive input filter is disabled */
|
||||
.passiveFilterEnable = kPORT_PassiveFilterDisable,
|
||||
/* Open drain output is disabled */
|
||||
.openDrainEnable = kPORT_OpenDrainDisable,
|
||||
/* Low drive strength is configured */
|
||||
.driveStrength = kPORT_LowDriveStrength,
|
||||
/* Normal drive strength is configured */
|
||||
.driveStrength1 = kPORT_NormalDriveStrength,
|
||||
/* Pin is configured as CAN0_TXD */
|
||||
.mux = kPORT_MuxAlt11,
|
||||
/* Digital input enabled */
|
||||
.inputBuffer = kPORT_InputBufferEnable,
|
||||
/* Digital input is not inverted */
|
||||
.invertInput = kPORT_InputNormal,
|
||||
/* Pin Control Register fields [15:0] are not locked */
|
||||
.lockRegister = kPORT_UnlockRegister};
|
||||
/* PORT1_2 (pin 137) is configured as CAN0_TXD */
|
||||
PORT_SetPinConfig(PORT1, 2U, &port1_2_pin137_config);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user