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.

Programming 28377 over CAN

Other Parts Discussed in Thread: TMS320F28377D

We are working on TI’s TMS320F28377D controllers and using TI provided Flash API libraries.

 

Brief details of issue at hand:

 

Using  app meant for “In System Programming” ,  We are writing target APP hex image into Flash memory  with ECC disabled (data only mode).

Flash write is successful and flashed APP is working as expected.  

 

Going further we also want app meant for “In System Programming” update itself and for that it executes from RAM.

New version of app meant for “In System Programming” is written correctly but it won’t execute updated ISP APP.

 

Below sequence we are following;

1. TMS320F28377D startup
2. Flash ECC Disable
3. Flash Lib initialization and copy  Flash API Copy into RAM
4. Flash Erase
5. Flash Write

  

We referred SPNU595.PDF and Device technical reference manual but not able to find the root cause.

  • David,

    What do you mean by "it won't execute updated ISP APP"?  Did you notice any ECC error?  

    Note that ECC is enabled at power-up and hence ECC must be programmed to avoid ECC errors until the application reaches the Flash initialization routine wherein the application can decide to disable the ECC if needed.

    Thanks and regards,

    Vamsi 

  • Customer has a Boot block which execute on the board and allows to reprogram the application over the CAN and successfully transfer the control to application.

    But if we reprogram the BB itself over the CAN then it doesn’t work.

    We do this change of BB in 3 steps.

    Preparation: Existing Boot block runs from RAM

    a)   Download the new BB copy into App area temporary (original App gets erased)

    b)   Erases the old BB sectors.

    c)    Copies the new BB from app area to the BB sectors and reset the board

    In this case the new BB is not able to execute as it end up in a TRAP condition.

  • David,

    Ok. Did you check if there is an ECC error when executing the new BB? (You can check the Flash ECC error registers at 0x5FB00).

    Why don't you use Fapi_AutoEccGeneration when copying the new BB from app area to the BB sectors?

    Thanks and regards,
    Vamsi