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\$
  • \$\begingroup\$ How fast are you sending, how fast is the PC reading it and displaying it? \$\endgroup\$ – Trevor_G May 18 '17 at 17:41
  • \$\begingroup\$ 115200 is the baudrate on both sides. \$\endgroup\$ – doubleE May 18 '17 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 '17 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 '17 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\$ – StainlessSteelRat May 19 '17 at 17:51
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, privacy policy and cookie policy

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