Measurement Computing
10 Commerce Way
Norton, MA 02766(508) 946-5100
Fax: (508) 946-9500
info@mccdaq.com

www.mccdaq.com

19961997byMeas
urementComput
i
ngCor
p.
,Par
tNo.Serial488901,Rev
.1.
2
Pr
i
nt
edi
nt
heUni
t
edSt
at
esofAmericaWarranty Information
Contact Measurement Computing by phone, fax, or e-mail in regard to warranty-related issues:
Phone: (508) 946-5100, fax: (508) 946-9500, e-mail: info@mccdaq.com

Limitation of Liability
Measurement Computing cannot be held liable for any damages resulting from the use or misuse of this product.

Copyright, Trademark, and Licensing Notice
All Measurement Computing documentation, software, and hardware are copyright with all rights reserved. No part ofthis product may be copied, reproduced or transmitted by any mechanical, photographic, electronic, or other method
without Measurement Computing’s prior written consent. IOtech product names are trademarked; other product names, asapplicable, are trademarks of their respective holders. All supplied IOtech software (including miscellaneous support
files, drivers, and sample programs) may only be used on one installation. You may make archival backup copies.

CE Notice
Many Measurement Computing products carry the CE marker indicating they comply with the safety and emissions
standards of the European Community. When applicable these products have a Declaration of Conformity stating which
specifications and operating conditions apply. You can view the Declarations of Conformity at
www.mccdaq.com/legal.aspx (CE Information page).

Warnings, Cautions, Notes, and Tips
Refer all service to qualified personnel. This caution symbol warns of possible personal injury or equipment damage
under noted conditions. Follow all safety standards of professional practice and the recommendations in this manual.
Using this equipment in ways other than described in this manual can present serious safety hazards or cause equipment
damage.
This warning symbol is used in this manual or on the equipment to warn of possible injury or death from electricalshock under noted conditions.

This ESD caution symbol urges proper handling of equipment or components sensitive to damage from electrostatic
discharge. Proper handling guidelines include the use of grounded anti-static mats and wrist straps, ESD-protective bags
and cartons, and related procedures.

This symbol indicates the message is important, but is not of a Warning or Caution category. These notes can be of great
benefit to the user, and should be read.
In this manual, the book symbol always precedes the words “Reference Note.” This type of note identifies the locationof additional information that may prove helpful. References may be made to other chapters or other documentation.
Tips provide advice that may save time during a procedure, or help to clarify an issue. Tips may include additionalreference.

Specifications and Calibration
Specifications are subject to change without notice. Significant changes will be addressed in an addendum or revision to
the manual. As applicable, the hardware is calibrated to published specifications. Periodic hardware calibration is notcovered under the warranty and must be performed by qualified personnel as specified in this manual. Improper
calibration procedures may void the warranty.

Table of Contents
Section1
1.1
1.2
1.3
1.4

Introduction
General Description
Available Accessories
Specifications
Abbreviations

Page
1.1
1.2
1.3
1.4

Section 2
2.1
2.2
2.3
2.3.1
2.3.1.1
2.3.1.2
2.3.2
2.3.3
2.4
2.5
2.5.1
2.5.2
2.5.3
2.5.4
2.6
2.6.1
2.6.2
2.6.3
2.6.4
2.6.5
2.6.6
2.6.7
2.6.8
2.6.9
2.7
2.8
2.9

Getting Started
Inspection
Front and Rear Panels
IEEE 488 Bus Configuration
Serial 488/4 Addressing Modes
Secondary Addressing Mode
Dual Primary Addressing Mode
IEEE Address Selection
IEEE 488 Bus Terminator Selection
Memory Usage
Serial Port Configuration
RS-232/422 Configuration Jumpers
Asynchronous Communications Setup
Handshake Configuration
Serial Signal Descriptions
IEEE 488 Bus Implementation
My Talk Address (MTA), (MSA)
My Listen Address (MLA), (MSA)
Device Clear (DCL and SDC)
Interface Clear (IFC)
Serial Poll Enable (SPE)
Serial Poll Disable (SPD)Serial Poll Response
Unlisten (UNL)
Untalk (UNT)
Hardware Installation
Powerup
Programming Examples

Page
2.1
2.1
2.3
2.4
2.5
2.6
2.7
2.9
2.9
2.10
2.11
2.13
2.15
2.16
2.20
2.20
2.21
2.21
2.21
2.21
2.22
2.22
2.22
2.22
2.22
2.24
2.24

Section 3

Command Descriptions
Introduction
Stop Bits (An)

Page
3.1
3.2

Table of Contents
Section 3

Command Descriptions (cont'd)
Baud Rate (Bn)Parity (Cn)Data Bits (Dn)
Error Query (E?)
Flush (Fn)Handshake Type (Gn)
Input Query (I?)
Status EOI (Kn)
Data EOI (Ln)Service Request (Mn)
Handshake Control (Nn)
Output Query (O?)
Port Select (Pn)
Break (Qn)
Save Configuration (Sn)Serial Terminator (Tn)
Status (Un)
Version Query (V?)
Execute (X)Bus Terminator (Yn)Memory Query (Z?)
Serial Poll Status

Page
3.3
3.4
3.5
3.6
3.7
3.8
3.9
3.10
3.11
3.12
3.14
3.16
3.17
3.18
3.19
3.21
3.22
3.27
3.28
3.29
3.30
3.31

Section 4
4.1
4.2
4.3
4.4
4.4.1
4.4.2
4.4.3
4.4.4
4.4.5
4.5
4.5.1
4.5.2
4.5.3

IEEE 488 Primer
History
General Structure
Send It To My Address
Bus Management Lines
Attention (ATN)Interface Clear (IFC)
Remote Enable (REN)End Or Identify (EOI)
Service Request (SRQ)
Handshake Lines
Data Valid (DAV)
Not Ready For Data (NRFD)
Not Data Accepted (NDAC)

Page
4.1
4.1
4.4
4.4
4.4
4.5
4.5
4.5
4.5
4.6
4.6
4.6
4.6

Table of Contents
Section 4
4.6
4.7
4.7.1
4.7.2
4.7.3
4.7.4
4.7.5
4.7.6
4.7.7
4.7.8
4.7.9
4.7.104.7.11
4.7.124.7.134.7.144.7.15
4.8
4.8.1
4.8.2

IEEE 488 Primer (cont'd)
Data Lines
Multiline Commands
Go To Local (GTL)
Listen Address Group (LAG)
Unlisten (UNL)
Talk Address Group (TAG)
Untalk (UNT)
Local Lockout (LLO)
Device Clear (DCL)
Selected Device Clear (SDC)
Serial Poll Disable (SPD)Serial Poll Enable (SPE)Group Execute Trigger (GET)
Take Control (TCT)
Secondary Command Group (SCG)
Parallel Poll Configure (PPC)
Parallel Poll Unconfigure (PPU)
More On Service Requests
Serial Poll
Parallel Poll

Page
4.7
4.7
4.7
4.8
4.8
4.8
4.8
4.8
4.8
4.9
4.9
4.9
4.9
4.9
4.9
4.10
4.10
4.10
4.11
4.11

Section 5
5.1
5.2
5.3
5.4

Service Information
Factory Service
Theory of Operation
Serial488/4 Main Board Component Layout
Serial488/4 Parts List

Page
5.1
5.1
5.2
5.3

Appendix A

Serial488/4 Command Summary

Appendix B

IEEE Command and Address Messages

Section 1

Introduction

Introduction
1.1 General Description
The Serial488/4 is a four port serial RS-232 or RS-422 interface to the IEEE 488
bus. Each port can be independently programmed for baud rate, stop bits, data bits,
parity and handshaking. The Serial488/4 can inform the bus controller that it hasreceived data through the use of the SRQ facility or by direct inquiry of the numberof serial input bytes available.
The Serial488/4 uses a command address in w hich the serial port parameters
may be specified and serial port or command status is returned.
T he serial data isthen sent and received on a separate address or addresses, providing data transparency
between the serial device and host controller.
The Serial488/4 serial port configuration may be saved in non-volatile RA M to
be used as the default settings w hen next pow ered on, allowing a once only
configuration of the device for many applications.

1.1

Section 1

Introduction

1.2 Available Accessories
Additional accessories that can be ordered for the Serial488/4 include:
CA-7-1

1.5 foot IEEE 488 Cable

CA-7-2

6 foot IEEE 488 Cable

CA-7-36 foot shielded IEEE 488 Cable

CA-7-4

6 foot reverse entry IEEE 488 Cable

CA-23

12 foot 9 pin to 25 pin RS-232 Cable

CN-20

Right angle IEEE 488 adapter, male and female

CN-22
parallelIEEE 488 Multi-tap bus strip, four female connectors in

CN-23

IEEE 488 panel mount feed-through connector, maleand female

Serial488/4 -901

Additional Instruction Manual

1.2

Section 1

Introduction&$87,21
Please read this manual carefully! If equipment is used in any
manner not specified in this manual, the protection provided by
the equipment may be impaired.

1.3 Specifications
Serial Interface&$87,21
Use Ports 1 through 4 only for connection devices having signals
at serial communication levels

Terminal Installation Category:Standard: Not Applicable.

 CE: Category 1.

EIA RS-232C:
 AB, BA, BB, CA, CB
EIA RS-422:
 Balanced Voltage
Character Set:
 Asynchronous bit serial
Duplex: FullWord Length: 7 or 8 data bits
Stop Bits: 1 or 2
Parity: None, odd, or even
Baud Rates:
110, 300, 600, 1200, 1800, 2400, 3600, 4800, 7200, 9600, 19200, or 16x external
clock. The sum of all four channel baud rates not to exceed 38,400 bits/second.

1.3aSection 1

Introduction

Terminator:
 any 8 bit value
Handshaking: Clear to Send (CTS) / Request to Send (RTS), XON/XOFF, or none
I/O buffers:
 56,000 characters - dynamically allocatedOutput Voltage:
 + 5 volts minimum (RS-232C); 5 volts typical (RS-422A)
Input Voltage:
 + 3.0 volts minimum: + 15 volts maximum
Connector:
 9-pin sub-D male.
IEEE 488&$87,21The IEEE 488 terminal must only be used to control a nonisolated IEEE system. The common mode voltage (cable shell toearth) must be zero.

Terminal Installation Category: Standard: Not Applicable.
 CE: Category 1.
Implementation:
 SH1, AH1, T6, TE8, L4, LE4, SR1, RL0, PP0, DC1, DT0, C0, E1
Terminators:
 Selectable CR, LF, LF-CR and CR-LF with EOIProgrammable:
IEEE Terminators, Serial Terminator, EOI, SRQ Mas k, Data Port, Baud Rate,
Word Length, Parity, Stop Bits, Handshake Type, Handshake Control
Connector:
 Standard IEEE 488 connector with metric studs

1.3bSection 1

Introduction

General:$51,1*Service: This product contains no operator serviceable parts, or
operator replaceable parts within the case. Fuse replacement andchanging of selected line voltage must be performed by qualified
service personnel. Never open the Serial488/4 case while the unit
is connected to the AC line.

Terminal Installation Category: Standard: Not Applicable.



CE: Category 2 for Line Voltage
Input terminal. All other terminals
are Category 1.

Dimensions:
 425mm wide x 45mm high x 203mm deep (16.75" x 1.75" x 8")
Weight: 2 kg. ( 4.5 lbs)
Environment: Standard: Indoor use, 0° to 50°C; 0 CE: Indoor use at altitudes below
to 70% R.H. to 35°C. Linearly derate
2000 m, 0 to 40°C; 80% maximum
3% R.H./°C from 35° to 50°C.
RH up to 31°C decreasing linearly
4% RH/°C to 40°C
Controls:
 Power Switch, external dip switch for IEEE addressing mode and IEEE address,
and serial port configuration jumpers (internal).
Indicators:
 LEDs for Talk, Listen, SRQ, Error, Send, and Receive for each Port, and PowerPower:
 Internally selectable 105-125V or 210-250V; 50-60 Hz, 20 VA Max.
&$87,21
Line Voltage: The protective conductor terminal on the AC line
connector must be connected to an external protective earthing
system. Failure to make such a connection will impair protection
from shock.

1.3cSection 1

Introduction

Fuse: 1/4A Slo Blo (for 105-125V power line) or 1/8A Slo Blo (for 210-250V powerline)&$87,21
Fuse Failure: Fuse failure indicates a possible problem within thedevice circuitry. If a fuse blows, contact a qualified service
representative. Replacement fuses are to be installed by qualified
service personnel with the unit disconnected from the powersource and with all other terminals disconnected. If the line
voltage selector is changed, the fuse designated for use with thatline voltage must be used.

1.4 Abbreviations
The following IEEE 488 abbreviations are used throughout this manual.
addr n IEEE bus address "n"
ATN Attention line
CA Controller Active
CR
Carriage Returndata Data String
DCL Device Clear
GET Group Execute Trigger
GTL Go To Local
LA
Listener Active
LAG Listen Address Group
LF
Line Feed
LLO Local Lock Out
MLA My Listen Address
MTA My Talk Address

PPC
PPU
SC
SDC
SPD
SPE
SRQ
TA
TAD
TCT
term
UNL
UNT
*

1.4

Parallel Poll Configure
Parallel Poll Unconfigure
System Controller
Selected Device Clear
Serial Poll Disable
Serial Poll Enable
Service Request
Talker Active
Talker Address
Take Control
Terminator
Unlisten
UntalkUnassertedSection 2

Getting Started

Getting Started
2.1 Inspection
The Serial488/4 was carefully inspected, both mechanically and electrically, prior
to shipment. When you receive the interface, carefully unpack all items from theshipping carton and check for any obvious signs of physical damage which may haveoccurred during shipment. Report any such damage
to the shipping agent
immediately. Retain all shipping materials in the event that shipment back to thefactory becomes necessary.
Every Serial488/4 is shipped with the following....
• Serial488/4• Serial488/4-901• Serial488/4-002• CA-1• FU-1-.25• FE-1• HA-31• HA-41-6• CN-19-9• CN-17-9

Four Channel IEEE 488/Serial Converter
Instruction Manual
Accessory Kit which includes:
Power Cable
Spare 1/4 amp Fuse
Rubber Feet (4)Rack Ears (2)Rack Ear Screws (4)9 Pin Female Connector (4)Hood for CN-19-9 (4)2.2 Front and Rear Panels
Pictured in Figure 2.1 are the front and rear panels of the Serial488/4. The front
panel houses thirteen LED indicators which display the status of the Serial488/4. The
function of each indicator is described below.
SEND (1-4)
ON when the designated port is transmitting data to the serialinterface, OFF when the designated port transmitter is idle.
RECEIVE (1-4) ON when the designated port is receiving data from the serialinterface, OFF when the port 1 receiver is idle.

2.1

Section 1

Introduction

2.2

Section 2

Getting Started

TALK

ON when the Serial488/4 is in the Talker active state, OFF when the
Serial488/4 is in the Idle or Listener active state

LISTENON when the Serial488/4 is in the Listener active state, OFF when
the Serial488/4 is in the Idle or Talker active state

SRQ

ON when the Serial488/4 has generated a service request, OFF
when no SRQ is pending. (See Section 3 for more information.)

ERROR

ON when an error has occurred, OFF when no error condition
exists. (See Section 3 for more information.)

POWER

ON when power is applied to the Serial488/4 and the power switch
on the back panel is in the ON position (depressed). OFF whenpower is not present or the internal fuse or power supply is faulty.

Mounted on the rear panel of the Serial488/4 are the power cable connector, thepower on/off switch, the IEEE 488 bus connector, the addressing mode/address switch
and four 9 pin Sub-D male connectors, one for each serial port.

2.3 IEEE 488 Bus Configuration
The Serial488/4 must be user-configured for proper operation over the IEEE 488
bus. Bus configuration includes selection of addressing mode, bus address, and bus
terminator. Each of these configuration selections are described below.
The Serial488/4 bus addressing mode and bus address are determined by theeight position switch located on the rear panel (see Figure 2-1).
Sw itch positions
SW1-1 through SW1-5 determine the IEEE address (0 - 30); SW1-6 and SW1-7 are
not used; SW1-8 determines the addressing mode (dual primary or secondary). SW1
is set at the factory for IEEE address 8 and dual primary addressing mode as shown in
Figure 2-2. SW 1 switch settings are read only w hen the Serial488/4 is powered on
and should only be set before power is applied. If it is necessary to change the switch
setting, first be sure the power cord is disconnected from AC line. Then, with a small
flat blade screwdriver, slide each switch into the position desired. Refer to Sections
2.3.1 and 2.3.2 for a discussion of the various mode and address selections.

2.3

Section 1

Introduction

Figure 2-2. SW1 Factory Default Setting
1
0

123 4 5 6 7 8

Switch
Side
View

DOT

IEEE Address = 8
Not Used
Dual Primary Addressing
Mode

The bus terminator is determined by the last Bus Terminator (Yn) command sent
to the bus as described in Section 3. The bus terminator can be set to any of four
available options: CR only ( Y0), LF only ( Y1), CR LF ( Y2), and L F CR ( Y3). On
initial power-up, the default value is ( Y2) CR L F. To change the power-up default
terminator, first set the terminator using the Yn command. Then save the selection
using the Save Configuration ( S1) command as described in Section 3.
Refer tosection 2.3.3 for a discussion of the bus terminator.
2.3.1 Serial488/4 Addressing Modes
To provide transparent serial data communications, the Serial488/4
occupies either 1 or 2 primary addresses on the IEEE 488 bus, dependent
upon the addressing mode used. The two available addressing modes aresecondary and dual primary. One address is used for sending commands toand receiving status from the Serial488/4. T he other addresses are used
exclusively for serial data transfer. The addressing mode is determined byposition 8 of SW 1 (located on the rear panel). Switch position SW1-8 foreach mode is shown in Figure 2-4.
Examples are given at the end of this section to illustrate thedifferences between the two modes and how each is used to communicate
with the Serial488/4.

2.4

Section 2

Getting Started

Figure 2-3. SW1 View for Addressing Mode Selection
10112345 678
Secondary AddressingMode012345 678

Switch
Side
View

DOT

Dual Primary AddressingMode

2.3.1.1 Secondary Addressing Mode
When Secondary addressing modeis selected,
communications with the Serial488/4 is accomplished by using the
primary bus address selected by SW 1-1 through SW 1-5 and an
additional secondary bus address. Secondary address 00 is used intransferring command and status information while secondary
addresses 01 through 04 are used for serial data transfers with serial
ports 1 through 4 respectively. In this mode, control of the serial
ports are multiplexed through secondary address 00,
thecommand/status address, with the Port (Pn) command selecting thedesired port. D ata transfers, however, are not multiplexed as eachserial data port has its own unique secondary address.
Figure 2-4 illustrates the relationship betw
een thecommand/status and serial data addresses w hen using thesecondary addressing mode.

2.5

Section 1

Introduction

Figure 2-4. Pictorial View of the Secondary Addressing Mode
IEEE 488
Secondary
Address 00(command)

Secondary Addresses
01 - 04
04
02
03
01(Port 1) (Port 2) (Port 3) (Port 4)

Port SelectCommand(Pn)

Port 1
Control /StatusPort 2Control /StatusPort 3Control /StatusPort 4
Port 1
Control / Data
StatusPort 2
Data

Port 3
Data

Port 4Data

2.3.1.2 Dual Primary Addressing Mode
When Dual Primary addressing mode is selected,
communications with the Serial488/4 is accomplished by using two
consecutive primary IEEE bus addresses. Th ese addresses are
selected by SW-2 through SW1-5, SW1-1 (the LSB) of the address
is ignored. Of the two addresses specified, the even address is usedin transferring command and status information andthe odd
address is used for serial data transfers. In this mode, control of theserial ports is multiplexed through the even or command/status
address, with the Port ( Pn) command selecting the desired port.
Serial data transfers are multiplexed through the odd or data
address, again with the Port ( Pn) command selecting the desired
port.
Figure 2-5 illustrates the relationship between the

2.6Section 2

Getting Started

command/status and serial data addresses w
primary addressing mode.

hen using the dual

Figure 2-5 Pictorial View of the Dual Primary Addressing
ModeIEEE 488
Odd Address (09)(data )

Even Address (08)(command )Port Select Command

Port 1
Control /StatusPort 2Control /StatusPort 3Control /StatusPort 4
Port 1
Control / Data
StatusPort 2
Data

Port 3
Data

Port 4Data

2.3.2 IEEE 488 Address Selection
The IEEE 488 bus address is set by SW1-1 through SW1-5 (locatedon rear panel). The address is read only at pow er on and can be set from 0
through 30 when using the secondary addressing mode, or 0 to 28 using thedual primary addressing mode. T he address is selected by simple binary
weighting with SW1-1 being the least significant bit and SW 1-5 the mostsignificant bit (see Figure 2-6). SW1 switch positions for IEEE addresses 0
through 30 are listed in Table 2-1. The factory default is address 8.
NOTE: If address 30 / 31 is selected, when using dual primary addressing
mode, it defaults to address 28 / 29 because the IEEE 488 standard has
reserved address 31. Similarly if address 31 is selected, when using thesecondary addressing mode, it defaults to address 30.

2.7

Section 1

Introduction

Figure 2-6. SW1 View for IEEE Bus Address Selection

1
0

DOT

SwitchSide
View

123 4 5 6 7 8

0 x 16 = 0
=8
1x8
=0
0x4
=0
0x2
0x1 + =0IEEE Address = 8

Table 2-1. SW1 Switch Positions(IEEE Address Selection)
IEEE Bus
Address
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

SW1 setting
12345
00000
10000
01000
11000
00100
10100
01100
11100
00010
10010
01010
11010
00110
10110
01110
11110

IEEE Bus
Address
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31

2.8

SW1 setting
12345
00001
10001
01001
11001
00101
10101
01101
11101
00011
10011
01011
11011
00111
10111
01111
11111

Section 2

Getting Started

2.3.3 IEEE 488 Bus Terminator Selection
The terminating characters sent when status is output
by theSerial488/4 are set by using the T erminator (Yn) command. As shippedfrom the factory, the unit's power on IEEE 488 bus terminators are CR LF.
The power on default terminators can be changed to any of the
fouravailable options discussed in detail in the Command D escription section.
The four available terminator command options are : CR only (Y0), LF
only (Y1), CR LF (Y2), and L F CR (Y3). If it is desired to haveparticular power on default terminators, the terminators are set using the
Terminator Command and then saved
using the Save Configurationcommand (S1).
The Serial488/4 ignores all terminators received from thehostcontroller on the command address. O nly the Execute command (X) is
used to signal the Serial488/4 that a command string has been completed.
The Serial488/4 ignores all terminators sent to the serial data address(es),but will monitor the serial data it receives for the character specified with
the Serial Terminator command (Tn). If enabled by the Data EOI
command (Ln), EOI will be asserted when the serial terminator character issent to the host controller. E ach serial port may use a separate serial
terminator.

2.4 Memory Usage
Memory in the Serial488/4 is dynamically allocated for the serial
input and
output buffers. This allows for the most efficient utilization of memory for any given
application. This memory is kept in the U SER 'heap' (a vernacular for heap ofmemory) until required by the system.
At power on each serial port is allocated tw o 127 byte mini-buffers or queues,
one for input and the other for output. W hen the serial port requires more buffer
space, additional queues are allocated. W hen a queue is emptied, it is released fromthe serial port so that it may be reallocated when, and where required.
There are approximately 430 queues available for a total of over 54,000 bytes of

2.9

Section 1

Introduction

buffer (character) space. Of the available queues, 398 are issued w ithout regard tocontrolling the receipt of additional serial input data (handshaking).
When one of the last 32 queues is allocated the Serial488/4 signals the serial
devices that they should stop sending serial data. T his is accomplished by either unasserting RTS or sending the 'X OFF' control character depending upon how theindividual serial ports are programmed. Also the Serial488/4 sets a bit in its serial poll
status byte and optionally issues an SRQ to inform the host bus controller of the 'low
memory' condition. When more than 32 queues become available the serial devices
are signaled to allow more serial input data by asserting RTS or issuing the 'XON'
control character as appropriate. The 'low memory' bit of the serial poll status byte isalso cleared by more than 32 queues becoming
available, however if SRQs wereenabled the bit will remain set until at least one serial poll request is received after theoriginal 'low memory' warning.
When on of the last 16 queues is allocated the Serial488/4 w ill stop accepting
serial output data from the host bus controller. In this situation the host bus controller
should read any available serial input data or wait for the existing serial output data to
be sent to the serial devices before continuing.

2.5 Serial Port Configuration
The Serial488/4 has four separate serial ports, each of w hich can be configured
independently of the others. Complete serial port configuration is accomplished byusing both hardware jumpers and software commands. Hardware jumpers, located on
the main board behind each serial connector, are used
to to configure the port
electrically as either RS-232 or RS-422. Softw are configuration consists of various
commands for setting baud rate, stop bits, parity, and other asynchronous
communications characteristics.

2.10

Section 2

Getting Started

2.5.1 RS-232/422 Configuration Jumpers
Each serial port is capable of operating w ith either RS-232 or RS-422
electrical characteristics. This selection is done via a set of hardw
arejumpers located on the main board behind each serial connector. A twelve
position jumper plug must be inserted in one of the two available positions
for proper operation. These jumpers are factory set to configure all ports for
RS-232 levels as illustrated in figure 2.7.
If configured for RS-422, each port's Receive Data (RxD) and Clear to
Send (CTS) input lines may optionally be terminated with a 100 ohm
resister. Termination resisters are selected by positioning the two flea clips
located behind each serial connector tow ards the front panel, or upper
position. T hese jumpers are factory set to the unterminated position,
towards the rear panel. The jumpers associated with each port are: port 1
JP104 &JP105, port 2 JP109 & JP110, port 3 JP114 & JP115, and port 4
JP119 & JP120.
Figure 2.8 illustrates port 1 jumpered in RS-232,
RS-422
unterminated, and RS-422 terminated with 100 ohm resister (left to right).
NOTE: When using RS-422 in a single ended configuration ports must be
unterminated for proper operation.
NOTE: Termination jumpers have no effect w hen ports are configured for
RS-232 operation.
WARNING
Never open the Serial488/4 case while it is connectedto the AC line. Internal voltage potentials exist which
could cause personal injury or death.
To open the Serial488/4 place it on a flat surface then remove the fourscrews on top of the case and remove the top cover. Located in front of
the four serial port connectors,
are four sets of connectors w
ith
configuration jumpers, one set per serial port.

2.11

Section 1

Introduction

To reconfigure a serial port for RS-422 operation, remove the twelve
position configuration jumper and reinsert it so that the center socket is
now connected to the left socket as viewed from the rear of the unit. If
single ended operation is desired move the tw o flea clips to the position
farthest from the serial port connectors.
Once the jumper(s) have been repositioned for your particularapplication, make note of the new jumper settings for later reference andcarefully reassemble the unit.

RS422 RS232

RS422 RS232

RS422 RS232

2.12

JP104

JP105

JP109

JP110

JP114

JP115

JP119

JP120

Figure 2-7. View of Configuration Jumpers - Factory Setting
All Ports configured as RS-232

RS422 RS232

Section 2

Getting Started

RS422 RS232

RS422 RS232

JP104

JP105

JP104

JP105

JP104

JP105

Figure 2-8. View of Alternate Port 1 Configurations
RS-232, RS-422 Unterminated, & RS-422 TerminatedRS422 RS232

2.5.2 Asynchronous Communications Setup
Associated with each serial port are a number of parameters which
control the the transfer of serial data. These parameters, and the commands
used to set them, are listed in Table 2-4.
Table 2-4. Serial Port Configuration Parameters
Stop Bits
An
Baud Rate
Bn
ParityCn
Data Bits
Dn
Handshake Type Gn
Handshake Control Nn

Number of stop bits; 1 or 2.
Baud rate; 110 - 19200, or external.
Parity; even, odd, or none.
Number of data bits; 7 or 8.
Handshake type; RTS/CTS, XON/XOFF, or none
Handshake control; automatic, hold-off, or accept.

2.13

Section 1

Introduction

Configuration of the serial ports may be accomplished at any time bysending one or more command strings to the Serial488/4 command/status
address. Configuration commands may be sent individually or grouped
together to fully setup a port using only one message. Furthermore all four
serial ports may be configured using only one message so long as each port
setup begins w ith a Port ( Pn) command and ends with an E xecute (X)command. Several examples are presented below toillustrate different
configuration methods.
Example 1:

Configure all ports using dual primary addressing mode.

PRINT#1,"CLEAR08"
PRINT#1,"OUTPUT08;P1X"
PRINT#1,"OUTPUT08;A0B3C1D0X"
PRINT#1,"OUTPUT08;P2X"
PRINT#1,"OUTPUT08;A1B9C0D1X"
PRINT#1,"OUTPUT08;P3X"
PRINT#1,"OUTPUT08;A0B7C2D1X"
PRINT#1,"OUTPUT08;P4X"
PRINT#1,"OUTPUT08;A0B10C1D1X"
Example 2:

reset the Serial488/4
Select port 1
Specify 1 stop bit, 1200 baud, odd
parity, and 7 data bits
Select port 2
Specify 2 stop bits, 9600 baud, noparity, and 8 data bits
Select port 3
Specify 1 stop bit, 4800 baud, evenparity, and 8 data bits
Select port 4
Specify 1 stop bit 19200 baud, noparity, and 8 data bits

Configure all ports using secondary addressing mode.

Reset the Serial488/4
PRINT#1,"CLEAR0800"
PRINT#1,"OUTPUT0800;P1A0B3C1D0X" Select port 1 and specify
1 stop bit, 1200 baud, odd
parity, and 7 data bits
PRINT#1,"OUTPUT0800;P2A1B9C0D1X" Select port 2 and specify
2 stop bits, 9600 baud, noparity, and 8 data bits
PRINT#1,"OUTPUT0800;P3A0B7C2D1X" Select port 3 and specify
1 stop bit, 4800 baud, evenparity, and 8 data bits

2.14

Section 2

Getting Started

PRINT#1,"OUTPUT0800;P4A1B10C1D1X" Select port 4 and specify
2 stop bits 19200 baud, noparity, and 8 data bits

2.5.3 Handshake Configuration
The Serial488/4 uses handshaking to prevent loss of data while bothtransmitting and receiving serial data. T he function of handshaking is toprevent a sender from transmitting more data than a receiver can accept.
The Serial488/4 accomplishes this in one of tw o ways, by using hardware
or software handshaking.
Hardware handshaking utilizes the Request to Send ( RTS) line of theserial interface to inform the connected device that the Serial488/4 is able
to accept data. Inversely the Clear to Send (CTS) line of the serial interface
is monitored by the Serial488/4 to determine w hether or not the connected
device is able to accept data. The Serial488/4 may be configured to use thehardware (RTS/CTS) handshaking method w ith the G0 command. In
addition the automatic handshaking control option (N0) is normally used.
This option will negate and assert the RTS line depending on the amount ofmemory available for receiving serial data. The manual handshake control
options, N1 and N2, may be used in special circumstances to un-assert
and assert the RTS line under program control if desired. The clock output
handshake control option (N3) is not allowed when hardware handshaking
is being used and will generate a command conflict error if attempted.
The software handshaking method uses special control characters,
transmitted along with the serial data, to prevent loss of serial data. T he
XOFF character (&H11) is transmitted to inform the connected device that
the Serial488/4 is no longer able to accept
data. The XON character(&H13) is transmitted to inform the connected device that the Serial488/4
is again able to accept data. Similarly the Serial488/4 monitors the serial
data it receives for the occurrence of XON/XOFF control characters andstops or starts the transmission of data to the connected device accordingly.
The Serial488/4 may be configured for software (XON/XOFF) handshaking
by using the G1 command. In addition the automatic handshaking control

2.15

Section 1

Introduction

option (N0) is normally used. T his option w ill cause the Serial488/4 tosend XOFF and XON control characters depending on the amount ofmemory available for receiving serial data. The manual handshake control
options (N1 and N2) may be used in special circumstances to send XOFF
and XON characters under program control if desired.
The clock output handshake control option (N3) operates the same as
the automatic handshake option, but will also cause the serial baud clock x
16 signal to be output on the RTS line.
In addition to softw are and hardw are handshaking the Serial488/4
provides a No Handshaking mode w hich may be used in special
circumstances where handshaking is not desired. This mode is selected byusing the G2 command. In the no handshake mode the RTS line may be
manually un-asserted or asserted using the N1 and N0 or N2 handshake
control commands, or the serial baud clock x 16 may be output on the RTS
line if the N3 command is used.

2.5.4 Serial Signal Descriptions
The Serial488/4 is equipped w ith four DB-9S connectors on its rear
panel and requires DB-9P mating connectors. The Serial488/4's connector
is configured as an IBM A T when RS-232 levels are selected andMacintosh II/SE/Plus when RS-422 levels are selected. Tables 2.2 and 2.3
list the RS-232 and RS-422 pin connections.
E ach of these signals aredescribed below.
RxD-

Receive Data (input)
This pin accepts serial data sent by an RS-232 or RS-422 device.
The serial data received is expected to match the word length,baud rate, stop bits, and parity configuration of the particular port.
This signal is low true.

RxD+

Receive Data (input)
This pin accepts serial data sent by an
RS-422 device. It
functions identically to RxD - except that its polarity is inverted.
This signal is high true.

2.16

Section 2

Getting Started

TxD-

Transmit Data (output)
This pin transmits serial data to an RS-232 or RS-422 device. The
serial data received is sent with the word length, baud rate, stop
bits, and parity configured for the particular port. This signal is
low true.

TxD+

Transmit Data (output)
This pin transmits serial data to an
RS-422 device. The pinfunctions identically to TxD- except that its polarity is inverted.
This signal is high true.

CTS+

Clear To Send (input) / 16 x Baud Clock (input)
The CTS+ input is used as a hardware handshake line to prevent
the Serial488/4 from transmitting serial data to an RS-232 or RS422 device w hen it is not able to accept it.
When RTS/CTS
handshaking is selected using the ( G0) command, the Serial488/4
will not transmit data out TxD+ while this signal is un-asserted(low). If XON/XOFF (G1) or no handshaking ( G2) is selected,
the CTS+ line is ignored when transmitting data.
If XON/XOFF (G1) or no handshaking (G2) is selected the CTS
line may be used to input a clock signal which is sixteen times thedesired baud rate. T his mode is selected using the Baud Ratecommand (B11).

CTS-

Clear To Send (input) / 16 x Baud Clock (input)
The CTS- input is used as a hardware handshake line with RS-422
devices. The pin functions identically to CTS+ except that its
polarity is inverted. This signal is low true.

RTS+

Request To Send (output) / 16 x Baud Clock (output)
The RTS+ output is used as a hardware handshake line to prevent
an RS-232 device from transmitting serial data to the Serial488/4
when it is not able to accept it. When automatic
RTS/CTShandshaking is selected using the ( G0) and (N0) commands, theSerial488/4 will assert (high) the RTS+ signal when greater than

2.17

Section 1

Introduction

4096 memory locations are available in its internal buffers. If
available memory drops below 4096 bytes, the Serial488/4 unasserts (low) the RTS+ signal. With RTS/CTS handshaking
selected, the RTS+ signal may also asserted and un-asserted underprogram control by using the ( N2) and ( N1) handshake control
commands respectively.
If XON/XOFF handshaking ( G1) is selected, the RTS+ line
may either be programmed as either permanently asserted (high)or to output sixteen times the baud rate clock. These options are
selected using the handshake control command (Nn).
If No handshaking (G2) is selected, the RTS+ line may either be
programmed as either permanently asserted (high), permanently
un-asserted (low), or to output a signal sixteen times the baud rate
clock. These options are selected using the handshake control
command (Nn).
RTS Request To Send (output) / 16 x Baud Clock (output)
The RTS- output is used as a hardw are handshake line w ith RS422 devices The pin functions identically to RTS+ except that its
polarity is inverted. This signal is low true.
GND

GroundThis signal sets the ground reference point for
input and output signals.

2.18

the other RS-232

Section 2

Getting Started

Table 2-2. RS-232 Serial Port Pin Connections
Pin
1
2
3
4
5
6
7
8
9

Description
No connection
Receive data (RxD-)
Transmit data (TxD-)
No connection
GroundNo connection
Request to send (RTS+)
or 16 x baud clock
Clear to send (CTS+)
or 16 x baud clock
No connection

Input/Output
Input
OutputOutputOutput
Input
Input

Table 2-3. RS-422 Serial Port Pin Connections
Pin

Description

Input/Output

1
2

GroundClear to send positive (CTS +)or 16 x baud clock
Clear to send negative (CTS -)or 16 x baud clock
Transmit data positive (TxD +)Transmit data negative (TxD -)Request to send positive (RTS +)or 16 x baud clock
Request to send negative (RTS -)or 16 x baud clock
Receive data positive (RxD +)Receive data negative (RxD -)

Input
Input
Input
Input
OutputOutputOutputOutputOutputOutput
Input
Input

3
4
5
6
7
8
9

2.19

Section 1

Introduction

2.6 IEEE 488 Bus Implementation
The Serial488/4 implements many of the capabilities defined by the IEEE 488
1978 specification. These are discussed in the follow ing sections. The bus uniline andmultiline commands that the Serial488/4 does not support or respond to include:
Remote Enable (REN)
Go to Local (GTL)
Local Lockout (LLO)
Take Control (TCT)Group Execute Trigger (GET)

Parallel Poll (PP)
Parallel Poll Configure (PPC)
Parallel Poll Unconfigure (PPU)
Parallel Poll Disable (PPD)

2.6.1 My Talk Address (MTA), My Secondary Address (MSA)The Serial 488/4 is addressed to talk in one of two ways dependent
upon the addressing mode selected. When dual primary addressing modeis selected, the Serial488/4 is addressed to talk upon receipt of MT A. If
secondary addressing mode is selected the Serial488/4 is addressed to talkupon receipt of an MTA and MSA sequence.
When the Serial488/4 is addressed to talk on its
command/status
address, it outputs either a U0, Un, or query ( ?) response message
depending on which was last requested. The status output bus terminators
are then appended to the output and EOI is asserted if the status EOI option
was enabled. The Serial488/4 must be readdressed to talk to
perform
subsequent reads.
When the Serial488/4 is addressed to talk on a serial data address, it
retrieves data from the associated serial input buffer and outputs it to theIEEE bus. If the serial terminator character is encountered and the data
EOI option is enabled ( L0), EOI is asserted on that character. EOI may
also be asserted on the last character in the serial data buffer if
this data
EOI option is enabled (L2).

2.20

Section 2

Getting Started

2.6.2 My Listen Address (MLA), My Secondary Address (MSA)The Serial 488/4 is addressed to listen in one of tw o ways dependent
upon the addressing mode selected. When dual primary addressing modeis selected, the Serial488/4 is addressed to listen upon receipt of ML A. If
secondary addressing mode is selected the Serial488/4 is addressed tolisten upon receipt of an MLA and MSA sequence.
When the Serial488/4 is addressed to listen
on its command/status
address it accepts characters from the active talker and interprets thesecharacters as commands and command parameters. These commands are
fully explained in Section 3.
When the Serial488/4 is addressed to listen on a serial data address it
accepts data from the active talker and places this data into the appropriate
serial output buffer, to be transmitted verbatim.
2.6.3 Device Clear (DCL and SDC)
Device Clear resets the Serial488/4 to pow er on defaults and empties
all the serial input and output buffers.
Any pending data and Service
Requests (SRQ), including the information they convey are lost.
2.6.4 Interface Clear (IFC)
IFC places the Serial488/4 in the T alker/Listener Idle State and clears
any pending request from service (SRQ). The condition which caused the
SRQ, however, remains unchanged.
2.6.5 Serial Poll Enable (SPE)When Serial Poll E nabled, the Serial488/4 sets itself to respond to aserial poll w ith its serial poll status byte if addressed to talk.
When theserial poll byte is accepted by the controller, any pending SRQs are cleared.

2.21

Section 1

Introduction

The Serial488/4 will continue to try to output its serial poll response until it
is serial poll disabled by the controller.
2.6.6 Serial Poll Disable (SPD)Disables the Serial488/4 from responding to serial polls
controller.

by the2.6.7 Serial Poll Response
Whenever the Serial488/4 generates an SRQ, a serial poll of either thecommand/status address or a serial data address w ill return a serial poll
status byte of at least 64 decimal show ing that an SRQ has been generated
by the Serial488/4. The status byte returned can be used to determine thecause of the Service Request. T hese responses are explained in detail in
Section 3.
2.6.8 Unlisten (UNL)UNL places the Serial488/4 in the Listener Idle State.
2.6.9 Untalk (UNT)
UNT places the Serial488/4 in the Talker Idle State.

2.7 Hardware Installation
Included with the Serial488/4 are accessories for rack or bench use. If rack
mount installation is required, install the tw o rack ears using the enclosed
screws. as shown in Figure 2-6. These ears can be installed so either the front or
the rear of the unit faces the front of the rack fixture.

2.22

Section 2

Getting Started

Figure 2-6. View of Enclosure showing Rack Hardware Installation

Enclosure
Enclosure
Top or Bottom
View
Top View

Rack Ear
Screw (2 per ear)

If bench installation is required, the rubber feet can be installed on theunderside of the unit approximately one inch from each corner as shown in
Figure 2-7.
Figure 2-7. View of Enclosure Showing Feet Placement

Enclosure
EnclosureTop
View
Bottom
View
1"
1"

2.23

Section 1

Introduction

2.8 Powerup
To begin operating the Serial488/4, plug the power cord into an AC outlet.
WARNING
The interface is intended for INDOOR USE ONLY.
Failure to observe this warning could result inequipment failure, personal injury or death.
After plugging in the pow er cord, turn on the Serial488/4 by depressing the rear
panel power switch (Figure 2-1). All the front panel L EDs should light for
approximately two seconds w hile the Serial488/4 performs an internal ROM and
RAM self check. At the end of this self check all indicators should turn off except
POWER.
If you obtain the above response then your Serial488/4 is alive and w ell. If allLEDs remain on, then a ROM error has occurred. If all LEDs (except the power LED)
flash continuously, then a RAM error has occurred. Try cycling the pow er to theSerial488/4 to determine that the error is repeatable.
If the LEDs do not flash and the PO WER indicator does not remain lit, there may
not be any power supplied to the interface. In this event, check to make sure the AC
power is supplied to the unit. If the problem persists, refer to the Service Information
section of this manual.

2.9 Programming Examples
These examples use the IO tech Personal488 and the BA SIC Keyboard Controller
program listed in appendix D . The Keyboard Controller program allow s directcommunication with the Serial488/4 (or any IEEE device on the bus) and is the mostconvenient method of exercising the Serial488/4 and becoming familiar with thecommands and their actions.
First, set SW1 for Dual Primary addressing mode and bus address 8. Connect anIEEE cable from the Serial488/4 to the IEEE connector on the Personal488. Turn on

2.24

Section 2

Getting Started

the Serial488/4 by depressing the rear panel pow er switch. A ll of the front panel
LEDs should light for approximately one second w hile the Serial488/4 performs aninternal ROM and RAM self test. At the end of this self test all indicators should turnoff except Power.
Run the Keyboard Controller program and verify that the CMD> prompt appearson the screen. The following is a listing of commands given to the Serial488/4 andthe response received. Responses are separated by extra vertical spacefor easierreading although these spaces will not actually appear when using the program.
Command prompt from Keyboard Controller program
CMD>
Restore configuration to factory default values
CMD>OUTPUT08;S0X
Reset the Serial488/4
CMD>CLEARCMD>ENTER08
1.3C0E0F0G0I000K0M000P0R0Y0Z55880
Status message shows all default options are in use
select port 1 and port 1 status

CMD>OUTPUT08;P1U1X
CMD>ENTER08
1.3A0B009C0D1G0I00000L1N0O00000T010U1

Status message shows all default options are in use
CMD>OUTPUT08;a1b7d0x Change the configuration of port 1
CMD>ENTER08
1.3A1B007C0D0G0I00000L1N0O00000T010U1
Status message shows new options are in use
select port 3 and port 3 status

CMD>OUTPUT08;P3U3X
CMD>ENTER08
1.3A0B009C0D1G0I00000L1N0O00000T010U3

Status message shows all default options are in use
Change parity option for port 3
Request current parity option

CMD>OUTPUT08;C2X
CMD>OUTPUT08;C?X
CMD>ENTER08
C2
C2 is returned since we changed the default
CMD>OUTPUT09;hello message
send "hello message" out port 3
select port 1
CMD>OUTPUT08;P1X

2.25

Section 1

Introduction

CMD>OUTPUT09;hello message
send "hello message" out port 1
CMD>ENTER08
1.3A0B009C2D1G0I00000L1N0O00000T010U3
port 3 status is returned since U3 has not changed
CMD>ENTER09???
port 3 serial data is returned if any has been received
The above examples may also be repeated using Secondary addressing. To dothis, turn off the Serial488/4, set SW1 for Secondary addressing mode. The session
would then appear as presented below.
Command prompt from Keyboard Controller program
CMD>
Restore configuration to factory default values
CMD>OUTPUT0800;S0X
Reset the Serial488/4
CMD>CLEARCMD>ENTER0800
1.3C0E0F0G0I000K0M000P0R0Y0Z55880
Status message shows all default options are in use
CMD>OUTPUT0800;P1U1X select port 1 and port 1 status
CMD>ENTER0800
1.3A0B009C0D1G0I00000L1N0O00000T010U1
Status message shows all default options are in use
Change the configuration of port 1
CMD>OUTPUT0800;a1b7d0x
CMD>ENTER0800
1.3A1B007C0D0G0I00000L1N0O00000T010U1
Status message shows new options are in use
CMD>OUTPUT0800;P3U3X select port 3 and port 3 status
CMD>ENTER0800
1.3A0B009C0D1G0I00000L1N0O00000T010U3
CMD>OUTPUT0800;C2X
CMD>OUTPUT0800;C?X

Status message shows all default options are in use
Change parity option for port 3
Request current parity option

2.26

Section 2

Getting Started

CMD>ENTER0800
C2
C2 is returned since we changed the default
CMD>OUTPUT0803;hello message
send "hello message" out port 3
CMD>OUTPUT0801;hello message
send "hello message" out port 1
CMD>ENTER0800
1.3A0B009C2D1G0I00000L1N0O00000T010U3
port 3 status is returned since U3 has not changed
CMD>ENTER0801???
port 1 serial data is returned if any has been received
CMD>ENTER0803???
port 3 serial data is returned if any has been received

2.27

Section 3

Command Descriptions

Command Descriptions
Control of the Serial488/4 is implemented with 22 bus commands, described here
in detail. Examples are given for the commands using a PC functioning as an IEEE
488 controller by using the IO tech GP488B board and associated driver softw are,
Driver488. All examples are given using GWBASIC or BASICA. The Serial488/4
bus address is assumed to be set to 8 for all examples.
In order to establish communication w ith Driver488 from G WBASIC or
BASICA, the following sequence must be used:
10 OPEN "\DEV\IEEEOUT" FOR OUTPUT AS #1
20 IOCTL#1,"BREAK"
30 PRINT#1,"RESET"
40 OPEN "\DEV\IEEEIN" FOR INPUT AS #2
All of the command examples that follow assume thatproperly opened and reset by the above sequence.

the driver has been

All commands may be entered in upper or low er case. Each command offers aquery (?) option. This option can be used to determine the present configuration ormode of a command previously executed. In addition, there are four commands thatare query only ( i.e., they are used as status commands and have no set options). Any
number of query commands may be combined into one string to allow the user toconstruct a specialized status command requesting the Serial488/4 to return only that
information which is of interest .

Attention!
It is necessary that the EXECUTE command (X) follow
all command strings sent to the Serial488/4. No commands
are executed until an X is received by the Serial488/4. The
only exception to this rule are the querycommands.
Query commands do not have to be followed by an X.

3.1

Section 3

Command Descriptions

Stop Bits

An

The Stop Bits command programs the number of stop bits contained in eachcharacter transmitted and received by the selected
serial port. The Port Selectcommand (Pn) is used to select the serial port regardless of addressing mode in use.
The factory default setting as set by the Save Configuration command ( S0) is A0, 1
stop bit.
A0
A1
A?

One stop bit selected.
Two stop bits selected.
Return current stop bit setting.

Example 1: Set stop bits for ports 1 and 3 using dual primary addressing mode
PRINT#1,"CLEAR08"
PRINT#1,"OUTPUT08;P1X"
PRINT#1,"OUTPUT08;A0X"
PRINT#1,"OUTPUT08;P3A1X"

reset the Serial488/4
select port 1 as the current port
select 1 stop bit
select 2 stop bits for port 3

Example 2: Set stop bits for ports 1 and 3 using secondary addressing mode
PRINT#1,"CLEAR0800"
PRINT#1,"OUTPUT0800;P1X"
PRINT#1,"OUTPUT0800;A0X"
PRINT#1,"OUTPUT0800;P3A1X"

reset the Serial488/4
select port 1 as the current port
select 1 stop bit
select 2 stop bits for port 3

3.2

Section 3

Command Descriptions

Baud Rate

Bn

The Baud Rate command programs the speed at which serial data istransmitted and received by the selected serial port. The Port Select command (Pn)is used to select the serial port regardless of addressing mode in use. Additionally the
CTS line may be used to input a clock signal which is sixteen times the desired baudrate if B11 is selected. The factory default setting as set by the Save Configurationcommand (S0) is B9, 9600 baud.
NOTE: The sum of the baud rates for all four ports cannot exceed 38,400 baud or data
may be lost.
B0
B1
B2
B3
B4
B5
B6
B7
B8
B9
B10
B11
B?

110 baud selected
300 baud selected
600 baud selected1200 baud selected1800 baud selected
2400 baud selected
3600 baud selected
4800 baud selected
7200 baud selected
9600 baud selected
19200 baud selected
16 x External clock selected
Return current baud setting

Example1: Set baud rates for ports 1 and 2 using dual primary addressing mode
PRINT#1,"CLEAR08"
PRINT#1,"OUTPUT08;P1X"
PRINT#1,"OUTPUT08;B3X"
PRINT#1,"OUTPUT08;P2B10X"

reset the Serial488/4
select port 1 as the current port
select 1200 baud
select 19200 baud on port 2

Example 2: Set baud rates for ports 1 and 2 using secondary addressing mode
reset the Serial488/4
PRINT#1,"CLEAR0800"
PRINT#1,"OUTPUT0800;P1B3X" select 1200 baud for port 1
PRINT#1,"OUTPUT0800;P3b10X" select 19200 baud for port 3

3.3

Section 3

Command Descriptions

ParityCn

The Parity command specifies the parity, if any, to be transmitted and received
with each character of the selected serial port. The Port Select command ( Pn) is used
to select the serial port regardless of addressing mode in use. If even or odd parity isenabled the Serial488/4 will append a bit of the correct parity to each charactertransmitted. However, the Serial 488/4 does not check parity on characters received.
The factory default setting as set by the Save Configuration command (S0) is C0,
parity disabled.
C0
C1
C2
C?

Parity disabled.
Odd parity enabled.
Even parity enabled.
Return current parity setting.

Example 1: Set parity for port 2 using dual primary addressing mode.
PRINT#1,"CLEAR08"
PRINT#1,"OUTPUT08;P2C1X"

reset the Serial488/4
select odd parity for port 2

Example 2: Set parity for port 4 using secondary addressing mode.
PRINT#1,"CLEAR0800"
PRINT#1,"OUTPUT0800;P4C2X"

reset the Serial488/4
select even parity for port 4

3.4

Section 3

Command Descriptions

Data Bits

Dn

The Data Bits command programs the number of data bits contained in eachcharacter transmitted and received by the selected serial port. T he Port Selectcommand (Pn) is used to select the serial port regardless of addressing mode in use.
The factory default setting as set by the Save Configuration command (S0) is D1,eight data bits.
D0
D1
D?

Seven data bits selected.
Eight data bits selected.
Return current data bits setting

Example1: Set data bits for ports 1 and 3 using dual primary addressing mode.
PRINT#1,"CLEAR08"
PRINT#1,"OUTPUT08;P1X"
PRINT#1,"OUTPUT08;D0X"
PRINT#1,"OUTPUT08;P3D1X"

reset the Serial488/4
select port 1 as the current port
select 7 data bits
select 8 data bits for port 3

Example 2: Set data bits for ports 1 and 3 using secondary addressing mode.
PRINT#1,"CLEAR0800"
PRINT#1,"OUTPUT0800;P1X"
PRINT#1,"OUTPUT0800;d0X"
PRINT#1,"OUTPUT0800;P3d1X"

reset the Serial488/4
select port 1 as the current port
select 7 data bits
select 8 data bits for port 3

3.5

Section 3

Command Descriptions

Error QueryE?

The Error Query is used to determine the present error condition of the
Serial488/4. After execution of the Error Query, the present error condition is cleared.
The error condition is also returned and cleared by the status Un command.
E?

Return and clear present error condition

Example1: Query the error status using dual primary addressing mode.
PRINT#1,"OUTPUT08;E?"
PRINT#1,"ENTER08"
INPUT#2,A$
PRINT A$request error status
display shows E0, No errors

Example2: Query the error status using secondary addressing mode.
PRINT#1,"OUTPUT0800;W5X"
PRINT#1,"OUTPUT0800;E?"
PRINT#1,"ENTER0800"
INPUT#2,A$
PRINT A$

send an illegal command to the Serial488/4
request error status
display shows E1, unrecognized command

request error status again
PRINT#1,"OUTPUT0800;E?"
PRINT#1,"ENTER0800"
INPUT#2,A$
PRINT A$
display shows E0, error condition has
been cleared after reading error status

3.6

Section 3

Command Descriptions

Flush

Fn

The Flush command is used to discard serial data for a selected port. The Port
Select command (Pn) is used to select the serial port regardless of addressing mode inuse. Dat a waiting to be read over the IEEE b us, transmitted out the serial port, orboth, may be flushed.
F0
F1
F2
F?

Flush serial input data.
Flush serial output data.
Flush both serial input and output data.
Return last F command executed.

Example 1: Flush serial input data for port 1 using dual primary addressing mode.
PRINT#1,"CLEAR08"
PRINT#1,"OUTPUT08;P1X"
PRINT#1,"OUTPUT08;F0X"

reset the Serial488/4
select port 1 as the current port
flush serial input data

Example 2: Flush serial output data for port 2 using secondary addressing mode.
PRINT#1,"CLEAR0800"
PRINT#1,"OUTPUT0800;P2X"
PRINT#1,"OUTPUT0800;f1X"

reset the Serial488/4
select port 2 as the current port
flush serial output data

3.7

Section 3

Command Descriptions

Handshake TypeGn

The Handshake Type command determines the flow control method to be used inserial data transfers for the selected serial port. The Port Select command (Pn) is used
to select the serial port regardless of addressing mode in use.
The hardware handshake method uses the RTS and CTS signals of the serialinterface to prevent data overruns by asserting the RTS line when the Serial488/4 isable to accept data and requiring the CTS signal to be asserted before transmittingdata.
The software handshake method uses tw o special serial characters, XON (11 hex)
and XOFF (&H13) to control data flow . T he XOFF character is sent to stop datatransmission and the XON character is sent to resume data transmission. It should be
noted that the software method is not compatible w ith binary data as the data itself
may contain XON and XOFF characters.
If no handshaking is desired, handshaking may be disabled entirely. The factory
default setting as set by the Save Configuration command (S0) is G0, hardware
handshaking (RTS/CTS).
G0
G1
G2
G?

Hardware handshaking (RTS/CTS) is selected.
Software handshaking (XON/XOFF) is selected.
No handshaking is selected.
Return present handshaking method.

Example 1: Select software handshaking on port 1 using dual primary addressing
mode.
PRINT#1,"OUTPUT08;P1X"
PRINT#1,"OUTPUT08;G1X"

select port 1 as the current port
select software handshaking

Example 2: Select hardware handshaking on port 2 using secondary addressing mode.
PRINT#1,"OUTPUT0800;P2G0X"

select hardware handshaking for port 2

3.8

Section 3

Command Descriptions

Input QueryI?

The Input Query command returns the number of characters available to be readon the the IEEE bus from the selected serial port ( i.e. the port's serial input buffer ).
The Port Select command (Pn) is used to select the serial port regardless of addressing
mode in use.
I?

Return number of characters in the input buffer.

Example 1: Find the number of input characters available on port
primary
addressing mode.
PRINT#1,"OUTPUT08;P1x"
PRINT#1,"OUTPUT08;I?"PRINT#1,"ENTER08"
INPUT#2,A$
PRINT A$

1 using dual

select port 1
request number of serial input characters
read the response
display shows I00010, 10 characters

Example 2: Find number of input characters available on port 1 using secondary
addressing mode.
PRINT#1,"OUTPUT0800;P1xI?"
PRINT#1,"ENTER0800"
INPUT#2,A$
PRINT A$

select port 1 and request number of input
characters available
read the response
display shows I00033, 33 characters

3.9

Section 3

Command Descriptions

Status EOIKnThe EOI line is one of five interface management lines of the IEEE 488 bus. It is
used to indicate the end of a multiple byte message.
The Status EOI commandspecifies how this line w ill be used w hen the Serial488/4 sends port and commandstatus messages to the addressed listener, usually the bus controller. In the K0 mode,
the EOI line is asserted by the Serial488/4 on the last byte of every status message.
In the K1 mode the EOI line is not used. The factory default setting as set by the
Save Configuration command (S0) is K1, EOI is disabled.
K0
K1
K?

Assert EOI on last byte of status message.
EOI is disabled.
Return last EOI command received.

Example 1: Select EOI on last byte of message using dual primary addressing mode.
PRINT#1,"OUTPUT08;k0X"
Example 2: Disable EOI on status messages using secondary addressing mode.
PRINT#1,"OUTPUT0800;K1X"

3.10

Section 3

Command Descriptions

Data EOI

Ln

The Data EOI command specifies how the IEEE 488 EOI line will be used
when the Serial488/4 sends serial port data to the addressed listener, usually the bus
controller, for the selected serial port. The Port Select command (Pn) is used to
select the serial port regardless of addressing mode in use. In the L0 mode, the EOIline is asserted by the Serial488/4 when the data byte matches the selected serial
terminator (Txxx). In the L1 mode the EOI line is not used. If the L2 mode isselected, the EOI line is asserted when the last serial input character is sent over theIEEE bus. In the L3 mode the EOI line is asserted on either a match with the serial
terminator or the last serial character sent. The factory default setting as set by the
Save Configuration command (S0) is L1, EOI is disabled.
L0
L1
L2
L3
L?

Assert EOI on serial terminator character.
EOI is disabled.
Assert EOI on last serial input character.
Assert EOI on serial terminator character or last serial character.
Returns last Data EOI command selected.

Example 1: Select EOI on serial terminator using dual primary addressing mode.
PRINT#1,"OUTPUT08;P1X"
PRINT#1,"OUTPUT08;L0X"

select port 1 as the current port
select data EOI on serial terminator

Example 2: Disable EOI on selected port using secondary addressing mode.
PRINT#1,"OUTPUT0800;p1L1X"

disable EOI on port 1

3.11

Section 3

Command Descriptions

Service Request (SRQ)Mn

The Service Request (SRQ) mode is used by the Serial488/4 to alert thecontroller to one of several conditions described below . Multiple SRQ conditions canbe enabled simultaneously by issuing them separately or by combining them in one
command. If multiple SRQ commands are contained w ithin the same command
string, each SRQ command should be follow ed by an E xecute command ( X). The
programmed SRQ modes will remain enabled until the M0 command is sent, or thecontroller sends a Device Clear (DCL) or Selected Device Clear (SDC). The factory
default setting as set by the Save Configuration command (S0) is M0, SRQ i s
disabled.
M0
M1
M2
M4
M8
M16
M32
M128
M?

SRQ is disabled
SRQ on receipt of data on serial port 1
SRQ on receipt of data on serial port 2
SRQ on receipt of data on serial port 3
SRQ on receipt of data on serial port 4
SRQ on Ready
SRQ on Error condition
SRQ on Memory low condition
Returns current SRQ mask

MO default mode disables the SRQ function, preventing the Serial488/4 fromgenerating a Service Request.
M1, M2, M4 and M8 will generate a Service Request when the data is received onserial ports 1, 2, 3, and 4 respectively.
M16 will generate a Service Request w hen the Serial488/4 has completed theexecution of a set of commands from the bus controller. This is used by the controller
to assure the completion of a set of commands before
sending a subsequent set ofcommands.
M32 will generate a Service Request w hen an error occurs. The most common
bus error is sending an invalid command to the Serial488/4. For example, attempting
to select an ' B15' baud rate w hen no ' B15' baud rate exists w ill generate a Service
Request when the M32 mode is selected.

3.12

Section 3

Command Descriptions

M128 will generate a Service Request when the Serial488/4 has used up most of
its available memory. This provides an indication that no further data should be sent
to the serial ports until data is freed. Data may be freed either by reading serial input
data from the Serial488/4, waiting for serial output data to finish being transmitted, orby flushing a serial port if data is not moving as expected.
Example 1: Enable SRQ on serial data or low memory using dual primary addressing
mode.
PRINT#1,"OUTPUT08;M0X"
PRINT#1,"OUTPUT08;M1X"
PRINT#1,"OUTPUT08;M2X"
PRINT#1,"OUTPUT08;M4X"
PRINT#1,"OUTPUT08;M8X"
PRINT#1,"OUTPUT08;M128X"

clear SRQ mask
select SRQ on serial port 1 data
select SRQ on serial port 2 data
select SRQ on serial port 3 data
select SRQ on serial port 4 data
select SRQ memory low

Example 2: Enable SRQ on serial data or low memory using dual primary addressing
mode. This example has the same effect as example 1.
PRINT#1,"OUTPUT08;M132X"

select SRQ on serial data or memory low

Example 3: Enable SRQ on error using secondary addressing mode.
PRINT#1,"OUTPUT0800;M0X"
PRINT#1,"OUTPUT0800;M32X"

clear SRQ mask
select SRQ on command error

3.13

Section 3

Command Descriptions

Handshake Control

Nn

The Handshake Control, in conjunction w ith the Handshake Type command,
determines what flow control method is to be used in serial data transfers for theselected port. The Port Select command ( Pn) is used to select the serial port
regardless of addressing mode in use. If the hardw are handshake method ( G0) is
being used, the handshake control command w ill effect the serial port's RTS line.
Handshaking control may be selected to asserted
and un-asserted the RTS line
automatically as memory is available, asserted the
RTS line continually or unasserted RTS line continually.
When the softw are handshake method ( G0) is used, the handshake control
command will effect the sending of the handshake characters
XON and XOFF.
Handshaking control may be selected to enable the automatic output of XON/XOFF
serial characters as memory dictates, cause the XOFF character to be issued, or cause
the XON character to be issued. Additionally this command may be used to enable
the output of sixteen times the baud rate clock on the RTS line.
If the no handshake method ( G2) is in use, the H andshake Control commandcontrols the assertion, un-assertion, or output of a signal sixteen times baud
clock
output on the RTS line.
The factory default setting as set by the Save Configuration command (N0, automatic handshaking.
N0
N1
N2
N3
N?

S0) isAutomatic handshaking, RTS/CTS or XON/XOFF.
Hold off serial input, un-assert RTS or send XOFF.
Release holdoff of serial input, assert RTS, or send XON.
Automatic XON/XOFF handshake with 16 x baud clock output on RTS
line, or no handshaking and 16 x baud clock output on RTS line.
Return present handshaking control selection.

3.14

Section 3

Command Descriptions

Example 1: Select automatic hardw are handshaking using dual primary
mode.
PRINT#1,"CLEAR08"
PRINT#1,"OUTPUT08;P1X"
PRINT#1,"OUTPUT08;G0N0X"

addressing

reset the Serial488/4
select port 1 as the current port
select automatic hardware handshaking

Example 2: Select software handshaking w ith baud clock output using secondary
addressing mode.
PRINT#1,"CLEAR0800"
PRINT#1,"OUTPUT0800;P2X"
PRINT#1,"OUTPUT0800;g1n3X"

reset the Serial488/4
select port 2 as the current port
select software handshaking w ith baud
clock output

3.15

Section 3

Command Descriptions

Output QueryO?

The Output Query command returns the number of characters w aiting to betransmitted out on the selected serial port ( i. e. the port's serial output buffer ). The
Port Select command (Pn) is used to select the serial port regardless of addressing
mode in use.
O?

Return number of characters in the serial output buffer.

Example 1: Find number of output characters on port 1 using dual primary
addressing mode.
PRINT#1,"OUTPUT08;P1x"
PRINT#1,"OUTPUT08;O?"
PRINT#1,"ENTER08"
INPUT#2,A$
PRINT A$

select port 1
request number of serial output characters
read the response
display shows O00010, 10 characters

Example 2: Find number of output characters on port 1 using secondary
addressing mode.
PRINT#1,"OUTPUT0800;P1xO?"
PRINT#1,"ENTER0800"
INPUT#2,A$
PRINT A$

select port 1 and request number of output
characters waiting to be sentread the response
display shows O00033, 33 characters

3.16

Section 3

Command Descriptions

Port SelectPn

The Port Select command determines which port is selected for execution ofserial setup commands and for data input/output w
hen using the Dual Primary
addressing mode. The factory default setting as set by the Save Configurationcommand (S0) is P1, port 1 selected.
P1
P2
P3
P4
P?

Port 1 is selected
Port 2 is selected
Port 3 is selected
Port 4 is selected
Return present port selection

Example 1: Select port 1, then send a message using dual primary addressing mode.
select port 1 as the current port
PRINT#1,"OUTPUT08;P1X"
PRINT#1,"OUTPUT08;a0b5c1d1X" select 1 stop bit, 2400 baud, odd parity
8 data bits
PRINT#1,"OUTPUT08;g1n0t13X" select Xon/Xoff, automatic
handshaking, terminator CR
send a startup message out port 1
PRINT#1,"OUTPUT09;Startup
message"
Example 2: Select port 1, then send a message using secondary addressing mode.
select port 1 as the current port
PRINT#1,"OUTPUT0800;P1X"
PRINT#1,"OUTPUT0800;a0b5c1d1X"select 1 stop bit, 2400 baud, odd parity,
8 data bits
PRINT#1,"OUTPUT0800;g1n0t13X" select Xon/Xoff, automatic
handshaking, terminator CR
send a startup message out port 1
PRINT#1,"OUTPUT0801;Startup
message"

3.17

Section 3

Command Descriptions

Break

Qn

The Break command enables or disables the sending of break(a constantstream of '0' bits) by the selected port . While a port is sending break no characters
can be transmitted. W hen sending break is subsequently disabled, normal charactertransmission will resume. The factory default setting as set by the Save Configurationcommand (S0) is Q0, disable sending break.
Q0
Q1
Q?

Disable sending break.
Enable sending break.
Return current break setting.

NOTE: The programmer must ensure the break command is enabled for
one character time before issuing the disable sending break command to
break is recognized.

more thanensure that

NOTE: Sending a break w hile a port is transmitting data may cause the character
currently being transmitted to become corrupted. The Output Query (O?) may be used
to verify that the serial output buffer is empty. Once the serial output buffer is empty
a delay of two character times is required to ensure that all serial data has beentransmitted and will not be corrupted by sending break.
Example 1: Program port 1 to send a break using dual primary addressing mode
PRINT#1,"CLEAR08"
PRINT#1,"OUTPUT08;P1X"
PRINT#1,"OUTPUT08;Q1X"
FOR LUP = 1 to 100:NEXT LUP
PRINT#1,"OUTPUT08;Q0X"

reset the Serial488/4
select port 1 as the current port
send breakdelay a short whilestop sending break

Example 2: Program port 3 to send a break using secondary addressing mode
PRINT#1,"CLEAR0800"
PRINT#1,"OUTPUT0800;P3X"
PRINT#1,"OUTPUT0800;Q1X"
FOR LUP = 1 to 100:NEXT LUP
PRINT#1,"OUTPUT0800;Q0X"

reset the Serial488/4
select port 3 as the current port
send breakdelay a short whilestop sending break

3.18

Section 3

Command Descriptions

Save Configuration

Sn

The Save Configuration command is used to save a non-volatile copy of thepresent configuration for the Serial 488/4 to be used as the power-up configuration.
Note that this command is independent of port selection; it saves all Serial 488/4 port
and command settings. The S0 command is used to restore the factory default
configuration.
S0
S1
S?

Save the default configuration in non-volatile RAM.
Save the current configuration in non-volatile RAM.
Return the last Save configuration command.

Example 1: Configure each port; save settings using dual primary addressing mode.
PRINT#1,"OUTPUT08;k0m16u0y2X" select EOI with last bus terminator, SRQ on
ready, command status, terminator CR LF
select port 1 as the current port
PRINT#1,"OUTPUT08;P1X"
PRINT#1,"OUTPUT08;a0b5c1d1X" select 1 stop bit, 2400 baud, odd parity,
8 data bits
PRINT#1,"OUTPUT08;g1n0t13X" select Xon/Xoff, automatic handshaking,terminator CR
select port 2 as the current port
PRINT#1,"OUTPUT08;P2X"
PRINT#1,"OUTPUT08;a1b3c0d0X" select 2 stop bits, 1200 baud, no parity,
7 data bits
PRINT#1,"OUTPUT08;g0n0t10X" select RTS/CTS, automatic handshaking,terminator LF
select port 3 as the current port
PRINT#1,"OUTPUT08;P3X"
PRINT#1,"OUTPUT08;a0b10c2d1X" select 1 stop bit,19200 baud, even parity,
8 data bits
PRINT#1,"OUTPUT08;g1n0t13X" select Xon/Xoff, automatic handshaking,terminator CR
select port 4 as the current port
PRINT#1,"OUTPUT08;P4X"
PRINT#1,"OUTPUT08;a1b1c0d0X" select 2 stop bit, 300 baud, no parity,
8 data bits
PRINT#1,"OUTPUT08;g1n3t13X" select Xon/Xoff, automatic handshaking,output baud clock , terminator CR
save the configuration
PRINT#1,"OUTPUT08;S1x"

3.19

Section 3

Command Descriptions

Example 2: Restore the default configuration using secondary addressing mode.
PRINT#1,"OUTPUT0800;S0x"
PRINT#1,"CLEAR0800"

restore the factory default configuration
reset the Serial488/4 to re-configure

3.20

Section 3

Command Descriptions

Serial Terminator

Tn

The Serial Terminator command is used in conjunction with the Data EOI (Ln)command to specify which character to assert EOI on for the selected serial port. The
Port Select command (Pn) is used to select the serial port regardless of addressing
mode in use. The terminator value may range from 0 to 255 allowing any 7 bit ASCII
character or 8 bit data value to be used. The factory default setting as set by the Save
Configuration command (S0) is T010, the line feed character.
Tn
T?

Select serial terminator where n is a value in the range 0 thru 255
Return the currently selected serial terminator.

Example 1: Set terminators for ports 1 and 3 using dual primary addressing mode.
PRINT#1,"CLEAR08"
PRINT#1,"OUTPUT08;P1X"
PRINT#1,"OUTPUT08;T13X"
PRINT#1,"OUTPUT08;P3X"
PRINT#1,"OUTPUT08;T0X"

reset the Serial488/4
select port 1 as the current port
select CR terminatorselect port 3 as the current port
select NUL character terminator

Example 2: Set terminators for ports 1 and 3 using secondary addressing mode.
PRINT#1,"OUTPUT0800;P1X"
PRINT#1,"OUTPUT0800;T13X"
PRINT#1,"OUTPUT0800;P3X"
PRINT#1,"OUTPUT0800;T0X"

select port 1 as the current port
select CR terminatorselect port 3 as the current port
select NUL terminator

3.21

Section 3

Command Descriptions

StatusUn

The Status command selects the type of status message the Serial488/4 will
send when addressed to talk on the command address. The U0 selection causes thecommand status to be selected. The U1 thru U4 selections cause a serial port status tobe selected. The status of the Serial488/4 may be read at any time without interferingwith normal operation. Any error conditions are cleared after the command status
string is read by the controller. The factory default setting as set by the Save
Configuration command (S0) is U0, command status is selected.
NOTE: The Status selected is independent of the serial port selected via the Port
command (Pn).
U0
U1
U2
U3
U4
U?

Send the Serial488/4 command status when addressed to talkSend the status of serial port 1 when next addressed to talkSend the status of serial port 2 when next addressed to talkSend the status of serial port 3 when next addressed to talkSend the status of serial port 4 when next addressed to talk
Return the current status command selection

The format of the status byte returned by the Serial488/4 after receiving a U0
command is as follows:*.*E#K#M###P#U#Y#Z#####
where each # equals the number corresponding to that command. The leading
information *.* is the revision level of the Serial488/4 firmware.
Example 1: Read Serial488/4 command status using dual primary addressing mode.
DIM A$(50)PRINT#1,"CLEAR08"
PRINT#1,"OUTPUT08;U0X"
PRINT#1,"ENTER08"
INPUT#2,A$
PRINT A$

dimension A$
reset the Serial488/4
send U0 to the Serial488/4
read the status byte
shows 1.0E0K1M000P1Y2

3.22

Section 3

Command Descriptions

The format of the status byte returned by the Serial488/4 after receiving athrough U4 command is as follows:

U1*.*A#B#C#D###G#I#####L#N#O#####Q#T###U#
where each # equals the number corresponding to that command. The leading
information *.* is the revision level of the Serial488/4 firmware.
Example 1: Read Serial488/4 command status using secondary addressing mode.
DIM A$(50)PRINT#1,"OUTPUT0800;S0X"
PRINT#1,"CLEAR0800"
PRINT#1,"OUTPUT0800;U1X"
PRINT#1,"ENTER0800"
INPUT#2,A$
PRINT A$

dimension A$
restore Serial488/4 defaults
reset the Serial488/4
send U1 to the Serial488/4
read the port 1 status message
shows

1.0A0B009C0D1G0I00000L1N0O00000Q0T010U1
Below is a summary of the Command Status (U0) information.
E#
E0
E1
E2
E3

Error Message
No error
Unrecognized command (ex. W3)
Illegal command option (ex. F8)
Conflict (handshake type, handshake control, baud select)

K#
K0
K1

End Or Identify
EOI enabled on last byte of status message
EOI disabled

M###
M0
M1
M2
M4

Service Request
SRQ is disabled
SRQ on serial port #1 data in
SRQ on serial port #2 data in
SRQ on serial port #3 data in

3.23

Section 3

M8
M16
M32
M128

Command Descriptions

SRQ on serial port #4 data in
SRQ on Ready
SRQ on error condition
SRQ on memory low condition

Note: the status indication reflects the sum of all received Service Request commands.

P#
P1
P2
P3
P4

Selected Port
Port 1 selected
Port 2 selected
Port 3 selected
Port 4 selected

U#
U0

Status message
Command status

Y#
Y0
Y1
Y2
Y3

Terminator
CR only
LF only
CR LF
LF CR

Z#####

Free buffer memory available for serial data

Below is a summary of the Serial Port Status (U1-4) information.
A#
A0
A1

Stop Bits
1 stop bit
2 stop bits

B###
B0
B1
B2
B3
B4
B5

Baud Rate
110 Baud selected
300 Baud selected
600 Baud selected1200 Baud selected1800 Baud selected
2400 Baud selected

3.24

Section 3

Command Descriptions

B6
B7
B8
B9
B10
B11

3600 Baud selected
4800 Baud selected
7200 Baud selected
9600 Baud selected
19200 Baud selected
16 x External clock selected

C#
C0
C1
C2

ParityParity is disabled.
Odd parity is enabled.
Even parity is enabled.

D#
D0
D1

Data Bits
Seven data bits selected.
Eight data bits selected.

G#
G0
G1
G2

Handshake Type
Hardware handshaking (RTS/CTS) is selected.
Software handshaking (XON/XOFF) is selected.
No handshaking is selected.

I#####

Serial input bytes available to read

L#
L0
L1
L2
L3

Data EOI
Assert EOI on serial terminator character.
EOI is disabled.
Assert EOI on last serial input character.
Assert EOI on serial terminator character or last serial character.

N#
N0
N1
N2
N3

Handshake Control
Automatic handshaking, RTS/CTS or XON/XOFF
Hold off serial input, un-assert RTS or send XOFF.
Release holdoff of serial input, assert RTS or Send XON.
Automatic XON/XOFF handshake with Baud Clock x 16 output on
RTS line, or no handshaking and Baud Clock x 16 output on RTS
line.
Serial output bytes not yet transmitted out the serial port

O#####

3.25

Section 3

Command Descriptions

Q#
Q0
Q1

Break
Stop sending break characters.
Send break characters.

T###

Current Serial Terminator character

U#
U1
U2
U3
U4

Selected Serial Port Status
Serial port 1 status
Serial port 2 status
Serial port 3 status
Serial port 4 status

3.26

Section 3

Command Descriptions

Version QueryV?

The Version Query command returns the Serial488/4 firmw
number.
V?

are revision

Return Serial488/4 firmware revision number.

Example 1: Get Serial488/4 firmware revision using dual primary addressing mode.
PRINT#1,"OUTPUT08;V?"
PRINT#1,"ENTER08"
INPUT#2,A$
PRINT A$ask for version information
read the response
display shows

3.27

1.3

(or higher)

Section 3

Command Descriptions

ExecuteX

Commands sent to the Serial488/4 w ill result in no action until the unit isinstructed to execute these commands. This is done by sending an X, usually as thelast character of a command string. Commands sent w ithout an X are stored in theinternal buffer until an X is received. Any number of Execute commands may beinserted into the same command string.
X

Execute previous Serial488/4 command(s).

Example 1: Execute a Serial488/4 command using dual primary addressing mode.
PRINT#1,"CLEAR08"
PRINT#1,"OUTPUT08;P1F2"PRINT#1,"OUTPUT08;X"

reset the Serial488/4
send "F2" to the Serial488/4 command
Flush port 1 input and output buffers
instruct the Serial488/4 to execute its
command input buffer

3.28

Section 3

Command Descriptions

Bus Terminator

Yn

The IEEE 488 bus terminator command selects the characters sent at the end of
status messages returned by the Serial488/4. The terminator may be programmed forany combination of Carriage Return (CR) and L ine Feed (LF). Y0 sends CR only
and Y1 sends LF only. The Y2 mode, the most commonly accepted terminator, sends
CR-LF. Y3 reverses the sequence to send L F-CR. The factory default setting as set
by the Save Configuration command (S0) is Y2, CR-LF.
Y0
Y1
Y2
Y3
Y?

CR only
LF onlyCR LF
LF CRReturn current bus terminator selection.

Example 1: Set terminator to linefeed carriage return using dual primary addressing
mode.
PRINT#1,"CLEAR08"
PRINT#1,"OUTPUT08;Y3X"

select line feed carriage return terminator

3.29

Section 3

Command Descriptions

Memory QueryZ?

The Memory Query command returns the number of characters w hich may be
written to the serial ports w ithout causing a 'low memory' condition. This command
may be used to for determining how many more characters can be safely written to theSerial488/4 before handshaking will attempt to stop serial input data because of a 'low
memory' condition.
Z?

Return the number of characters which may be written to the serial ports

Example 1: Find the amount of free memory remaining in the Serial488/4 using dual
primary addressing mode.
PRINT#1,"OUTPUT08;Z?"PRINT#1,"ENTER08"
INPUT#2,A$
PRINT A$request amount of free memory
read the response
display shows Z23456

Example 2: Find the amount of free memory remaining in the Serial488/4 using
secondary addressing mode.
PRINT#1,"OUTPUT0800;Z?"PRINT#1,"ENTER0800"
INPUT#2,A$
PRINT A$request amount of free memory
read the response
display shows Z23456

3.30

Section 3

Command Descriptions

Serial Poll Status Byte
The Serial Poll Status byte is sent upon receiving the serial poll command fromthe controller. Refer to the SRQ description for details on how the Serial Poll Statusbyte is affected. Below is a description of the significance of each bit in
the Serial
Poll Status byte.
Bit Location
DIO1(LSB)
DIO2
DIO3
DIO4
DIO5
DIO6
DIO7
DIO8 (MSB)

Value
1
2
4
8
16
32
64
128

(SRQ Bit Value if set to logic 1)
serial data available on port 1
serial data available on port 2
serial data available on port 3
serial data available on port 4
Ready for more commands
Command Error
Service Request bit
Memory low warning

Serial Poll Bit Description
DIO1

The DIO1 bit is set by the receipt of serial data on port 1. When enabled by
the M1 command this condition will also generate a Service Request. DIO1 iscleared when no more data is available to be read on port 1.

DIO2

The DIO2 bit is set by the receipt of serial data on port 2. When enabled by
the M2 command this condition will also generate a Service Request. DIO2 iscleared when no more data is available to be read on port 2.

DIO3

The DIO3 bit is set by the receipt of serial data on port 3 When enabled by
the M4 command this condition will also generate a Service Request. DIO3 iscleared when no more data is available to be read on port 3.

DIO4

The DIO4 bit is set by the receipt of serial data on port 4. When enabled by
the M8 command this condition will also generate a Service Request. DIO4 iscleared when no more data is available to be read on port 4.

DIO5

The DIO5 bit is set after an entire command string has been received andprocessed by the Serial488/4. The bit is cleared w hile the Serial488/4 isprocessing commands which have been received from the controller. Whenused with the M16 command, a Service Request will also be generated w hen

3.31

Section 3

Command Descriptions

the DIO5 bit is set. An Execute command (X) must be received before the
DIO5 bit can be cleared.
DIO6

DIO6 is set w hen an invalid command is sent to the Serial488/4. The M32
command will enable a Service Request to occur when an invalid command isreceived. This bit is cleared after the controller sends a Status (U0), or Error
Query (E?) command and reads the status string from the Serial488/4.

DIO7

When the Serial488/4 generates a Service Request, the DIO7 bit will be set toa logic one. This is used by the controller to determine that theServiceRequest was generated by the Serial488/4.

DIO8

DIO8 is when the Serial488/4 memory is low. The M128 command enables aService Request to occur when the memory low condition is encountered.
This bit is cleared when a memory low condition no longer exists.

Example:PRINT#1,"CLEAR08"
PRINT#1,"OUTPUT08;M32X"
PRINT#1,"OUTPUT08;F7X"
PRINT#1,"SPOLL08"

reset the Serial488/4
select SRQ on Bus error
send an invalid bus command.
ERROR and SRQ LEDs should illuminate
display should be 112 (64+16+32)

64 denotes the Serial488/4 was the source of the SRQ. 16 denotes the Serial488/4 is
READY for more commands. 32 denotes a Command error. When serial polled, the
SRQ LED will turn off.

3.32

Section 4IEEE 488 Primer

IEEE 488 Primer
4.1 HISTORYThe IEEE 488 bus is an instrumentation communication bus adopted by theInstitute of Electrical and E lectronic Engineers in 1975 and revised in 1978.
T he
Digital488 conforms to this most recent revision designated IEEE 488-1978.
Prior to the adoption of this standard,most instrumentation manufacturers
offered their own versions of computer interfaces. This placed the burden of system
hardware design on the end user. If his application required the products of several
different manufacturers, then he might need to design several different hardware andsoftware interfaces. T he popularity of the IEEE 488 interface (sometimes called theGeneral Purpose Interface Bus or GPIB) is due to the total specification of theelectrical and mechanical interface as well as the data transfer and control protocols.
The use of the IEEE 488 standard has moved the responsibility of theuser fromdesign of the interface to design of the high level software that is specific to themeasurement application.
4.2 GENERAL STRUCTURE
The main purpose of the GPIB is to transfer information betw een two or more
devices. A device can either be an instrument or a computer. Before any informationtransfer can take place, it is first necessary to specify which will do the talking (senddata) and which devices will be allowed to listen (receive data). The decision of who
will talk and who will listen usually falls on the System Controller which is, at poweron, the Active Controller.
The System Controller is similar to a committee chairman. On awell runcommittee, only one person may speak at a time and the chairman is responsible forrecognizing members and allow ing them to have their say. O n the bus, the device
which is recognized to speak is the Active Talker. There can only be one Talker at atime if the information transferred is to be clearly understood by all. The act of "giving
the floor" to that device is called Addressing to Talk. If the committee chairman can
not attend the meeting, or if other matters require his attention, he can appoint an
acting chairman to take control of the proceedings. For the GPIB, this device becomes
the Active Controller.

4.1

Section 4IEEE 488 Primer

At a committee meeting, everyone present usually listens. This is not the casewith the GPIB. The Active Controller selects w hich devices w ill listen andcommands all other devices to ignore what is being transmitted. A device is instructed
to listen by being Addressed to Listen. This device is then referred to as an Active
Listener. Devices which are to ignore the data message are instructed to Unlisten.
The reason some devices are instructed to Unlisten is quite simple. Suppose acollege instructor is presenting the day's lesson. E ach student is told to raise theirhand if the instructor has exceeded their ability to keep up while taking notes. If ahand is raised, the instructor stops his discussion to allow the slower students the time
to catch up. In this way, the instructor is certain that each and every student receives
all the information he is trying to present. Since there are a lot of students in theclassroom, this exchange of information can be very slow
. In fact, the rate of
information transfer is no faster than the rate at which the slowest note-taker can keep
up. T he instructor, though, may have a message for one particular student. The
instructor tells the rest of the class to ignore this message (Unlisten) and tells it to thatone student at a rate w hich he can understand. T his information transfer can thenhappen much quicker, because it need not wait for the slowest student.
The GPIB transfers information in a similar way. This method of data transfer iscalled handshaking. More on this later.
For data transfer on the IEEE 488, the Active Controller must…
a)
b)
c)
d)

Unlisten all devices to protect against eavesdroppers.
Designate who will talk by addressing a device to talk.
Designate all the devices who are to listen by addressing thosedevices to listen.
Indicate to all devices that the data transfer can take place.

4.2

Section 4IEEE 488 Primer

To Other Devices

Device 1
System Controller
Able to Talk,
Listen, and Control
Data Bus
Device 2
DMM
Data Byte
Transfer
Control

Able to Talk
and Listen

Device 3
Printer
Only Able to Listen

GeneralInterfaceManagement

Device 4
Frequency Counter
Only Able to Talk}

DIO1-8

DAV
NRFD
NDAC

IEEE 488 Bus Structure

IFC
ATN
SRQ
REN
EOI

Figure 4.1

4.3

Section 4IEEE 488 Primer

4.3 SEND IT TO MY ADDRESSIn the previous discussion, the terms Addressed to Talk and Addressed to
Listen were used. These terms require some clarification.
The IEEE 488 standard permits up to 15 devices to be configured within one
system. Each of these devices must have a unique address to avoid confusion. In asimilar fashion, every building in town has a unique address to prevent one home fromreceiving another home's mail. Exactly how each device's address is set is specific to
the product's manufacturer. Some are set by D IP switches in hardware, others bysoftware. Consult the manufacturer's instructions to determine how to set the address.
Addresses are sent w ith universal (multiline) commands from the Active
Controller. These commands include My Listen Address (MLA), My Talk
Address (MTA), Talk Address Group (TAG), and Listen Address Group (LAG).
4.4 BUS MANAGEMENT LINES
Five hardware lines on the GPIB are used for bus management. Signals on theselines are often referred to as uniline (single line) commands. The signals are active
low, i.e. a low voltage represents a logic "1" (asserted), and a high voltage represents alogic "0" (unasserted).
4.4.1 Attention (ATN)
lines for bus management. If
ATN is one of the most important
Attention is asserted, then the information contained on the data lines is to beinterpreted as a multiline command. If it is not, then that information is to beinterpreted as data for the Active Listeners. The Active Controller is the
only bus device that has control of this line.

4.4

Section 4IEEE 488 Primer

4.4.2 Interface Clear (IFC)The IFC line is used only by the System Controller. It is used to place
all bus devices in a know n state. Although device configurations vary, theIFC command usually places the devices in the Talk and Listen Idle states(neither Active Talker nor Active Listener).
4.4.3 Remote Enable (REN)
When the System Controller sends the REN command, bus devices
will respond to remote operation. Generally, the REN command should be
issued before any bus programming is attempted.
Only the System
Controller has control of the Remote Enable line.
4.4.4 End or Identify (EOI)The EOI line is used to signal the last byte of a multibyte data transfer.
The device that is sending the data asserts EOI during the transfer of the last
data byte. The EOI signal is not always necessary as the end of the data may
be indicated by some special character such as carriage return.
The Active Controller also uses EOI to perform a Parallel Poll bysimultaneously asserting EOI and ATN.
4.4.5 Service Request (SRQ)
When a device desires the immediate attention of the Active Controller
it asserts SRQ. It is then the Controller's responsibility to determine which
device requested service. This is accomplished with a
Serial Poll or a
Parallel Poll.

4.5

Section 4IEEE 488 Primer

4.5 HANDSHAKE LINESThe GPIB uses three handshake lines in an "I'm ready - Here's the data - I've got
it" sequence. This handshake protocol assures reliable data transfer,at the rate
determined by the slowest Listener. One line is controlled by the Talker, while theother two are shared by all Active Listeners. The handshake lines, like the otherIEEE 488 lines, are active low.
4.5.1 Data Valid (DAV)The DAV line is controlled by the Talker. The Talker verifies that
NDAC is asserted (active low) which indicates that all Listeners haveaccepted the previous data byte transferred. The Talker then outputs data on
the bus and w aits until NRFD is unasserted (high) w hich indicates that all
Addressed Listeners are ready to accept the information. When NRFD and
NDAC are in the proper state, the Talker asserts DAV ( active low ) toindicate that the data on the bus is valid.
4.5.2 Not Ready for Data (NRFD)
This line is used by the Listeners to inform the Talker when they are
ready to accept new data. The
Talker must wait for each Listener tounassert this line (high) w hich they will do at their ow n rate when they are
ready for more data. This assures that all devices that are to accept the
information are ready to receive it.
4.5.3 Not Data Accepted (NDAC)
The NDAC line is also controlled by the Listeners. This line indicatesto the Talker that each device addressed to listen has accepted theinformation. Each device releases NDAC (high) at its ow n rate, but the
NDAC will not go high until the slowest Listener has accepted the data byte.

4.6

Section 4IEEE 488 Primer

1st Data Byte

2nd Data Byte

DIO1-8(composite)
DAV

Valid

SourceNRFD
Acceptor

NDAC
Acceptor

All
Ready

Not
Valid

None
Ready

None
Accept

Valid

All
Ready

All
Accept

Not
Valid

None
Ready

None
AcceptAll
AcceptIEEE Bus Handshaking
4.6 DATA LINESThe GPIB provides eight data lines for a bit parallel/byte serial
data transfer.
These eight data lines use the convention of DIO1 through DIO8 instead of the binary
designation of D0 to D7. The data lines are bidirectional and are active low.
4.7 MULTILINE COMMANDS
Multiline (bus) commands are sent by the Active Controller over the data bus
with ATN asserted. These commands include addressing commands for talk, listen,
Untalk and Unlisten.
4.7.1 Go To Local (GTL)
This command allows the selected devices to be manually controlled.
($01)

4.7

Section 4IEEE 488 Primer

4.7.2 Listen Address Group (LAG)
There are 31 (0 to 30) listen addresses associated with this group. The 3
most significant bits of the data bus are set to 001 w
hile the 5 leastsignificant bits are the address of the device being told to listen.
4.7.3 Unlisten (UNL)
This command tells all bus devices to U
Unaddressed to Listen. ($3F)

nlisten.

The same as

4.7.4 Talk Address Group (TAG)
There are 31 (0 to 30) talk addresses associated w ith this group. The 3
most significant bits of the data bus are set to 010 w
hile the 5 leastsignificant bits are the address of the device being told to talk.
4.7.5 Untalk (UNT)This command tells bus devices to Untalk. The same as Unaddressed to
Talk. ($5F)
4.7.6 Local Lockout (LLO)
Issuing the LLO command prevents manual control of the instrument's
functions. ($11)
4.7.7 Device Clear (DCL)
This command causes all bus devices to be initialized toor power up state. ($14)

4.8

a pre-definedSection 4IEEE 488 Primer

4.7.8 Selected Device Clear (SDC)
This causes a single device to be initialized to a pre-defined or power up
state. ($04)
4.7.9 Serial Poll Disable (SPD)The SPD command disables all devices from sending their Serial Pollstatus byte. ($19)
4.7.10 Serial Poll Enable (SPE)A device which is A ddressed to T alk will output its Serial Poll statusbyte after SPE is sent and ATN is unasserted. ($18)
4.7.11 Group Execute Trigger (GET)This command usually signals a group of devices to begin executing a
triggered action. T his allows actions of different devices to begin
simultaneously. ($08)
4.7.12 Take Control (TCT)This command passes bus control responsibilities from the current
Controller to another device which has the ability to control. ($09)
4.7.13 Secondary Command Group (SCG)
These are any one of the 32 possible commands (0 to 31) in this group.
They must immediately follow a talk or listen address. ($60 to $7F)

4.9

Section 4IEEE 488 Primer

4.7.14 Parallel Poll Configure (PPC)This configures devices capable of performing a
Parallel Poll as towhich data bit they are to assert in response to a Parallel Poll. ($05)
4.7.15 Parallel Poll Unconfigure (PPU)This disables all devices from responding to a Parallel Poll. ($15)

4.8 MORE ON SERVICE REQUESTS
Most of the commands covered, both uniline and multiline, are the responsibilityof the Active Controller to send and the bus devices to recognize. Most of thesehappen routinely by the interface and are totally transparent to the system
programmer. Other commands are used directly by the user to provide optimum
system control. Of the uniline commands, SRQ is very important to the test systemand the software designer has easy access to this line by most devices. Service
Request is the method by w hich a bus device can signal to the Controller that an
event has occurred. It is similar to an interrupt in a microprocessor based system.
Most intelligent bus peripherals have the ability to assert SRQ. A DMM mightassert it when its measurement is complete, if its input is overloaded or for any of anassortment of reasons. A power supply might SRQ if its output has current limited.
This is a pow erful bus feature that removes the burden from the System Controller
to periodically inquire, "Are you done yet?". Instead, the Controller says, "Do what I
told you to do and let me know when you're done" or "T ell me w hen something iswrong."
Since SRQ is a single line command, there is no way for theController todetermine which device requested the service without additional information. This
information is provided by the multiline commands for Serial Poll and Parallel Poll.

4.10

Section 4IEEE 488 Primer

4.8.1 Serial Poll
Suppose the Controller receives a service request. For this example,
let's assume there are several devices which could assert
SRQ. Th eController issues an SPE (Serial Poll enable) command to each device
sequentially. If any device responds w ith DIO7 asserted it indicates to theController that it was the device that asserted SRQ. Often times the otherbits will indicate w hy the device w anted service. This Serial Polling
sequence, and any resulting action,is under control of the softw
aredesigner.
4.8.2 Parallel Poll
The Parallel Poll is another way the Controller can determine w hichdevice requested service. It provides the w ho but not necessarily the why.
When bus devices are configured for Parallel Poll, they are assigned one biton the data bus for their response. By using the Status bit, the logic level ofthe response can be programmed to allow logical OR/AND conditions on
one data line by more than one device.
When SRQ is asserted, theController (under user's softw are) conducts a Parallel Poll. The
Controller must then analyze the eight bits of data received to determine
the source of the request. Once the source isdetermined, a Serial Pollmight be used to determine the why.
Of the two polling types, the Serial Poll is the most popular due to its ability todetermine the who and why. In addition, most devices support Serial Poll only.

4.11

Section 5

Service Information

Service Information
5.1 Factory Service-EASUREMENT #OMPUTING maintains a factory service center in Norton, Ma.
If problems are encountered in using the Serial488/4 you should first telephone thefactory. Many problems can be resolved by discussing the
problems with ourapplications department. If the problem cannot be solved by this method, you will be
instructed as to the proper return procedure.
5.2 Theory of Operation
The Heart of the Serial488/4 is a 2 Mhz 6809 microprocessor [U 101] supported
by 8K bytes of firmware EPROM [U102 (27128)] and 64k bytes of static RAM [U103& U104 (58256)]. A Versatile Interface Adapter [U104 (65B22)] is used to generate
real-time interrupts for the firmw are operating system and drive the front panel LED
annunciators through inverters [U112 & U113 (74LS04)].
The IEEE 488 bus interface is accomplished by a TMS9914A [U105] controller
with drivers [U 106 (75160) and U 107(75162)]. T he four serial interfaces use two
Z8530 [U119 & U 120] Serial Communications Controllers with four RS232 drivers[U121, U122, U123, &U124 (LT1081)] , two RS422 drivers [U 126 & U 127(26LS31)], and two RS422 receivers [U128 & U129 (26LS33)].
Decoding of the microprocessor address space is accomplished with two
Programmable Logic Array [U108 & U 111 (16L8)]. The Memory space allocation
is…
Address
DevicePart Number
Function$0000-$7FFF
U103
58256
Static RAM$8000-$E6FF
U104
58256
Static RAM$E700-$E70F
U106
TMS9914A
IEEE Controller$E710-$E71F
U114
74HCT240
SW1$E760-$E76F
U120
Z8530
Serial Controller$E770-$E77F
U119
Z8530
Serial Controller$E780-$E7FF
U110
R65C22
VIA$E800-$FFFF
U102
27128
Programmed EPROM

5.1

Section 5

Service Information

5.4 Serial488/4 Replaceable Parts List
Schematic

Part Number

Description

C101-C131
C132
C133
C134,C135
C136,C152

C-5-.1C-2-10C-1-10000
C-5-15p
C-2-10
CN-35
RF-1
DD-2
RF-2
FH-3
FH-4
CN-2
CN-7-9
R-1-68K
RN-4-4.7K
RN-1-470
RN-1-10K
R-1-100
R-4-15SW-3
SW-4
SW-1-8TR-6IC-1
Serial488/4-600
IC-46
IC-3
IC-4
IC-5
IC-64
IC-66
IC-23
IC-64
IC-33
IC-48
IC-96
IC-82
IC-49
IC-95
IC-36
CR-7
IC-12
IC-94
CR-5

Ceramic, 25v
Electrolytic, 25v
Electrolytic, 25v
Ceramic, 25v
Electrolytic, 25v
Power Connector
Small Signal Diode
Red PC Mount
3A Diode
Fuse Clip
Fuse Holder
IEEE 488 Connector
DB-9 PC Mount Male Connector
68K•, 1/4w carbon
4.7K• x 7 SIP
470• x 9 SIP
10K• x 9 SIP
68K•, 1/4w carbon
15 •, 2W
DPDT Push-Push
DPDT Slide 110/220
8 Pole Piano Switch
Transformer 10v @1.2A
MC68B09P Microprocessor
Programmed EPROM
58256 Static RAM
TMS9914ANL IEEE Controller
SN75160BN IEEE Driver
SN75162BN IEEE Driver
Programmed 16L8PAL
74LS14 Schmitt-trigger
65B22 Versatile Interface Adapter
Programmed 16L8PAL
74LS04 Hex Inverter
74LS240 Octal Buffer
Z8530 Serial Communications Controller
LT1081 RS-232 Driver Receiver
74LS08 Dual Quad Nand Gates
26LS31 RS-422 Driver
26LS33 RS-422/423 Receiver
3.6964 Mhz Oscillator
LM309 Regulator, + 5v
Smart Socket Battery Backup
8.0000 MHz Crystal

D101
D102-D114
D115,D116
F101
J101
J102-J105
R101
R102
R103,R104
R105-R109
R110-R117
R118
S101
S102
S103
T101
U101
U102
U103,U104
U105
U106
U107
U108
U109
U110
U110
U112,U113
U114,U118
U119,U120
U121-U124
U125
U126,U127
U128,U129
U130
U131
U132
Y101

5.3

Appendix A

Serial488/4 Command Summary

Command

Code

Description

Stop Bit(s)

A0
A1
A?

Selects 1 stop bit for selected port
Selects 2 stop bits for selected port
Returns current stop bits setting

Baud Rate

B0
B1
B2
B3
B4
B5
B6
B7
B8
B9
B10
B11
B?

Baud rate = 110
Baud rate = 300
Baud rate = 600
Baud rate = 1200
Baud rate = 1800
Baud rate = 2400
Baud rate = 3600
Baud rate = 4800
Baud rate = 7200
Baud rate = 9600
Baud rate = 19200
Baud rate = 16 x external
Returns current baud rate setting

Parity

C0
C1
C2
C?

No parity enabled
Odd parity
Even parity
Returns current parity setting

Data Bits

D0
D1
D?

Sets number of data bits to 7
Sets number of data bits to 8
Returns current data bit setting

Error QueryE?

Returns error status

Flush

F0
F1
F2
F?

Flushes serial input buffer
Flushes serial output buffer
Flushes both input and output buffers
Returns last flush command executed

A.1

Appendix A

Serial488/4 Command Summary

Command

Code

Description

HandshakeType

G0
G1
G2
G?
I?

Sets handskake to Rts/Cts (hardware)
Sets handskake to Xon/Xoff (software)
Sets handskake to none
Returns current handshake type selected
Returns number of characters in serial input queue

Status EOI

K0
K1
K?

Assert EOI with last terminator
EOI disabled
Returns current status EOI selected

Data EOI

L0
L1
L2
L3
L?

Assert EOI on serial terminator
EOI disabled
Assert EOI on last character in buffer
Assert EOI on terminator or last character
Returns current data EOI selected

Service Request
Mask

M0
M1
M2
M4
M8
M16
M32
M128
M?

Disable bus SRQ
SRQ on Serial port 1 input
SRQ on Serial port 2 input
SRQ on Serial port 3 input
SRQ on Serial port 4 input
SRQ on Ready for next command
SRQ on Command error
SRQ on Memory low
Returns current SRQ mask

HandshakeControl

N0
N1
N2
N3
N?

Automatic
Holdoff data
Accept data
Output 16 x baud clock on RTS line
Returns current handshake control setting

Output QueryO?

Returns number of characters in serial output queue

Port SelectP1
P2

Select serial port 1
Select serial port 2

Input Query

A.2

Appendix A

Command

Serial488/4 Command Summary

Code

Description

P3
P4
P?

Select serial port 3
Select serial port 4
Returns currently selected serial port

Break

Q0
Q1
Q?

Disable sending break
Enable sending break
Returns current break setting

Save
Configuration

S0
S1
S?

Save default setup in non-volatile RAM
Save current setup in non-volatile RAM
Returns last save configuration command executed

SerialTerminator

Tn
T?

Select n (0 - 255) as serial terminator
Returns currently selected serial terminator

Status

U0
U1
U2
U3
U4
U?

Send command status on talkSend serial port 1 status on talkSend serial port 2 status on talkSend serial port 3 status on talkSend serial port 4 status on talk
Returns current status select setting

Version Query

V?

Returns the Serial488/4 firmware revision

ExecuteX

Execute Command String

Bus Terminator

Y0
Y1
Y2
Y3
Y?

CR
LF
CR LF
LF CR
Returns current bus terminator setting

Memory QueryZ?

Returns the amount of serial data memory available

A.3

Appendix B$00

Character Codes And IEEE Multiline Messages

0 $10

NUL
$01

16 $20DLE
00
17 $21

1 $11

SOH
GTL
$02

DC1
LLO
2 $12

STX
$03

$04
SDC
$05

ENQ
PPC
$06

$07

$08

ETB

SPE
9 $19

HT
TCT
$0A

11 $1B

12 $1C$0D

13 $1D

14 $1E$0F

15 $1F

ACG

;

,

<
28
45 $3D13
30 $2E.
14
31 $2F

US
UCG

/
15

]

N

?
UNL

LAG

ACG = Addressed Command GroupUCG = Universal Command GroupLAG = Listen Address Group

k

^

l

|

m

}

n

~

SCG
SCG
95 $6F 111 $7F 127

_

o

UNT

SCG

TAG

{

SCG
SCG
94 $6E 110 $7E 126

30
79 $5F

O
15

z

SCG
SCG
93 $6D 109 $7D 125

29
78 $5E

1463 $4F

y

j

\

M

>

i

SCG
SCG
92 $6C 108 $7C 124

28
77 $5D13
62 $4E30
47 $3F[L=
29
46 $3Ex

SCG
SCG
91 $6B 107 $7B 123

27
76 $5C12
61 $4D

h

Z

K

w

SCG
SCG
90 $6A 106 $7A 122

26
75 $5B

11
60 $4C

g

Y

J

v

SCG
SCG
89 $69 105 $79 121

25
74 $5A10
59 $4B27
44 $3C12
29 $2D

RS

SI

:

+

X

I

f

SCG
SCG
88 $68 104 $78 120

24
73 $5909
58 $4A26
43 $3B11
28 $2C

GS

SO

9

*

W

H

u

SCG
SCG
87 $67 103 $77 119

23
72 $580857 $4925
42 $3A10
27 $2B

FS

CR
$0E

)

ESC

FF

8
24
41 $390926 $2A

SUB

VT
$0C

(

e

V

G

t

SCG
SCG
86 $66 102 $76 118

22
71 $5707
56 $48

s

d

U

F

7

c

SCG
SCG
85 $65 101 $75 117

21
70 $5606
55 $4723
40 $380825 $29EMSPD
10 $1A

LF
$0B

'

CAN

GET
$09

6
22
39 $3707
24 $28

8 $18

BS

&

T

E

r
SCG
99 $73 115

SCG
SCG
84 $64 100 $74 116

20
69 $5505
54 $46q
SCG
98 $72 114

b

S

D

5

a

SCG
83 $6319
68 $5404
53 $4521
38 $3606
23 $27

C

4

%

R

112

p
SCG
97 $71 113

SCG
82 $6218
67 $5303
52 $4420
37 $3505
22 $26

SYN
7 $17

BEL

$

Q

B

3

96 $70`SCG
81 $61

17
66 $5202
51 $43

19
36 $3404
21 $25

NAK
PPU
6 $16

ACK

#

DC4

A

2

80 $60P
16
65 $5101
50 $42

18
35 $3303
20 $24

DCL
5 $15

1

"

64 $50@00
49 $41

17
34 $3202
19 $23

4 $14

EOT

!

DC3

48 $400
16
33 $3101
18 $22

DC2
3 $13

ETX

32 $30

SP

DEL
SCG

SCG

TAG = Talk Address GroupSCG = Secondary Command Group

B.1