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.

CCS/TMS320F28069: Is there sample codes for eCAN using interrupt method?

Part Number: TMS320F28069
Other Parts Discussed in Thread: TMDSCNCD28069ISO, CONTROLSUITE, C2000WARE

Tool/software: Code Composer Studio

My hardware connection

tmdscncd28069iso(plug in TI ducking station)  --> ISO1015 EVM board --> USB2CAN --> CanBus program runing PC

First, I did not use tmdscncd28069iso but a 28035 control card. I rewrite ECanBack2Back example codes and it work perfectly.

28035 can sent data to CanBus program and receive data from  CanBus program, the corresponding ISR are woring as desired.

Next, I use tmdscncd28069is and repeat the whole work again (Of course, I use another sample code, Example_2806xECanBack2Back)

This time, My ISRs never be called and nothing happened.

Is there sample codes for eCAN using interrupt method for F28069?

  • Hi,

    user4573554 said:
    Is there sample codes for eCAN using interrupt method for F28069?

    Nope, there aren't any in controlSuite or C2000ware!

    Btw check this post out:

    Regards,

    Gautam

  • Please try the example in my app.note SPRA876. But before you do that, make sure CAN communication works without interrupts. Once that is successful, you can bring interrupts into the picture.

  • I checked and found that the waveform send by f28069 ecan is different to that of f28035 in time send a CAN frame (of course, same CAN id and same data). I refine the baudrate related registers and everything seems fine. It seems f28035 is 90MHz clock system. But, the sample code in controlsuit take it as 80MHz state in code comment.
  • F28035 is 60 MHz. F28069 is 90 MHz device with the CAN module clock being 45 MHz. You are correct that the settings are incorrect in the files provided by TI. We will fix it in a future update. The following setting will yield 1 Mbps for 28069:

     

        ECanaShadow.CANBTC.bit.BRPREG = 2;

        ECanaShadow.CANBTC.bit.TSEG2REG = 2;

        ECanaShadow.CANBTC.bit.TSEG1REG = 10;

     

    1 Mbps could be derived in many different ways, so the above is just one option. Hope this clarifies.