HP 16554A, 16555A, 16555D User Manual

Programmer’s Guide
Publication number 16555-97011 First edition, January 1997
For Safety information, Warranties, and Regulatory information, see the pages behind the Index
Copyright Hewlett-Packard Company 1987, 1990, 1993, 1994, 1997 All Rights Reserved
HP 16554A, HP 16555A, and HP 16555D State/Timing Logic Analyzers
ii

In This Book

Programming the HP 16554A/
1
HP 16555A/HP 16555D
This guide, combined with the
HP 16500/16501A Programmer’s Guide, provides you with the information
needed to program the HP 16554A and HP 16555A/D logic analyzer modules. Each module has its own reference to supplement the mainframe manual since not all mainframes will be configured with the same modules.
This manual is organized in three parts. Part 1 consists of chapters 1 and 2 which contain general information and instructions to help you get started.
Chapter 1 also contains:
Mainframe system commands that are
frequently used with the logic analyzer module
HP 16554A/HP 16555A/HP 16555D
logic analyzer command tree Alphabetic command-to-subsystem
directory
Chapter 2 contains module-level commands.
Part 2 consists of chapters 3 through 16 which contain the subsystem commands for the logic analyzer and chapter 17 which contains information on the SYSTem:DATA and SYSTem:SETup commands for this module.
2
3
4
5
6
7
8
9
10
11
12
13
Module Level Commands
MACHine Subsystem
WLISt Subsystem
SFORmat Subsy stem
STRigger (STRace) Subsystem
SLISt Subsystem
SWAVeform Subsystem
SCHart Subsy stem
COMPare Subsystem
TFORmat Subsystem
TTRigger (TTRace) Subsystem
TWAVeform Subsystem
14
TLISt Subsyste m
iii
Part 3, chapter 18, contains program examples of actual tasks that show you how to get started in programming the HP 16554A and HP 16555A/D logic analyzers. These examples are written in HP BASIC 6.2; however, the program concepts can be used in any other popular programming language.
Error messages for the HP 16554A and HP 16555A/D are included in generic system error messages and are in the HP 16500/16501A Programmer’s Guide.
iv
15
SYMBol Subsystem
16
17
18
SPA Subsystem
DATA and SETup Commands
Programming Examples
Index
v
vi

Contents

Part 1 General Information
1 Programming the HP 16554A/ HP 16555A/HP 16555D
Selecting the Module 1–3 Programming the Logic Analyzer 1–3 Mainframe Commands 1–5 Command Set Organization 1–8 Module Status Reporting 1–12 MESE<N> 1–13 MESR<N> 1–15
2 Module Level Commands
ARMLine 2–5 DBLock 2–5 MACHine 2–6 SPA 2–7 WLISt 2–7
Part 2 Commands
3 MACHine Subsystem
MACHine 3–4 ARM 3–5 ASSign 3–6 LEVelarm 3–7 NAME 3–8 REName 3–8 RESource 3–9 TYPE 3–10
Contents–1
Contents
4 WLISt Subsystem
WLISt 4–4 DELay 4–5 INSert 4–6 LINE 4–7 MINus 4–8 OSTate 4–9 OTIMe 4–9 OVERlay 4–10 PLUS 4–11 RANGe 4–12 REMove 4–12 XOTime 4–13 XSTate 4–13 XTIMe 4–14
5 SFORmat Subsystem
SFORmat 5–6 CLOCk 5–6 LABel 5–7 MASTer 5–9 MODE 5–10 MOPQual 5–11 MQUal 5–12 REMove 5–13 SETHold 5–13 SLAVe 5–15 SOPQual 5–16 SQUal 5–17 THReshold 5–18
Contents–2
6 STRigger (STRace) Subsystem
Qualifier 6–6 STRigger (STRace) 6–8 ACQuisition 6–8 BRANch 6–9 CLEar 6–11 FIND 6–12 MLENgth 6–13 RANGe 6–14 SEQuence 6–15 STORe 6–16 TAG 6–17 TAKenbranch 6–18 TCONtrol 6–19 TERM 6–20 TIMER 6–21 TPOSition 6–22
Contents
7 SLISt Subsystem
SLISt 7–7 COLumn 7–7 CLRPattern 7–8 DATA 7–9 LINE 7–9 MMODe 7–10 OPATtern 7–11 OSEarch 7–12 OSTate 7–13 OTAG 7–14 OVERlay 7–15 REMove 7–15 RUNTil 7–16 TAVerage 7–17 TMAXimum 7–17 TMINimum 7–18 VRUNs 7–18
Contents–3
Contents
XOTag 7–19 XOTime 7–19 XPATtern 7–20 XSEarch 7–21 XSTate 7–22 XTAG 7–22
8 SWAVeform Subsystem
SWAVeform 8–4 ACCumulate 8–5 ACQuisition 8–5 CENTer 8–6 CLRPattern 8–6 CLRStat 8–7 DELay 8–7 INSert 8–8 MLENgth 8–8 RANGe 8–9 REMove 8–10 TAKenbranch 8–10 TPOSition 8–11
9 SCHart Subsystem
SCHart 9–4 ACCumulate 9–4 CENTer 9–5 HAXis 9–5 VAXis 9–6
10 COMPare Subsystem
COMPare 10–4 CLEar 10–5 CMASk 10–5 COPY 10–6 DATA 10–6
Contents–4
FIND 10–8 LINE 10–9 MENU 10–9 RANGe 10–10 RUNTil 10–11 SET 10–12
11 TFORmat Subsystem
TFORmat 11–4 ACQMode 11–5 LABel 11–6 REMove 11–7 THReshold 11–8
Contents
12 TTRigger (TTRace) Subsystem
Qualifier 12–6 TTRigger (TTRace) 12–8 ACQuisition 12–9 BRANch 12–9 CLEar 12–12 EDGE 12–13 FIND 12–14 MLENgth 12–16 RANGe 12–17 SEQuence 12–18 SPERiod 12–19 TCONtrol 12–20 TERM 12–21 TIMER 12–22 TPOSition 12–23
Contents–5
Contents
13 TWAVeform Subsystem
TWAVeform 13–7 ACCumulate 13–7 ACQuisition 13–8 CENTer 13–9 CLRPattern 13–9 CLRStat 13–9 DELay 13–10 INSert 13–11 MLENgth 13–12 MINus 13–13 MMODe 13–14 OCONdition 13–15 OPATtern 13–16 OSEarch 13–17 OTIMe 13–18 OVERlay 13–18 PLUS 13–19 RANGe 13–20 REMove 13–20 RUNTil 13–21 SPERiod 13–22 TAVerage 13–23 TMAXimum 13–23 TMINimum 13–24 TPOSition 13–24 VRUNs 13–25 XCONdition 13–26 XOTime 13–26 XPATtern 13–27 XSEarch 13–28 XTIMe 13–29
Contents–6
14 TLISt Subsystem
TLISt 14–7 COLumn 14–7 CLRPattern 14–8 DATA 14–9 LINE 14–9 MMODe 14–10 OCONdition 14–11 OPATtern 14–12 OSEarch 14–13 OSTate 14–14 OTAG 14–14 REMove 14–15 RUNTil 14–16 TAVerage 14–17 TMAXimum 14–17 TMINimum 14–18 VRUNs 14–18 XCONdition 14–19 XOTag 14–19 XOTime 14–20 XPATtern 14–20 XSEarch 14–21 XSTate 14–22 XTAG 14–23
Contents
15 SYMBol Subsystem
SYMBol 15–5 BASE 15–5 PATTern 15–6 RANGe 15–7 REMove 15–8 WIDTh 15–8
Contents–7
Contents
16 SPA Subsystem
MODE 16–7 OVERView:BUCKet 16–8 OVERView:HIGH 16–9 OVERView:LABel 16–10 OVERView:LOW 16–11 OVERView:MLENgth 16–12 OVERView:OMARker 16–13 OVERView:OVSTatistic 16–14 OVERView:XMARker 16–15 HISTogram:HSTatistic 16–16 HISTogram:LABel 16–17 HISTogram:OTHer 16–18 HISTogram:QUALifier 16–19 HISTogram:RANGe 16–20 HISTogram:TTYPe 16–21 TINTerval:AUTorange 16–22 TINTerval:QUALifier 16–23 TINTerval:TINTerval 16–24 TINTerval:TSTatistic 16–25
17 DATA and SETup Commands
Introduction 17–2
Data Format 17–3 SYSTem:DATA 17–4 Section Header Description 17–6 Section Data 17–6 Data Preamble Description 17–7 Acquisition Data Description 17–11 Time Tag Data Description 17–13 SYSTem:SETup 17–13
Contents–8
Part 3 Programming Examples
18 Programming Examples
Making a Timing Analyzer Measurement 18–3 Making a State Analyzer Measurement 18–5 Making a State Compare Analyzer Measurement 18–9 Transferring the Logic Analyzer Configuration 18–14 Checking for Measurement Completion 18–18 Sending Queries to the Logic Analyzer 18–19
Index
Contents
Contents–9
Contents–10
Part 1
1 Introduction to Programming 2 Module Level Commands

General Information

1

Programming the HP 16554A/ HP 16555A/HP 16555D

Introduction
This chapter introduces you to the basic command structure used to program the logic analyzer. Also included is an example program that sets up the timing analyzer for a basic timing measurement. Additional program examples are in chapter 18.
1–2
Programming the HP 16554A/ HP 16555A/HP 16555D

Selecting the Module

Selecting the Module
Before you can program the logic analyzer, you must first "select" it. This directs your commands to the logic analyzer.
To select the module, use the system command :SELect followed by the numeric reference for the slot location of the logic analyzer (1 through 10 refering to slots A through J respectively). For example, if the logic analyzer is in slot E, then the command:
:SELect 5
would select this module. For more information on the select command, refer to the HP 16500/16501A Programmer’s Guide. It is available through your HP Sales Office.

Programming the Logic Analyzer

A typical logic analyzer program will do the following:
select the appropriate module
name a specified analyzer
specify the analyzer type
assign pods
assign labels
sets pod thresholds
specify a trigger condition
set up the display
specify acquisition type
start acquiring data
1–3
Programming the HP 16554A/ HP 16555A/HP 16555D
Programming the Logic Analyzer
The following example program sets up the logic analyzer to make a simple timing analyzer measurement.
Example 10 OUTPUT XXX;":SELECT 3"
20 OUTPUT XXX;":MACH1:NAME ’TIMING’" 30 OUTPUT XXX;":MACH1:TYPE TIMING" 40 OUTPUT XXX;":MACH1:ASSIGN 1" 50 OUTPUT XXX;":MACH1:TFORMAT:LABEL ’COUNT’,POS,0,0,255" 60 OUTPUT XXX;":MACH1:TTRIGGER:TERM A, ’COUNT’, ’#HFF’"
70 OUTPUT XXX;":MACH1:TWAVEFORM:RANGE 1E−6" 80 OUTPUT XXX;":MENU 3,5" 90 OUTPUT XXX;":MACH1:TWAVEFORM:INSERT ’COUNT’" 100 OUTPUT XXX;":RMODE SINGLE" 110 OUTPUT XXX;":START" 120 END
The three Xs (XXX) after the "OUTPUT" statements in the previous example refer to the device address required for programming over either HP-IB or RS-232-C. Refer to your controller manual and programming language reference manual for information on initializing the interface.
Program Comments
Line 10 selects the logic analyzer in slot C. Line 20 names machine (analyzer) 1 "TIMING". Line 30 specifies machine 1 is a timing analyzer. Line 40 assigns pods 1 and 2 to machine 1. Line 50 sets up the Timing Format menu by assigning the label COUNT, and
assigning a polarity and channels to the label. Line 60 selects the trigger pattern for the timing analyzer. Line 70 sets the range to 100 ns (10 times s/div). Line 80 changes the onscreen display to the Timing Waveforms menu. Line 90 inserts the label "COUNT" in the Timing Waveform menu. Line 100 specifies the Single run mode. Line 110 starts data acquisition. For more information on the specific logic analyzer commands, refer to
chapters 2 through 17.
1–4
Programming the HP 16554A/ HP 16555A/HP 16555D

Mainframe Commands

Mainframe Commands
These commands are part of the HP 16500/16501A mainframe system and are mentioned here only for reference. For more information on these commands, refer to the HP 16500/16501A Programmer’s Guide.
CARDcage? Query
The CARDcage query returns a string of integers which identifies the modules that are installed in the mainframe. The returned string is in two parts. The first five two-digit numbers identify the card type. The identification number for the HP 16554A and HP 16555A/D logic analyzers is
34. A "1" in the first part of the string indicates no card is installed in the slot.
The five single-digit numbers in the second part of the string indicate which card has the controlling software for the module; that is, where the master card is located.
Example
12,11,−1,1,34,2,2,0,0,5
A returned string of 12,11,-1,-1,34,2,2,0,0,5 means that an oscilloscope time base card (ID number 11) is loaded in slot B and the oscilloscope acquisition card (ID number 12) is loaded in slot A. The next two slots (C and D) are empty (1). Slot E contains a logic analyzer module (ID number 34).
The next group of numbers (2,2,0,0,5) indicate that a two-card module is installed in slots A and B with the master card in slot B. The "0" indicates an empty slot, or the module software is not recognized or is not loaded. The last digit (5) in this group indicates a one-card module is loaded in slot E. Complete information for the CARDcage query is in the HP 16500/16501A Programmer’s Guide.
1–5
Programming the HP 16554A/ HP 16555A/HP 16555D
Mainframe Commands
MENU Command/query
The MENU command selects a new displayed menu. The first parameter (X) specifies the desired module. The optional, second parameter specifies the desired menu in the module. The second parameter defaults to 0 if it is not specified. The query returns the currently selected and displayed menu.
For the HP 16554A/HP 16555A/HP 16555D Logic Analyzers:
X,0 — State/Timing
Configuration X,1 — Format 1
X,2 — Format 2
X,3 — Trigger 1
X,4 — Trigger 2
X,5 — Waveform 1
X,6 — Waveform 2
X,7 — Listing 1
If a machine is turned off, its menus are not available. The Mixed Display is available only when one or both analyzers are state analyzers.
SELect Command/query
The SELect command selects which module or intermodule will have parser control. SELect 0 selects the intermodule, SELect 1 through 5 selects modules A through E respectively. Values 1 and 2 select software options 1 and 2. The SELect query returns the currently selected module.
STARt Command
The STARt command starts the specified module. If the specified module is configured for intermodule (group run), STARt will start all modules configured as part of the intermodule run.
X,8 — Listing 2
X,9 — Mixed Display
X,10 — Compare 1
X,11 — Compare 2
X,12 — Chart 1
X,13 — Chart 2
X,14 — SPA 1
X,15 — SPA 2
1–6
Programming the HP 16554A/ HP 16555A/HP 16555D
Mainframe Commands
STOP Command
The STOP command stops the specified module. If the specified module is configured as part of an intermodule run, STOP will stop all associated modules.
STARt and STOP are overlapped commands. Overlapped commands allow execution of subsequent commands while the logic analyzer operations initiated by the overlapped command are still in progress. For more information, see *OPC and *WAI commands in Chapter 5 of the HP 16500/16501A Programmer’s Guide.
RMODe Command/query
The RMODe command specifies the run mode (single or repetitive) for a module. If the selected module is configured for intermodule, the intermodule run mode will be set by this command. The RMODe query returns the current setting.
SYSTem:ERRor? Query
The SYSTem:ERRor query returns the oldest error in the error queue. In order to return all the errors in the error queue, a simple FOR/NEXT loop can be written to query the queue until all errors are returned. Once all errors are returned, the query will return zeros.
SYSTem:PRINt Command/query
The SYSTem:PRINt command initiates a print of the screen or listing buffer over the current printer communication interface. The SYSTem:PRINt query sends the screen or listing buffer data over the current controller communication interface.
MMEMory Subsystem
The MMEMory Subsystem provides access to both internal disc drives for loading and storing configurations.
INTermodule Subsystem
The INTermodule Subsystem commands are used to specify intermodule arming between multiple modules.
1–7
Programming the HP 16554A/ HP 16555A/HP 16555D

Command Set Organization

Command Set Organization
The command set for the HP 16554A/HP 16555A/HP 16555D is divided into module-level commands and subsystem commands. Module-level commands are listed in Chapter 2, "Module Level Commands" and each of the subsystem commands are covered in their individual chapters starting with Chapter 3, "MACHine Subsystem."
Each of these chapters contains a description of the subsystem, syntax diagrams, and the commands in alphabetical order. The commands are shown in long form and short form using upper and lowercase letters. For example, LABel indicates that the long form of the command is LABEL and the short form is LAB. Each of the commands contain a description of the command and its arguments, the command syntax, and a programming example.
Figure 1-1 on the following page shows the command tree for the HP 16554A/HP 16555A/HP 16555D logic analyzer module. The (x) following the SELect command at the top of the tree represents the slot number where the logic analyzer module is installed. The number may range from 1 through 10, representing slots A through J, respectively.
1–8
Figure 1-1
Programming the HP 16554A/ HP 16555A/HP 16555D
Command Set Organization
HP 16554A/HP 16555A/HP 16555D Command Tree
1–9
Programming the HP 16554A/ HP 16555A/HP 16555D
Command Set Organization
Table 1-1
Alphabet ical Command-to-Subsyst em Directory
Command Where Used
ACCumulate SCHart, SWAVeform, TWAVeform ACQMode TFORmat ACQuisition STRigger, SWAVeform, TTRigger,
TWAVeform ARM MACHine ARMLine Module Level Commands ASSign MACHine AUTorange SPA BASE SYMBol BRANch STRigger, TTRigger BUCKet SPA CENter SCHart, SWAVeform , TWAVefor m CLEar COMPare, STRigger, TTRigger CLOCk SFORmat CLRPattern SLISt, SWAVeform, TLISt, TWAVeform CLRStat SWAVeform, TWAVeform CMASk COMPare COLumn SLISt, TLISt COPY COMPare DATA COMPare, SLISt, TLISt DBLock Module Level Commands DELay SWAVeform, TWAVeform, WLISt EDGE TTRigger FIND COMPare, STRigger, TTRigger HAXis SCHart HIGH SPA HISTatistic SPA HISTogram SPA INSert SWAVeform, TWAVeform, WLISt LABel SFORmat, SPA, TFORmat LEVelarm MACHine LINE COMPare, SLISt, TLISt, WLISt LOW SPA MASTer SFORmat MENU COMPare MINus TWAVeform, WLISt MLENgth SPA, STRigger, SWAVeform , TTRigger,
TWAVeform MMODe SLISt, TLISt, TWAVeform MODE SPA
Command Where Used
MOPQual SFORmat MQUal SFORmat NAME MACHine OCONdition TLISt, TWAVeform OMARker SPA OPATtern SLISt, TLISt, TWAVeform OSEarch SLISt, TLISt, TWAVeform OSTate SLISt, TLISt, WLISt OTAG SLISt, TLISt OTHer SPA OTIMe TWAVeform, WLISt OVERlay SLISt, TWAVeform, WLISt OVERView SPA OVSTatistic SPA PATTern SYMBol PLUS TWAVeform, WLISt QUALifier SPA RANGe COMPare, SPA, STRigger, SWAVeform,
SYMBol, TFORmat, TWAVeform, WLISt
REMove SFORmat, SLISt, SWAVeform, SYMBol,
TFORmat, TLI St, TWAVeform, WLISt REName MACHine RESource MACHine RUNTil COMPare, SLISt, TLISt, TWAVeform SEQuence STRigger, TTRigger SET COMPare SETHold SFORmat SLAVe SFORmat SOPQual SFORmat SPERiod TFORmat, TWAVeform SETHold SFORmat SLAVe SFORmat SOPQual SFORmat SPERiod TFORmat, TWAVeform SQUal SFORmat STORe STRigger TAG STRigger TAKenbranch STRigger, SWAVeform
TAVerage SLISt, TLISt, TWAVeform
1–10
Table 1-1, continued
Alphabetical Command-to-Subsystem Directory, continued
Programming the HP 16554A/ HP 16555A/HP 16555D
Command Set Organization
Command Where Used
TCONtrol STRigger, TTRigger TERM STRigger, TTRigger THReshold SFORmat, TFORmat TIMER STRigger, TTRigger TINTerval SPA TMAXimum SLISt, TLISt, TWAVeform TMINimum SLISt, TLISt, TWAVeform TPOSition STRigger, SWAVeform, TTRigger,
TWAVeform TSTatistic SPA TTYPe SPA TYPE MACHine
Command Where Used
VAXis SCHart VRUNs SLISt, TLISt, TWAVeform WIDTh SYMBol XCONdition TLISt, TWAVeform XMARker SPA XOTag SLISt, TLISt XOTime SLISt, TLISt, TWAVeform, WLISt XPATtern SLISt, TLISt, TWAVeform XSEarch SLISt, TLISt, TWAVeform XSTate SLISt, TLISt, WLISt XTAG SLISt, TLISt XTIMe TWAVeform, WLISt
1–11
Figure 1-2
Programming the HP 16554A/ HP 16555A/HP 16555D

Module S tatus Reporting

Module Status Reporting
Each module reports its status to the Module Event Status Register (MESR<N>), which in turn reports to the Combined Event Status Register (CESR) in the HP 16500/16501A mainframe (see HP 16500/16501A Programmer’s Guide chapter 6). The Module Event Status Register is enabled by the Module Event Status Enable Register (MESE<N>).
The MESE<N> and MESR<N> instructions are not used in conjunction with the SELect command, so they are not listed in the HP 16554A/HP 16555A/ HP 16555D’s command tree.
The following descriptions of the MESE<N> and MESR<N> instructions provide the module specific information needed to enable and interpret the contents of the registers.
Module Status Reporting
1–12
Loading...
+ 302 hidden pages