Hi TI Professor,
I have put mcan_test program runs in MCU1_0 as I metioned in https://e2e.ti.com/support/processors/f/791/t/969305.
Now I call canTest() in appRun() in vision_apps\apps\basic_demos\app_tirtos\common\app_run.c.
I disabled the MCU_ MCAN0 and MCU_ MCAN1 in k3-j721e-common-proc- board.dts:
&mcu_mcan0 {
status = "disabled";
pinctrl-names = "default";
pinctrl-0 = <&mcu_mcan0_pins_default &mcu_mcan0_gpio_pins_default>;
stb-gpios = <&wkup_gpio0 54 GPIO_ACTIVE_HIGH>;
en-gpios = <&wkup_gpio0 0 GPIO_ACTIVE_HIGH>;
can-transceiver {
max-bitrate = <5000000>;
};
};
&mcu_mcan1 {
status = "disabled";
pinctrl-names = "default";
pinctrl-0 = <&mcu_mcan1_pins_default &mcu_mcan1_gpio_pins_default>;
stb-gpios = <&wkup_gpio0 2 GPIO_ACTIVE_LOW>;
can-transceiver {
max-bitrate = <5000000>;
};
};
At present, the mcan can be configured normally, and the can transceiver can be enabled normally, but the transmission cannot be completed after adding the transmission request, the MCAN_TXBRP register is always 0x2 and unable to reset. The program stucks here
/* Waiting for Transmission Complete */
while (((MCAN_getTxBufReqPend(baseAddr) >>
APP_MCAN_TX_BUF_NUM) &
0x1) == 0x1)
How to solve this?