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/TL16C752B-EP: TL16C752B-EP; Timing Problem

Part Number: TL16C752B-EP
Other Parts Discussed in Thread: TMS320F28377D

Tool/software: Code Composer Studio

Hello Guys, 

I am using 3 TL16C752B with TMS320F28377D and getting some problem with EMIF Interface with TL16C752B

Error symptom 

- We manufactured 2 PCB 

- One PCB Works perfertly , But the other works strage,

- In debug Session of TMS320 , TL16C752B Works properly BUT  , When I exit from debug session it doesn't work properly ( See the screenshot Below )

Waveform that works nice ( in debug session )

- 115200 Baud , 20Mhz in to TL16C752 , Message " Hello World "

Waveform that works not good

- Same setting as up

--------

In debug Session, dsp gets little slow as i know , is it can be the reason of inproper action ?

or which thing i have to check more ? i've already done probed address and data pins

  • sorry, I miss attach the schematic 

      this for address decoder

     this for TL16C752B 

     on the MCU Side

  • Hi Bongjin,

    Unfortunately it looks like the images didn't post properly in your last reply - can you please try again?

    One thing that would be useful to check is the interface between the UART and the processor in both cases.  Like you mentioned, I suspect the faster timing that may be present in normal conditions (not debug mode) may be causing some issue either with properly inputting data to the TX FIFO or commanding the data to be sent out.

    Also, can you please tell us how you implement flow control?  Is it via manual control of CTS or is it via auto-CTS?

    Could you report the register values in both working and non-working states to verify that the configuration is the same and see which status bits are set by the device?

    Regards,
    Max

  • Hi Bongjin,

    To verify I understand the problem. You are trying to send "Hello World" on the TX line of the TL16C752B (meaning you are WRITING to THR) but are seeing that after two bytes are sent, the transmission stops. (Works okay in debugger mode but not outside of it) Is this correct?

    Are you using any kind of interrupt servicing/checks before you write to THR?

    Note that there are three errata posted for this device:

    Problem 1 could potentially be a cause if you were receiving bytes (or if you have loop back enabled) and your interrupt service routine only checks INT followed by IIR.

    I don't believe problem 2 is related to your case since it assumes non-FIFO mode AND you haven't set the divisors yet (in your you are already sending data so you should have set the divisors).

    Problem 3 could also potentially cause a problem if you are trying to send data through TX but also check the IIR registers before sending to make sure the THR is ready at the same time the bit is about to be set, accidentally clearing the INT. This could interfere with your interrupt service routine if you rely on INT to be ready before transmitting data through TX.

    -Bobby

  • Hello Bobby

    Thanks for your errata docs, i'll check it soon

    Unfortunately, we have not used interrupt yet, we just write THR register with polling ,

    We've consider about moving our software to RAM instead of flash ( assume debug environment ) , but our application size is bigger than ram , So we can not test it...

    Also for Max, I re-attach my schematic pls check it

    CPU.pdfEMIF.pdf