Hi,
I have some confusion related to the RTS and CTS hardware flow
control in RS232 serial communication.
RTS is request to send.Is it send by device A if it wants to send
data to another device B or when it is ready to receive data from
another device? How about the CTS signal.
How can sender be stopped sending using these signals?
Please clarify my doubt.

Commonly RTS (Request to send) is asserted by the device which wants
to send the data. This line would connect to the CTS (Clear to send)
line of the unit that is to receive the data.

The unit to receive the data would then, if ready, assert it's own RTS
line, which would be connected to the CTS line of of the sending
device. The sending unit would then send it's data.

At the end of sending the sending unit would clear its RTS line and
the system would revert to it's original state.

Alternatively the receiving unit could use it's RTS line to instruct
the sending unit when to send or not. This is often used when the
receiving unit has a small(ish) buffer which cannot be emptied fast
enough (X-0n/X-off can also be used to control sending).

As you can see from the "sometimes" and "usually" qualifiers, the use
of these control signals is not very standard. You really have to
look closely at individual devices to see how they treat these
signals. As for hardware flow control, the most usual way to stop a
DTE transmitter is by lowering CTS. The most usual way to stop a
transmitter on a DCE is by lowering DTR. When connecting a DCE to a
DCE, you need to look at the wiring of the null-model cable that
connects them to see which signals are defined as what.

-Robert Scott
Ypsilanti, Michigan
(Reply through this forum, not by direct e-mail to me, as automatic reply
address is fake.)