6.2. Serial control lines
In addition to transmitting bytes on the TX line and receiving bytes on the RX line, the USB-to-TTL-serial adapter can use programmer pins A and B as serial handshaking lines of your choosing. Each pin can be configured as an input or an output by identifying it with a serial handshaking line. By default, A is an unused pin that is pulled high, and B is DTR. To change the functions of A and B, you can use the
--line-b options of
pavr2cmd or you can configure the lines in the Pololu USB AVR Programmer v2 Configuration Utility.
The following options are available for those lines:
- (none): The pin will not be used as a serial handshaking line. It will be an input that is pulled high.
- CD (input): The pin will be an input that is pulled high, and the input’s value will be relayed to the computer as the CD signal.
- DSR (input): The pin will be an input that is pulled high, and the input’s value will be relayed to the computer as the DSR signal.
- DTR (output): The pin will be an output that reflects the value of the DTR signal from the computer.
- RTS (output): The pin will be an output that reflects the value of the RTS signal from the computer.
- Clock (output): The pin will be an output that sends a 100 kHz clock signal. This option is only available for pin B.
- DTR reset (output): The pin will normally be floating, but it will drive low for about 1 ms whenever the computer changes the DTR signal from 0 to 1.
(CTS is not available.)
The serial handshaking lines are inverted: unless otherwise specified, a voltage of 0 V corresponds to a logical 1, while a voltage of high voltage (VDD) corresponds to a logical 0.
You can read input lines and/or set output lines by either using a terminal program that supports control signals (such as Br@y Terminal) or by writing a computer program. The Microsoft .NET framework contains a System.IO.Ports.SerialPort class that makes it easy to read and write bytes from a serial port as well as set and read the control signals.