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.

TMS320F28069: F28069 CAN send and interrupt

Part Number: TMS320F28069
Other Parts Discussed in Thread: TMS320F28335, C2000WARE

Hello,

I am using TMS320F28069 , while we are trying to communicate through CAN bus with another CAN device.

initially we have done with polling mode, and we successfully received and transmit can messages.

now we want to enable can interrupts, for the same we refer "app note SPRA876" and "CAN_RXINT_A" project.  But we did not receive any interrupt on can message arrival at TMS320F28069 controller.

one more thing we are unable to understand about CANA and CANB , as per our understanding TMS320F28069 has only one can port so we comment out the CANB code from "CAN_RXINT_A" project.

can you elaborate any modification in "CAN_RXINT_A" for TMS320F28069?

Thanks And Regards

  • The fact that communication works fine in polling mode tells me that your H/W & network connection is good.

     

    I presume the other CAN device in your network is transmitting the messages to F28069. Is it transmitting the messages with the correct MSGID? Since we are not using any ID filtering, the MSGIDs must match bit-for-bit. Please confirm the MSGIDs that are being transmitted.

  • Yes our can network works fine, and about the id we just put the 0x01 slandered id at both sides tx and Rx devices.

    while we are testing polling mode we use the "Example_2806xECanBack2Back" project from control suit. and for interrupt mode "CAN_RXINT_A"  project "RXINT_A.c" file  as it is from "app note SPRA876" for our controller.  do you want to suggest any updations in code for TMS320F28069 (as "app note SPRA876" is for another DSP) or trouble shooting the problem like crosschecking the registers or is can interrupt  enabled or not?

    Thanks And Regards

  • The app.note example was written for TMS320F28335, which runs at 150 MHz. (The eCAN module is clocked at SYSCLKOUT/2 = 75 MHz). I don’t know the speed at which you are running the 28069, but it is rated for a max SYSCLKOUT frequency of 90 MHz, with the CAN module running at 45 MHz. you need to adjust the CANBTR register’s value for the new clock frequency. If you have c2000ware installed in your PC, please take a look at F2806x_ECan.c file in C:\ti\c2000\C2000Ware_1_00_04_00\device_support\f2806x\common\source directory. It shows the CANBTR value for 90 MHz SYSCLKOUT.

    I will update my app.note to call attention to this important fact.