This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

LAUNCHXL-F28379D: CAN HARDWARE IMPLEMENTATION

Part Number: LAUNCHXL-F28379D
Other Parts Discussed in Thread: SYSCONFIG, SN65HVD230

Hi, 

I have configured GPIO 18 and 19 as CAN_RX and CAN_TX ports of the CAN A module using sysconfig. I enabled the CAN line 0 interrupt and global interrupt on line 0 for the CAN B module. I want to transmit data from the CAN A module to the CAN B module. CAN B module has an inbuilt transceiver. Hence, I used an external transceiver SN65HVD230 for transmitting data to the CAN Bus from the CAN A module. To achieve this functionality, I used the can_ex3_external_transmit.c code. When I am running the program, the error flag is set to 1 saying that transmitted data is not equal to the received data. I connected my scope to monitor the output of the GPIO 19 (CAN_TX) pin to check whether any data is transmitted. I see a deadline in the oscilloscope. (I even set the oscilloscope properly to view the signal that is 20µs per division, falling trigger). I don't think any data is transmitted from GPIO 19 (CAN_TX pin of CAN A module).

This is how I implemented it.

Sysconfig settings for CAN B module

Sysconfig settings for CAN A

Please help me resolve the issue. I am unable to understand why the CAN_TX pin of the CAN A module isn't transmitting data.

Thank you,

Karthikeya

  • Karthikeya, 

    Please refer to "can_ex1_loopback". By running this example for CANA module, check with the oscilloscope if you are able to observe the transmitted frames at GPIO19. 

    If that is running as expected, while running "can_ex3_external_transmit", check the CAN_ERRC register, specifically the Transmit Error Counter. If the value has been incremented, it implies that the transmitting node is not receiving an ACK signal which would mean that there is an issue with the configuration of the receiving node.

    Also refer to the appnote https://www.ti.com/sprace5a/ for common debugging strategies.

    In case of any further doubts, do reach out.

    Thanks.