Micro488/p

User’s Manual

the smart approach to instrumentation ™

IOtech, Inc.
25971 Cannon Road
Cleveland, OH 44146-1833
Phone: (440) 439-4091
Fax: (440) 439-4093

E-mail (Product Information): sales@iotech.com
E-mail (Technical Support): productsupport@iotech.com
Internet: www.iotech.com

Micro488/p
User’s Manualp/n© 1992 by IOtech, Inc.

223-0901 Rev. 2.0

October 2002 Printing

Revised per EO # 1634R1

ii

Warranty Information
Your IOtech warranty is as stated on the product warranty card. You may contact IOtech byphone, fax machine, or e-mail in regard to warranty-related issues.
Phone: (440) 439-4091, fax: (440) 439-4093, e-mail: sales@iotech.com

Limitation of Liability
IOtech, Inc. cannot be held liable for any damages resulting from the use or misuse of this product.

Copyright, Trademark, and Licensing Notice
All IOtech 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, orother method without IOtech’s prior written consent. IOtech product names are trademarked; otherproduct names, as applicable, 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.

FCC Statement
IOtech devices emit radio frequency energy in levels compliant with Federal Communications
Commission rules (Part 15) for Class A devices. If necessary, refer to the FCC booklet How To
Identify and Resolve Radio-TV Interference Problems (stock # 004-000-00345-4) which isavailable from the U.S. Government Printing Office, Washington, D.C. 20402.

CE Notice
Many IOtech products carry the CE marker indicating they comply with the safety and emissions
standards of the European Community. As applicable, we ship these products with a Declarationof Conformity stating which specifications and operating conditions apply.

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 andthe recommendations in this manual. Using this equipment in ways other than described in thismanual can present serious safety hazards or cause equipment damage.
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.

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, IOtech calibrates its hardware to publishedspecifications. Periodic hardware calibration is not covered under the warranty and must be
performed by qualified personnel as specified in this manual. Improper calibration procedures may
void the warranty.

Quality Notice
IOtech has maintained ISO 9001 certification since 1996. Prior to shipment, we thoroughly test
our products and review our documentation to assure the highest quality in all aspects. In a spiritof continuous improvement, IOtech welcomes your suggestions.

iii

iv

Contents
1

Introduction
1.1 Description …… 1-1
1.2 Available Accessories …… 1-1
1.3 Specifications …… 1-2
1.4 Abbreviations …… 1-3

2

Getting Started
2.1 Inspection …… 2-1
2.2 Serial Coonfiguration …… 2-1
2.3 Serial Signal Descriptions …… 2-2
2.4 Serial Cable Wiring …… 2-4
2.5 Hardware Installation …… 2-4
2.6 Is Anyone Out There? …… 2-5
2.7 Programming the Micro488/p …… 2-5

3Command Descriptions
3.1 Introduction…… 3-1
3.2 Command Description Format …… 3-2
3.3 The Commands …… 3-5

AppendicesA – Micro488/p Command Summary
B – Character Codes and IEEE Multiline Messages
C – Sample Initialiazation Program

Micro488/p, Contents

09-26-02v

vi

09-26-02

Micro488/p

Introduction
1.1

Description
The Micro488/p Bus Controller converts a host RS-232 computer into an IEEE 488
bus talker, listener, and controller. It provides the basic IEEE 488-1978 bus
implementation required for a system controller. The Micro488/p may be located up
to fifty feet from the host and may control as many as eight IEEE 488 bus
instruments.
The Micro488/p interprets simple high level commands sent from the computer's
serial port and performs the necessary, and usually complex, bus control andhandshaking. The commands and protocol are similar to those used by the Hewlett
Packard HP-85 computer.

1.2

Available Accessories
Available accessories for the Micro488/p 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-35

Cable Set; includes one IBM PC/XT/PS2 to Micro488/p RS-232
Cable and one IBM AT to Micro488/p RS-232 Cable.

CN-20

Right Angle IEEE 488 adapter, male and female.

CN-22

IEEE 488 Multi-tap bus strip, four female connectors in parallel.

CN-23

IEEE 488 panel mount feed-through connector, male and female.

ABC488IEEE 488 ABC switch.

Micro488/p, Introduction

09-26-02

1-1

1.3

Specifications

IEEE 488-1978
Implementation: C1, C2, C3, C4 and C28 controller subsets.
Terminators: Selectable CR, LF, LF-CR and CR-LF with EOI.
Connector: Standard IEEE 488 connector with metric studs.

Serial Interface
EIA RS-232C: AB, BA, BB, CA, CB.
Character Set: Asynchronous bit serial.
Output Voltage: 5 volts min. (RS-232C).
Input Voltage: 3 volts min.; 15v max.
Baud Rate: Selectable 300, 1200, 2400, 4800, 9600, and 19200.
Data Format: 8 data bits; 1 or 2 stop bits, no parity.
Duplex: Full with Echo/No Echo.
Serial Control: Selectable CTS/RTS or XON/XOFF.
Terminators: Selectable CR, LF, LF-CR and CR-LF.
Connector: 25-pin Sub-D male. RS-232C DCE Configured.

GeneralData Buffer: 120 character input buffer.
Power: Draws less than 5mA from the DTR or DSR serial lines on thehost computer.
Max. Dimensions: 50mm x 60mm x 25mm (2" x 2.3" x 0.9").
Weight: 51.2 grams (1.8 oz).
Environment: 0° to 50°C; 0 to 90% R.H. non-condensing.
Controls: All settings auto or software configurable.
Note: Specifications subject to change without notice.

1-2

09-26-02

Micro488/p, Introduction1.4

Abbreviations
The following IEEE 488 abbreviations are used throughout thismanual:addr nIEEE bus address "n"ATN

Attention line

CR

Carriage Returndata

Data String

DCL

Device Clear

GETGroup Execute Trigger

GTL

Go To Local

LAG

Listen Address Group

LF

Line Feed

LLO

Local Lock Out

MLA

My Listen Address

MTA

My Talk Address

REN

Remote Enable

SDC

Selected Device Clear

SPD

Serial Poll Disable

SPE

Serial Poll Enable

SRQ

Service Request

TA

Talker Active

TAD

Talker Address

term

Terminator

UNL

Unlisten

UNT

Untalk*Unasserted

Micro488/p, Introduction

09-26-02

1-3

Notes:

1-4

09-26-02

Micro488/p, Introduction

Getting Started
2.1

Inspection
The Micro488/p 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
have occurred during shipment. Immediately report any such damage found to theshipping agent. Remember to retain all shipping materials in the event that shipment
back to the factory becomes necessary.
Every Micro488/p is shipped with the following....
•
•

2.2

Micro488/p IEEE488 Bus Controller
Micro488/p User’s Manual, p/n 232-0901

Serial Configuration
Some of the Micro488/p serial communication parameters are pre-configured, andcan not be changed. The following list describes the parameters which are fixed
and, therefore, can not be changed:
Parameter
Data Bits
Stop Bits
ParityReceive Terminator

Setting
8 Bit ASCII
1 or 2None
CR

The rest of the parameters are configured through software, after power on.
The following is a list of the software-configurable parameters:
Parameter
Baud Rate
DuplexTransmit TerminatorHandshaking

Getting Started

Setting
300, 1200, 2400, 4800, 9600, 19200
Full with echo/no-echo
LF, CR, LF-CR, CR-LF
XON/XOFF or CTS/RTS

09-26-02

2-1

2.3

Serial Signal Descriptions
The Micro488/p serial connector is configured as DCE type equipment for
RS-232 communications. This means the Micro488/p always transmits data on
Pin 3 and always receives data on Pin 2.
Note that the Micro488/p is equipped with a standard DB-25S connector andrequires a standard DB-25P mating connector.
Refer to the following figure and table to understand the relationship of theMicro488/p connector’s pins and the associated RS-232 signals. Section 2.4 ofthis document includes wiring information for making your own cables.

Micro488p Serial Connector Pinout

The following table idetifies the above connector pins in regard to
signal name and I/O type.

2-2

09-26-02

Getting Started

Micro/488p Serial Connection
Pin

Signal Name

I/O

Function

2

RxD
Receive Data

Input

Accepts serial data sent by the RS-232 host.
The signal level is low true.

3

TxD
Transmit Data

OutputTransmits serial data to the RS-232 host.
The signal level is low true.

4

CTS
Clear To Send

Input

The CTS input is used as a hardware handshakeline to prevent the Micro488/p from transmitting
serial data when the RS-232 host is not ready toaccept it.
When RTS/CTS handshake is selected, theMicro488/p will not transmit data out TxD while
this line is un-asserted (low).
If XON/XOFF handshake is selected, the CTS
line is not tested to determine if it can transmit
data.

5

RTS
Request To Send

Output

The RTS output is used as a hardware
handshake line to prevent the RS-232 host fromtransmitting serial data if the Micro488/p is notready to accept it.

6

DSR
Data Set Ready

Input

This pin is used to provide power for theMicro488/p if the DTR pin is in its false (LOW)
state, this pin must be in its true (HIGH) state inorder for the Micro488/p to operate properly.

7

Gnd
GroundN/AThis pin sets the ground reference point forthe other RS-232 inputs and outputs.

8

DCD
Data Carrier Detect

Output

The function of this pin is similar to the CTS pin.
This pin is tied internally to its true (HIGH) state.

20

DTR
DataTerminal Ready

Input

Used to provide power for the Micro488/p when
the DSR pin (pin 6) is in its false (LOW) state.
Note that the DTR pin (pin 20) must be in its
true (HIGH) state in order for the Micro488/p tooperate properly.

Getting Started

09-26-02

2-3

2.4

Serial Cable Wiring
If a cable was not purchased with the interface, the following diagrams will be helpful
in making your own cable. Simple soldering skills and attention to detail will ensure
successful construction.

IBM PC/XT/PS2 to Micro488/p

IBM AT to Micro488/p

DB25, Female

DB25, Male

DB9, Female

DB25, Male

TXD

2

2

TXD

DCD

1

8

DCD

RXD

3

3

RXD

RXD

2

3

RXD

RTS

4

4

RTS

TXD

3

2

TXD

CTS

5

5

CTS

DTR

4

20

DTR

DSR

6

6

DSR

GND

5

7

GND

GND

7

7

GND

DSR

6

6

DSR

DCD

8

8

DCD

RTS

7

4

RTS

DTR

20

20

DTR

CTS

8

5

CTS

Two Scenarios for Making an Interface Cable (RS-232)

2.5

Hardware Installation
Installation of the Micro488/p consists of plugging the device into an available serial
port on the host computer.

2-4

09-26-02

Getting Started

2.6 Is Anyone Out There?
In order to properly operate the Micro488/p, the DTR and DSR lines on the COM port
must be initialized first. Usually this can be accomplished by closing and then opening
the serial port. Appendix C includes a Sample Initialization Program.
Once the DTR and DSR ines have been initialized, the next step is to initialize the baudrate to be used with the Micro488/p. This is done by sending the Micro488/p five
carriage returns, separated by a 0.1 second delay. Now send the Micro488/p thefollowing command:"I" <CR>.
The Micro488/p should respond with the prompt ">" character. Now the IEEE488 bus
is initialized, and the Micro488/p ready for operation.

2.7 Programming the Micro488/p
The next step involves writing a simple dumb terminal program to communicate with
the Micro488/p. The dumb terminal program is written in QuickBASIC for any IBM
PC compatable computer, and allows simple communication with IEEE 488 devices
connected to the Micro488/p.
The first task is to open the serial port to which the Micro488/p is connected. If theMicro488/p is connected to serial port 1, then the following line will open that serial
port with the following parameters:
Baud Rate - 19200
Parity - NONE
Data Bits - 8
Stop Bits - 2
OPEN "COM1:19200,N,8,2,cs,ds" FOR RANDOM AS #1
Next, wait a moment for the Micro488/p's power supply to stabilize.
t = TIMER
DO WHILE t + .1 > TIMER
LOOP
Getting Started

09-26-02

2-5

Now that the Micro488/p is powered on, send it five carriage returns for the buad rate
detection circuitry to set the internal baud rate. Place a short time delay between thecharacters to ensure that the proper baud rate will be detected.
FOR i = 1 TO 5
PRINT #1, CHR$(13);t = TIMER
DO WHILE t + .2 > TIMER
LOOPNEXT i
Next, initialize the Micro488/p with the following command:
PRINT #1, "I"
Now, set up the Micro488/p with the following parameters:
Serial echo - OFF
Hardware Handshake - ON
XON/XOFF handshaking - OFF
Serial terminator - CARRIAGE RETURN
IEEE bus terminator - CARRIAGE RETURN, LINE FEEDPRINT #1, "EC;0"PRINT #1, "H;1"
PRINT #1, "X;0"
PRINT #1, "TC;2"
PRINT #1, "TB;4"
After a short delay for command processing, input any garbage
characters that may be in the PC's serial input buffer.
t = TIMER
DO WHILE t + .5 > TIMER
LOOP
a$ = INPUT$(LOC(1), #1)

2-6

09-26-02

Getting Started

Now the Micro488/p is ready for operation. Simply set up an infinite loop to checkfor user keypresses and to look for serial data in the PC's serial input buffer.
PRINT "Ready!"DO
IF LOC(1) THEN PRINT INPUT$(LOC(1), 1);

k$ = INKEY$
PRINT #1, k$;
PRINT k$;LOOP

'If anything is in the'PC's serial input'buffer'print it to the screen.
'Get key press'Send it to the'Micro488/p'Echo keypress to screen

The following is a complete listing of 'DUMBTERM.BAS"'Micro488/p Dumb Terminal Program'Copyright 1992 IOtech Inc.
CLS
PRINT "Initializing..."
OPEN "COM1:19200,N,8,2,cs,ds" FOR RANDOM AS #1
t = TIMER
DO WHILE t + .1 > TIMER
LOOP
FOR i = 1 TO 5
PRINT #1, CHR$(13);t = TIMER
DO WHILE t + .2 > TIMER
LOOPNEXT i
PRINT #1, "I"
PRINT #1, "EC;0"PRINT #1, "H;1"
PRINT #1, "X;0"
PRINT #1, "TC;2"
PRINT #1, "TB;4"t = TIMER
Getting Started

09-26-02

2-7

DO WHILE t + .5 > TIMER
LOOP
a$ = INPUT$(LOC(1), #1)
PRINT "Ready!"DO
IF LOC(1) THEN PRINT INPUT$(LOC(1), 1);
k$ = INKEY$
PRINT #1, k$;
PRINT k$;
LOOP
Section 3 contains detailed command descriptions which are applicable Micro488/p.

2-8

09-26-02

Getting Started

Command Descriptions
3.1 Introduction
This section contains detailed descriptions of each of the low and high-levelcommands available for the Micro488/p. There are two types of commands: bus
commands and system commands. Bus commands communicate with the IEEE 488
bus. System commands configure or request information from the Micro488/p.
Bus Commands:A
C
C;<addr>
EO;nEN
EN;<addr>
L
L;<addr>
LL
O;cmd$
OA;<addr>;cmd$
RE
RE;<addr>
RS
SP;<addr>;
SQ
TR
TR;<addr>/A/L;<addr>/ML/MT/T;<addr>/UL/UT

Command Descriptions(ABORT I/O)
(DEVICE CLEAR)(DEVICE CLEAR w/device specified)(EOI ENABLE/DISABLE)(ENTER)(ENTER w/device specified)(LOCAL)(LOCAL w/device specified)(LOCAL LOCKOUT)(OUTPUT)(OUTPUT w/device specified )(REMOTE)(REMOTE w/device specified)(RESUME)(SERIAL POLL)(SRQ CHECK)(TRIGGER)(TRIGGER w/device specified)(LOW-LEVEL COMMAND)(SEND LISTEN ADDRESS w/device specified)(LOW-LEVEL COMMAND)(LOW-LEVEL COMMAND)(SEND TALK ADDRESS w/device specified)(LOW-LEVEL COMMAND)(LOW-LEVEL COMMAND)

09-27-02

3-1

System Commands:<CTRL> A<CTRL> Q<CTRL> S
EC;n
H;n
I
TB;n
TC;n
X;n

3.2

(ESCAPE)(XON)(XOFF)(ECHO)(HARDWARE HANDSHAKE)(INIT)(IEEE BUS TERMINATOR)(SERIAL TERMINATOR)(XOFF/XON)

Command Description Format
Each command description includes syntax, response, bus states,and examples.

3.2.1

SyntaxThe syntax portion of the command description describes the proper command
syntax which must be sent to the Micro488/p using the IBM BASIC PRINT#
command, or its equivalent in other languages, to the COM port. The following
conventions apply throughout the syntax descriptions:• The Micro488/p is case insensitive; i.e., system commands may be in upperor lower case.
• Commands to an individual IEEE device must conform to the device's
particular syntax.
• Items in lower case, such as addr or n, represent parameters which must be
substituted with an appropriate value.
• Numeric parameters (those that are given as numbers) are decimal unlesspreceded by &H, in which case they considered to be hexadecimal. For
example, 100 is decimal 100, &H64 is hexadecimal 64 which equals decimal
100, &HFF is decimal 255, and 0FF is invalid because F is not a valid
decimal digit.
Note: Bus addresses are the only exception to the numeric parameters rule.
• Bus addresses, both primary and secondary, must be specified as two-digit
decimal numbers. Hexadecimal bus addresses are not allowed.

3-2

09-27-02

Command Descriptions

3.2.1.1

Bus Addressing
The following conventions apply to bus addressing:addr

An IEEE bus address in the range from 00 through 30.

cmd$

An arbitrary command string which is sent to theparticular IEEE device being addressed.

CR

The carriage return character ($13, $&H0D).

LFThe line feed character ($10, $&H0A).

3.2.1.2 Terminators
The following conventions apply to terminators:

term

Any single character, specified as CR, LF, 'X', as described
previously; part of terminator sequence used to mark theend of lines of data and commands.

EOI

The IEEE bus End-Or-Identify signal; when asserted during
the transfer of a character, EOI signals that character as thelast in the transfer. On input, EOI, if specified, causes the
input to stop. On output, EOI causes the bus EOI signal tobe asserted during transmission of the last charactertransferred.

Command Descriptions

09-27-02

3-3

3.2.2

Response
This portion of the command description describes the response that the user's
program should read from the serial host's COM port after sending the command. If
a response is provided, it must be read to maintain proper program seqence.

3.2.3

Bus States
This portion of the command description describes the bus command and datatransfers using IEEE bus mnemonics as listed in the following table.

Bus States

DIO lines
8

ATN
data
DCL
GET
GTL
IFC
LAG
LLO
MLA
MTA
REN
SDC
SPD
SPE
SRQ
TAG
UNL
UNT

Attention
Data String
Device Clear
Group Execute Trigger
Go To Local
Interface Clear
Listen Address Group
Local Lock Out
My Listen Address
My Talk Address
Remote Enable
Selected Device Clear
Serial Poll Disable
Serial Poll Enable
Service Request
Talker Address Group
Unlisten
Untalk

7

6

5

4

3

2

1

x

0

0

1

0

1

0

0

x

0

0

0

1

0

0

0

x

0

0

0

0

0

0

1

x

0

1

a

d

d

r

n

x

0

0

1

0

0

0

1

x

0

1

a

d

d

r

n

x

1

0

a

d

d

r

n

x

0

0

0

0

1

0

0

x

0

0

1

1

0

0

1

x

0

0

1

1

0

0

0

x

1

0

a

d

d

r

n

x

0

1

1

1

1

1

1

x

1

0

1

1

1

1

1

x = "don't care"addrn = IEEE bus address “n”

3-4

09-27-02

Command Descriptions

If a command is preceded by an asterisk, it is unasserted. For example, *REN
states that the remote enable line is unasserted; REN without the asterisk statesthat the line is asserted.

3.2.4

ExamplesThis portion of the command description includes programming
examples written in BASIC.

3.3

The Commands
Command descriptions, relevant to Micro488/p, now follow.

Command Descriptions

09-27-02

3-5

/A
The /A command is a low level IEEE command which asserts the attention line. Aftercompletion of this command, the Micro488/p is left in the controller active state.
SYNTAX/ARESPONSE

None

BUS STATESATNEXAMPLEPRINT#1,"/A"/L
The /L command is a low level IEEE command which sends the LAG command to thespecified device. After completion of this command, the Micro488/p is left in the controller
active state.
SYNTAX/LRESPONSE

None

BUS STATESATN,LAG

EXAMPLEPRINT#1,"/L;10"

3-6

09-27-02

Send LAG10 on the IEEE bus.

Command Descriptions

/ML
The /ML command is a low level IEEE command which places the Micro488/p in the listen
state. After completion of this command, the Micro488/p is ready to listen as soon as the
RESUME (RS) command is issued.
SYNTAX/MLRESPONSE

None

BUS STATESATNEXAMPLEPRINT#1,"/ML"/MT
The /MT command is a low level IEEE command which places the Micro488/p in the talkstate. After completion of this command, the Micro488/p is ready to talk as soon as the
RESUME (RS) command is issued.
SYNTAX/MTRESPONSE

None

BUS STATESATN,UNT

EXAMPLEPRINT#1,"/MT"

Command Descriptions

09-27-02

3-7

/TThe /T command is a low level IEEE command which issues the talk command to thespecified IEEE device.
SYNTAX/T;addrRESPONSE

None

BUS STATESATN,TAG

EXAMPLEPRINT#1,"/T;10"

Issue TAG to device 10.

/UL
The /UL command is a low level IEEE command which sends the UNL command to theIEEE bus. This command instructs all devices on the IEEE bus to get off the IEEE bus.
SYNTAX/ULRESPONSE

None

BUS STATESATN,UNL

EXAMPLEPRINT#1,"/UL"

3-8

09-27-02

Command Descriptions

/UTThe /UT command is a low level IEEE command which sends the UNT command to theIEEE bus. This command instructs all devices on the IEEE bus to get off the IEEE bus.
SYNTAX/UTRESPONSE

None

BUS STATESATN,UNT

EXAMPLEPRINT#1,"/UT"A

ABORT I/O

The ABORT I/O command causes the Interface Clear (IFC) bus management line to bepulsed. By asserting IFC, the Micro488/p regains control of the bus even if one of thedevices has locked it up during a data transfer. ABORT I/O forces all IEEE bus device
interfaces into a quiescent idle state.
SYNTAXARESPONSE

None

BUS STATES*REN, IFC, *IFC, ATN, REN

EXAMPLEPRINT#1,"A"

Command Descriptions

09-27-02

3-9

C

DEVICE CLEAR

The DEVICE CLEAR command causes the Device Clear (DCL) bus command to be issued
by the Micro488/p. If the optional addresses are included, the Selected Device Clear (SDC)command is issued to the specified devices. IEEE 488 bus devices which receive a Device
Clear or Selected Device Clear command normally reset to their power-on state.
SYNTAX

C[;addr]RESPONSE

None

BUS STATESATN, DCL
ATN, UNL,UNT,LAG,SDC

EXAMPLESPRINT #1,"C"
PRINT #1,"C;10"(all devices)(selected devices)

Issue a Device Clear to all devices.
Issue a Selected Device Clear to
device 10.

EC

ECHO

The system command ECHO instructs the Micro488/p to either enable, or disable serial
echo.
SYNTAXEC;nn = 1, enable serial echo.
n = 0, disable serial echo.

RESPONSE

None

BUS STATES

None

EXAMPLEPRINT#1,"EC;1"

3-10

09-27-02

Enable serial echo.

Command Descriptions

EN

ENTER

The ENTER command reads data from the IEEE bus. If a device address is specified, thatdevice is addressed to talk. If no address is specified, the Micro488/p must already be
configured to receive data as a result of an immediately preceding ENTER command. The
Micro488/p hangs the bus if no device is present to provide the data. From either mode
(addressed or unaddressed), the Micro488/p inputs data from the IEEE bus and sends it toserial port until one of the following conditions is met:
1.
2.
3.

A terminator character is received from the IEEE device that is talking.
An EOI is received with the data from the IEEE device that is talking.
An Escape command is received from the host computer via the serial port.

SYNTAX

EN[;addr]
addr is the IEEE bus device address.

RESPONSE

Device-dependent data. The response ends when the IEEE bus
input terminator is detected and the serial output terminators areappended to the returned data.

BUS STATESATN,UNL,TAG,*ATN
Micro488/p is in the listener active state, and IEEE device is in
the talker active state.

EXAMPLESPRINT#1,"EN;16"
INPUT#1,A$
PRINT#1,"EN;16"
LINE INPUT#1,A$

Command Descriptions

09-27-02

Read data from device 16.
Read an entire line of datafrom device 16 even if it
contains commas or otherpunctuation.

3-11

<CTRL>A

ESCAPEThe system command ESCAPE unlocks the Micro488/p from an inappropriate command,such as a command requesting data from a nonexistent device.
When the ESCAPE command is received, the serial handshake line (RTS) is un-asserted. It
is asserted when the Micro488/p is capable of buffering commands. If XON/XOFF
handshake is selected, the software handshake state is not modified.
Issuing the ESCAPE command clears the serial input (pending commands) and causes theMicro488/p to wait for new commands.
SYNTAX<CTRL> A or CHR$(1)RESPONSE

None

BUS STATES

None

EXAMPLEPRINT #1, CHR$(1)H

HARDWARE HANDSHAKE

The system command HARDWARE HANDSHAKE enables or disables hardware(CTS/RTS) handshake.
SYNTAXH;nn = 0, disable hardware handshake.
n = 1, enable hardware handshake.

RESPONSE

None

BUS STATES

None

EXAMPLEPRINT#1,"H;1"

3-12

09-27-02

Enable hardware handshake.

Command Descriptions

TB

IEEE BUS TERMINATOR

The IEEE BUS TERMINATOR command is used to select the IEEE bus terminator forreads from the IEEE bus. The selected terminator signifies the end of an ENTER sequence.
The available terminators are:
1 - LF
2 - CR
3 - LF-CR
4 - CR-LF
SYNTAX

TB;nn is one of the available terminator types.

RESPONSE

None

BUS STATES

None

EXAMPLEPRINT #1, "TB;1"

Command Descriptions

09-27-02

Select LF as an IEEE bus
terminator.

3-13

I

INIT

The system command INIT provides a warm start of the interface. Issuing the INIT
command clears the serial input (pending commands) and output (pending data) buffers andre-initializes the internal IEEE controller hardware.
SYNTAXIRESPONSE

None

BUS STATESIFC, REN, *IFC, ATN, *REN, REN

EXAMPLEPRINT#1,"I"

L

LOCAL

The LOCAL command, without optional address, causes the Micro488/p to un-assert the
Remote Enable line causing devices on the bus to return to manual operation. With theaddress specified, the bus device is placed in the local mode by the Go To Local (GTL) bus
command.
SYNTAXRESPONSE
BUS STATES

L [;addr]
None*REM
unaddressed.
ATN, UNL, UNT, LAG, GTL
addressed.

EXAMPLESPRINT#1,"L"
PRINT #1,"L;16"

3-14

09-27-02

Un-assert the REN Line.
Cause device 16 to go to
local.

Command Descriptions

LL

LOCAL LOCKOUT

The LOCAL LOCKOUT command causes the Micro488/p to issue a Local Lockout IEEEbus command which inhibits bus devices that support this command from being controlled
manually from their front panels.
SYNTAXLLRESPONSE

None

BUS STATESATN, LLO

EXAMPLESPRINT#1,"LL"

Send Local Lockout command.

O

OUTPUTThe OUTPUT command sends data to the IEEE bus. The Remote Enable line is first
asserted, then, if a device address is specified, that device is addressed to listen. If an
address is not specified, the Micro488/p must already be configured to send data as a resultof an immediately preceding OUTPUT command.
SYNTAX

O;cmd$
unaddressed.
OA;addr;cmd$
addressed.
addr is a bus device address.
cmd$ is a string of characters to OUTPUT terminated by theserial terminator(s).

RESPONSE

None

BUS STATESREN , *ATN, cmd$
unaddressed.
ATN, UNL, UNT, LAG, GTL, data
addressed.

EXAMPLESPRINT#1,"OA;22;R0C0T1X"
Send "R0C0T1X" to device 22.
PRINT#1,"O;XYZ"
Send device 22 "XYZ".

Command Descriptions

09-27-02

3-15

RE

REMOTEThe REMOTE command asserts the Remote Enable (REN) bus management line. If theoptional bus address is specified, then REMOTE also addresses the device to listen, placing
it in the Remote addressed state.
SYNTAX

RE [;addr]

RESPONSE

None

BUS STATES

REN
unaddressed.
REN, ATN, UNL. UNT. LAG
addressed.

EXAMPLEPRINT #1,"RE"RS

Assert Remote Enable.

RESUMEThe RESUME command un-asserts the Attention (ATN) bus signal removing theMicro488/p from the active controller state and allowing transfers to take place between two
peripheral devices.
SYNTAXRSRESPONSE

None

BUS STATES*ATNEXAMPLEPRINT#1,"RS"Un-assert ATTENTION line.

09-27-02

Command Descriptions

3-16

SP

SERIAL POLL

The SERIAL POLL command performs a Serial Poll of the bus device specified andresponds with a number from 0 to 255 representing the decimal equivalent of the eight-bit
device response. If rsv (DIO7, decimal value 64) is set, then that device is signaling that it
requires service. Serial Polls are normally performed in response to assertion of the Service
Request (SRQ) bus signal by some bus device.
SYNTAX

SP; addr

RESPONSE

0 to 255

BUS STATESATN, UNL, TAG, SPE, *ATN, data, ATN, SPD, UNT

EXAMPLESPRINT#1,"SP 16"
INPUT#1,SPSTATTC

Serial Poll device 16.
Receive the Spoll status.

SERIAL TERMINATOR

The SERIAL TERMINATOR command sets the end-of-line terminators for input from theserial host. All input from the serial host must be terminated by the selected terminator.
During INPUT, the Micro488/p takes the data it receives from the bus device until it detects
the LF of other optionally specified input terminating condition. It strips all CR and LF fromthe input data and appends the serial output terminator CR before sending it to the serial
host. The available terminators are:
1 - LF
2 - CR
3 - LF-CR
4 - CR-LF
SYNTAXTC;nn is one of the available terminator types.

RESPONSE

None

BUS STATES

None

EXAMPLESPRINT#1,"TC;2"

Command Descriptions

09-27-02

Select CR as the serial output
terminator.
3-17

SQ

SRQ CHECKThe system command SRQ CHECK inquires whether or not the SRQ line on the IEEE bus
is currently being asserted.
SYNTAXSQRESPONSEY
SRQ is being asserted.
N
SRQ is not being asserted.

BUS STATES

None

EXAMPLESPRINT #1, "SQ"INPUT#1,SRQSTATTR

Issue SRQ CHECK
command.
Receive SRQ status.

TRIGGERThe TRIGGER command issues a Group Execute Trigger (GET) bus command to thespecified device. If no address is specified, then GET only affects those devices that are
already in the listen state as a result of a previous OUTPUT command.
SYNTAX

TR[;addr]

RESPONSE

None

BUS STATESATN, GET
unaddressed.
ATN, UNL,UNT, LAG, GET
addressed.

EXAMPLESPRINT#1,"TR;16"

3-18

09-27-02

Issue Group Execute Trigger
to device 16.

Command Descriptions

X

XOFF/XON

The system command XOFF/XON enables or disables XON/XOFF handshaking.
SYNTAXX;nn = 0, disable XON/XOFF handshaking.
n = 1, enable XON/XOFF handshaking.

RESPONSE

None

BUS STATES

None

EXAMPLEPRINT #1, "X;1"<CTRL>S

Enable XON/XOFF
handshaking.

XOFF

The system command XOFF temporarily inhibits serial transmission from the Micro488/p.
SYNTAX<CTRL> S or CHR$(19)RESPONSE

None

BUS STATES

None

EXAMPLEPRINT #1, CHR$(19)Command Descriptions

09-27-02

3-19

<CTRL>QXON

The system command XON restarts serial transmission from the Micro488/p following
reception of the XOFF command.
SYNTAX<CTRL> Q
CHR$(17)RESPONSE

None

BUS STATES

None

EXAMPLEPRINT #1, CHR$(17)3-20

09-27-02

Command Descriptions

Appendix A

Micro488/p Command Summary

Command

Code

Description

Page

/A

/A

Asserts the attention line; leaves Micro488/p in the controller active
state.

3-6

/L

/L

Sends the LAG command to the specified device; leaves Micro488/p inthe controller active state.

3-6

/ML

/ML

Places the Micro488/p in the listen state on RESUME (RS).

3-7

/MT

/MT

Places the Micro488/p in the talk state on RESUME (RS).

3-7

/T

/T;addrIssues the talk command to the specified IEEE device.

3-8

/UL

/UL

Sends the UNL command to the IEEE bus; instructs all devices on theIEEE bus to get off the IEEE bus.

3-8

/UT

/UT

Sends the UNT command to the IEEE bus; instructs all devices on theIEEE bus to get off the IEEE bus.

3-9

ABORT I/O

A

Pulses Interface Clear (IFC) bus management line to be pulsed; forces all
IEEE bus device interfaces into a quiescent idle state.

3-9

DEVICE CLEAR

C[;addr]

Instructs Micro488/p to issue Device Clear (DCL) bus command; if
optional addresses are included, issues the Selected Device Clear (SDC)command to the specified devices.

3-10

ECHO

EC;n

Instructs the Micro488/p to enable or disable serial echo.

3-10

ENTER

ENTER[;addr]

Reads data from the IEEE bus and sends it to serial port; a terminator
character, an EOI, or an ESCAPE command terminates data
input/output.

3-11

ESCAPE<CTRL> A
CHR$(1)

Unlocks the Micro488/p from an inappropriate command; clears theserial input (pending commands) and instructs Micro488/p to wait for
new commands.

3-12

HARDWARE
HANDSHAKE

H;nEnables or disables hardware (CTS/RTS) handshake.

3-12IEEE BUSTERMINATOR

TB;nSelects the IEEE bus terminator for reads from the IEEE bus; selected
terminator signifies the end of an ENTER sequence.

3-13

INIT

I

Provides a warm start of the interface; clears the serial input (pending
commands) and output (pending data) buffers and re-initializes theinternal IEEE controller hardware.

3-14

Appendix A, Micro488/p Command Summary

09-26-02

A-1

Command

Code

Description

Page

LOCAL

L[;addr]Without optional address, instructs the Micro488/p to un-assert the
Remote Enable line causing devices on the bus to return to manual
operation; with optional address, places bus device in the local mode by
the Go To Local (GTL) bus command.

3-14

LOCAL LOCKOUT

LL

Instructs the Micro488/p to issue a Local Lockout IEEE bus command.

3-15

OUTPUT

O;cmd$
O;addr;cmd$

Sends data to the IEEE bus.

3-15

REMOTERE[;addr]

Asserts the Remote Enable (REN) bus management line.

3-16

RESUMERS

Un-asserts the Attention (ATN) bus signal; removes the Micro488/p
from the active controller state and allows transfers between two
peripheral devices.

3-16

SERIAL POLL

SP;addr

Performs a serial poll of the bus device specified; responds with anumber from 0 to 255 representing the decimal equivalent of the eightbit device response.

3-17

SERIALTERMINATOR

TC;nSets the end-of-line terminators for input from the serial host.

3-17

SRQ CHECKSQ

Inquires whether or not the SRQ line on the IEEE bus is currently being
asserted.

3-18

TRIGGER

TR[;addr]

Issues a Group Execute Trigger (GET) bus command to the specified
device; if no address is specified, then GET affects those devices alreadyin the listen state.

3-18

XOFF/XON

X;nEnables or disables XON/XOFF handshaking.

3-19

XOFF

<CTRL>SCHR$1(9)Temporarily inhibits serial transmission from the Micro488/p.

3-19

XON

<CTRL>Q
CHR$1(17)Restarts serial transmission from the Micro488/p.

3-20

A-2

09-26-02

Appendix A, Micro488/p Command Summary

Appendix B
$00

0

NUL
$01

Character Codes and IEEE Multiline Messages
$10

1

$11

SOH
GTL
$02

2

ETX
EOT
ENQ
ACK
BEL
BS

DCL
$15
PPU
$16
GTL
$17

$18

9

10

VT

29

$1E

SO

30

13
$2E

$1F

14
$2F

US

/
15

ACG

UCG

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

12
$4D

27
$5C
28
$5D
29
$5E

N
63

14
$4F

30
$5F

O
15

LAG

109

SCG
$6E

SCG
$7D

_

SCG
$7E

TAG

126

~
111

SCG
$7F

o
SCG

125

}
110

SCG
$6F

124

|

N
95

31

SCG
$7C

m
94

123

{
108

SCG
$6D

^
79

SCG
$7B

l
93

122

z
107

SCG
$6C

]
78

SCG
$7A

k
92

121

y
106

SCG
$6B

\
77

13
$4E

?
31

76

SCG
$79

j
91

120

x
105

SCG
$6A

[

M
62

30
$3F

26
$5B

SCG
$78

i
90

119

w
104

SCG
$69

Z
75

11
$4C

>
47

25
$5A

L
61

29
$3E

.
31

10
$4B

=
46

74

SCG
$77

h
89

118

v
103

SCG
$68

Y

K
60

28
$3D

24
$59

SCG
$76

g
88

117

u
102

SCG
$67

X
73

09
$4A

<
45

23
$58

J
59

27
$3C

-

RS
15

44

12
$2D

08
$49

;

,

GS
14

SI

+

72

SCG
$75

f
87

116

t
101

SCG
$66

W

I
58

26
$3B

22
$57

SCG
$74

e
86

115

s
100

SCG
$65

V
71

07
$48

:
43

21
$56

H
57

25
$3A

*

11
$2C

06
$47

9
42

70

SCG
$73

d
85

114

r
99

SCG
$64

U

G
56

24
$39

20
$55

F
55

23
$38

)

10
$2B

05
$46

8
41

09
$2A

54

22
$37

69

SCG
$72

c
84

113

q
98

SCG
$63

T

E

7
40

08
$29

04
$45

6
39

07
$28

53

21
$36

(

28

$1D

CR

$0F

06
$27

FS
13

38

19
$54

SCG
$71

b
83

112

p
97

SCG
$62

S
68

$70

a
82

18
$53

D

5

'

27

$1C

FF

$0E

23

26

$1B

20
$35

&

25

SPD
$1A

37

05
$26

ESC
12

$0D

22

03
$44

SCG
$61

R
67

96

`
81

17
$52

C
52

$60

Q
66

02
$43

4

%

SUB
11

$0C

04
$25

EM

LF
$0B

21

24

SPE
$19

19
$34

16
$51

B
51

80

P
65

01
$42

3
36

$50

A
50

18
$33

$

CAN

HT
TCT
$0A

03
$24

00
$41

2
35

64

@
49

17
$32

#
20

$40

1
34

02
$23

ETB
8

GET
$09

$14

16
$31

"
19

48

0
33

01
$22

SYN
7

$08

18

NAK
6

$07

$13

$30

!

DC4
5

PPC
$06

00
$21

DC3
4

SDC
$05

17

LLO
$12

32

SP

DC2
3

$04

$20

DCI

STX
$03

16

DLE

127

DEL
SCG

SCG

TAG = Talk Address GroupSCG = Secondary Command GroupAppendix B, Character Codes and IEEE Multiline Messages

09-27-02

B-1

Notes:B-2

Appendix C

Sample Initialization Program'Sample Micro488/p initialization program'Copyright 1992, IOtech Inc.
'
'This program demonstrates how to initialize the Micro488/p IEEE
'controller using Quick Basic. This program will initialize the'Micro488/P, and establish IEEE communications.
CLS
CLOSE

'Close all files, this turns off DTR and DSR.

com$ = "COM1:19200,N,8,1,BIN"
IeeeOut = FREEFILE
IeeeIn = FREEFILE
OPEN com$ FOR RANDOM AS #IeeeOutt = TIMER
DO WHILE t + .1 > TIMER
LOOP
FOR i = 1 TO 5'Open the serial port on COM 1'Wait for .1 Seconds'Send 5 carriage returns, with a .1
'second delay seperation.

PRINT #IeeeOut, CHR$(13);t = TIMER
DO WHILE t + .1 > TIMER
LOOPNEXT i
PRINT #IeeeOut, "I"
PRINT #IeeeOut, "EC;0"PRINT #IeeeOut, "H;1"
PRINT #IeeeOut, "X;0"
PRINT #IeeeOut, "TC;2"
PRINT #IeeeOut, "TB;4"
LF
t = TIMER
DO WHILE t + .5 > TIMER
LOOP
a$ = INPUT$(LOC(1), #IeeeIn)

Appendix C, Sample Initialization Program'Send Init command'Turn off serial echo'Turn on hardware handshake'Turn off XON/XOFF handshake'Set serial terminator to CR'Set IEEE bus terminator to CR'Wait .5 seconds'Clear the serial input buffer.

09-27-02

C-1

Notes:C-2