RS232 interface for multi-purpose bus
This is an RS232 extension card for the Universal I/O interface for IBM PCs. The circuit is based on the COM81C17 UART (universal asynchronous receiver/transmitter) from standard Microsystem Corporation (SMC).
This IC has an onboard programming baud rate generator, which obtains its clock from a quartz crystal oscillator built around three gates in the 74HCT04 package.
The COMB81CT acts as an 8-bit read/write device on the bus. The RS232 handshaking is limited to the RTS-CTS (request to send – clear to send) pair, which will be adequate for most purposes. The status of these lines is indicated by two LEDs, D2 and D3. The INT\ (interrupt request) output of the IC is used as an activity indicator. The INT\ pin goes low when an ‘enabled’ condition has occurred in the status register, which can be read by the computer system via the bus.
Remarkably, the COM81C17 is housed in a 20-pin DIL enclosure. The fact that it has 20 pins fewer than the well-known AY3- 1015D (former ‘industry standard’) UART is mostly because all status signals normally found on a UART are available as bits in a status register, rather than logic levels on IC pins. These status signals include Tx shift register empty, overrun error, parity error, Rx buffer full, and a host of others. The baud rate selection pins are also omitted and replaced by a ‘software’ equivalent.
Unfortunately, it is beyond the scope of this short article to cover all programming functions of the COM81C17. For full details, refer to the data sheets supplied by SMC, or to Ref. 3. Some information is, however, given to get you started: an initialization procedure flowchart; mode and status register overviews; the baud rate selection table; and a BASIC program. The latter provides a useful test for the hardware by echoing transmitted characters. This requires K3 or K2 pins 3 and 5 (data) and pins 4 and 6 (handshaking) to be interconnected. Two jumpers are provided for this purpose. By the way, K2 and K3 are wired such that they can be connected directly to IDC-style D-connectors via lengths of flat cable (a straight pin 1-to-pin 1 connection is used).
A MAX232 (with onboard negative voltage converter) is used in a standard configuration to interface the COM81C 17 to the RS232 peripheral connected to ICA or K5. As shown in the circuit diagram, these two connectors allow the interface to behave like a DCE (data communication equipment) or a DTE (data terminal equipment). By ‘tapping’ the connections between the COM81C17 and the MAX232, a TTL-level serial interface is created, which may be used when RS232 levels are not required.
Finally, the addressing of cards connected to the universal bus, and the rules that apply to implementing read/write functions at one address, are discussed in Ref. 2.
Parts list
Resistors:
R1: R2 2.2 KΩ
R3: R4: R5 = 220 Ω
Capacitors:
C1: C2 = 68 pF
C3-C7 = 10 uF, 16 V radial
C8; C9; C10 = 100 nF
Semiconductors:
D1: D2; D3 = LED. red, 3mm
Integrated circuits
IC1 = 74HCT245
IC2 = COM81C17
IC3 = MAX232
1C4 = 74HCT04
*SMC. head office: 35 Marcus Street,
Hauppage, NY 11788, USA. Telephone:
(516) 273-3100.
UK distributors: Golden Gate, Maidenhead,
Telephone: (0628) 783631, Fax (0628)
71120, or Manhattan Skyline,
Maidenhead, Telephone: (0628) 75851.
Miscellaneous:
K1 = 20-way boxheader.
K2: K3 = 10-way boxheader.
K4: K5 = 9-way angled PCB mount sub-D connector.
X1 = quartz crystal 5.0688 MHz.
References:
1. “Universal I/O interface for IBM PCs and compatibles”, Elektor Electronics, May 1991
2. “Optocard for universal PC I/O interface”, Elektor Electronics, July 1992.
3. Databook 4: peripheral chips, Elektor Electronics (Publishing).