Forum Index > Handshake responsiveness

By: Mathias Posted on: Sep 10 2010 at 10:31:38 AM
We've replaced the Mscomm component with the Comm32 component. Everything works fine with just minor code changes.

There's one problem though. We are communicating with (very) old machines over the RS-232 interface and they don't have much of a buffer and are quite picky when it comes to handshaking. The Mscomm32 control is quite much faster when it comes to stop transmitting when the RTS/CTS signal changes compared to the Comm32 control.

Is there a way to improve the responsiveness in the Comm32 control? As it is now there's a lot of data sent after the state of the CTS/RTS signal is altered.

TIA

By: Support Posted on: Sep 10 2010 at 12:30:34 PM
I assume you're setting RTS/CTS flow control (You're not watching for changes in the CTS line in your application and handling flow control yourself)

The OCX doesn't actually handle any flow control at all. It just tells Windows, via the API, what flow control method to use.

Flow control is managed by the Windows ComDrv API - basically it's being done low down near the hardware rather than higher up in the ocx/application. I'd therefore expect Comm32 or MSComm or indeed any other communications component to behave the same.

This would be hardware dependent though. For example if you were running tests on two computers side by side - one of them using a good old fashioned physical Com Port with 16550 UART and the other running with a USB/RS232 adapter then you might well see some measurable difference.

By: Mathias Posted on: Sep 13 2010 at 09:25:44 AM
You are right. It was all because of a bad USB to RS232 device.

 

Reply - add comment to this topic
You may enter letters, numbers and standard punctuation only. HTML and other scripts/tags will be rejected
  Topic:- Handshake responsiveness

Your Name


 


Forum scripts and databases - Copyright (c) 2009 - 2012 AxCoL.com