I noticed an error in the serial communication between a PBDOS program I wrote and an external device. Sometimes it seemed as the device didn't receive the polling record. Well, till now I knew there were all kinds of problems while receiving a stream (overruns, etc.), but this is the first time I had a Tx problem.
The problem is the following: I monitored the TX activity with a digital scope, and noticed that sometimes the Tx record duration is longer than usual. The record is 17 bytes, 4800 baud (8 bit no parity 1 stop): the total duration should be about 35ms, but sometimes the overall duration grows up to 50 ms and more. The TX stream is suspended for some 15 ms.
The device the PC is connected to manages a RX timeout: if a character doesn't arrive within 10 ms, the whole record is discarded. Hence, that 15 ms measured interruptions of the TX stream make the communication stops.
Of course for me it is a no-problem, since the program manages its own time-outs, and restarts the communication. I post this topic in case someone has the same kind of problem.
With the newer versions of Windows it is very difficult to run real-time applications... Will it be even worse in the future?
The PC is a Pentium 300 MHz, Win NT4.0. Not too fast, but the same program works perfectly on a 486 66 MHz, both under a plain DOS 6.22, or as a Windows 3.11 shell.
------------------
The problem is the following: I monitored the TX activity with a digital scope, and noticed that sometimes the Tx record duration is longer than usual. The record is 17 bytes, 4800 baud (8 bit no parity 1 stop): the total duration should be about 35ms, but sometimes the overall duration grows up to 50 ms and more. The TX stream is suspended for some 15 ms.
The device the PC is connected to manages a RX timeout: if a character doesn't arrive within 10 ms, the whole record is discarded. Hence, that 15 ms measured interruptions of the TX stream make the communication stops.
Of course for me it is a no-problem, since the program manages its own time-outs, and restarts the communication. I post this topic in case someone has the same kind of problem.
With the newer versions of Windows it is very difficult to run real-time applications... Will it be even worse in the future?

------------------
Comment