1
\$\begingroup\$

I have a custom DSP board which has a UART port to send data to PC. Strange thing is when I stop the UART port on DSP, PC still continues to receive data. Even stranger, I unplugged the USB cable from PC so there is no connection between the board and PC, still terminal is receiving data and it doesn't stop for 10 minutes! Do you know what's going on? I hooked up Oscope to DSP UART TX port, it was in-active.

\$\endgroup\$
7
  • \$\begingroup\$ How fast are you sending, how fast is the PC reading it and displaying it? \$\endgroup\$
    – Trevor_G
    May 18, 2017 at 17:41
  • \$\begingroup\$ 115200 is the baudrate on both sides. \$\endgroup\$
    – doubleE
    May 18, 2017 at 17:41
  • 5
    \$\begingroup\$ You're probably displaying your data slower than it is arriving, and it's getting buffered somewhere. \$\endgroup\$
    – brhans
    May 18, 2017 at 17:42
  • 3
    \$\begingroup\$ terminal program probably can't keep up with 10K characters per sec and data will be buffered, \$\endgroup\$
    – Trevor_G
    May 18, 2017 at 17:43
  • 1
    \$\begingroup\$ Put your interrupt bit into a counter. Run your test and compare to counter total. If they are the same, then the problem is in how you believe data is received without a connection. Odds are data is stored in a storage buffer and you have a slow processing to screen on a byte by byte basis. \$\endgroup\$ May 19, 2017 at 17:51

1 Answer 1

4
\$\begingroup\$

It sounds as if the data from the UART is being buffered and your program is not retrieving data fast enough from the buffer to keep it level. At 115k baud, 10 minutes of buffered data would indicate a buffer of ~ 700k bytes.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.