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.

TMS320F2806: Cannot program the device after changing oscillator

Part Number: TMS320F2806
Other Parts Discussed in Thread: UNIFLASH

Hi team,

My customer recently changed oscillator vendor on their board, but noticed the device cannot be programed after this change.

Here is a snapshot of uniflash with error information:

After further test, the device can be programed with the following 2 methods:

1. Changing back to the old oscillator;

2. Using a probe to test the reset pin(we believing this is adding a small capacitor between reset pin and GND). Resetting circuit as below:

Could you kindly sharing your debugging suggestion? Thanks!

Regards,

Brian

  • A quick update here:

    I suggested customer to access the device with CCS. The device can be connected, but cannot be programed. A limp mode error is reported as below:

    Flash API Error: #65535:

    The device is in limp mode, operation failed.

    Something came into my mind is the start up time of new clock sources is longer than the older one (7ms vs 2ms).  Is it possible that the when the device is trying to switch to external clock before the clock is stable, which caused the device run into limp mode?

    Besides, in the datasheet it is noted that the XRS pin must be held low for at least 8*oscclk after the clock is stable.

    Why we are requiring this XRS holding low timing? Would it be related to the programming issue I mentioned above? If customer is using a external reset circuit above, how can they gurantee the XRS is pulled high at the right timing?

    Regards,

    Brian

  • Hi Brian,

    If they run a project configured for RAM operation (no flash programming) do they run into issues? They can try some of the examples we have for this (https://www.ti.com/tool/SPRC097). I'm thinking that executing some code may result in a different error and help debug the issue further.

    Other than start-up time are there any other specs of the new crystal that are different? We often recommend customers to work with their crystal vendors to characterize operation with our device.

    For your XRS and reset behavior questions I'll try and have another expert comment.

    Best,

    Kevin

  • when the device is trying to switch to external clock before the clock is stable

    I don't understand what you mean by the above. This is device does not have the on-chip zero-pin oscillator (INTOSC1) like the later Piccolo devices. It can only operate with an external clock source. 

    You use the word "oscillator", but it appears you are referring to a crystal. Can you attach the external clock circuit?

    Why we are requiring this XRS holding low timing?

    This is to ensure that the reset propagates correctly to all required nodes inside the device. 

    Please attach a scope capture of the following pins upon power-up: 3.3v, 1.8v, -XRS pin, X1 pin.

    Is customer able to run code in RAM?