property HWFlowControl
: Boolean
Default: True
Enables hardware flow control for the port.
When enabled, the corresponding modem control signal (RTS) is lowered when the input buffer reaches the level set by the BufferFull property. The remote must recognize these signals and stop sending data while they are held low. Because there is usually little delay before the remote reacts (as there is with software flow control) you can set BufferFull close to the input buffer size, perhaps at the 90% level.
As the application processes received characters, buffer usage eventually drops below the value set by the BufferResume property. At that point, the corresponding modem control signals are raised again. The remote must recognize these signals and start sending data again. Again, because there is usually little delay you can set BufferResume close to zero, perhaps at 10% of the input buffer size.
When HWFlowControl is enabled, the communications driver doesn't transmit data unless the remote device is providing the corresponding modem status signal (CTS). The remote must raise and lower this signal as required to control the flow of transmitted characters.
See "Flow Control" in the printed documentation for more information.
The following example enables bi-directional hardware flow control with limits at the 10% and 90% levels of the buffer. RTS is lowered for receive flow control and CTS is checked for transmit flow control. Later in the application, hardware flow control is disabled.
ApxComPort.HWFlowControl := True;
ApxComPort.BufferFull := 90;
ApxComPort.BufferResume := 10;
...
ApxComPort.HWFlowControl := False;
See also: RTS, SWFlowControl