AnsweredAssumed Answered

TWR-K40D100M / TWR-SER FlexCAN issues

Question asked by Efren Cabebe on Sep 27, 2016
Latest reply on Sep 30, 2016 by xiangjun.rong

Hello,

 

I've been having some trouble with sending out a CAN message from the TWR-SER board using the TWR-K40100M module on an actual CAN network (not in loopback mode).

 

Details:
Kinetis Design Studio 3.2.0

Processor Expert

CAN_LDD bean

TWR-K40D100M

TWR-SER

 

I am trying to achieve a successful CAN message transmission from the TWR-SER to an external CAN node.

 

The test network is terminated at both ends (at the TWR-SER board and at the CANbus monitor device)!

 

 

On the TWR-SER module


------------------------------------------------------------------------------------------------------------------------- 

in main.c

in Events.c:

On the K40D100M

  • Followed the example FlexCAN initialization from the help document
    • Interrupt-driven TX transfer (using Events.c)

 

When I initiate a CAN transmit message, the function returns an error code of 0 (ERR_OK), but then the program would hang at the while loop checking DataFrameTxFlg. During debugging, CAN1_OnFreeTx_Buffer never triggers. The entire hardware configuration is correct (as far as I know). The FlexCAN software initialization seems to be correct, but the CAN1_OnFreeTx_Buffer not triggering I am still unsure about.

 

Attached is my project.


Any advice / guidance is appreciated!
Efren

Original Attachment has been moved to: BMS_Controller.zip

Outcomes