Tektronix Keithley DTx-EZ Getting Started Manual User manual

DTx-EZ
Getting Started Manual
DTXEZ-903-01 Rev. A / January 2005
www.keithley.com
A GR
EATER MEASURE OF CONFIDENCE
WARRANTY
Keithley Instruments, Inc. warrants this product to be free from defects in material and workmanship for a period of 3 years from date of shipment.
Keithley Instruments, Inc. warrants the following items for 90 days from the date of shipment: probes, cables, rechargeable batteries, diskettes, and documentation.
During the warranty period, we will, at our option, either repair or replace any product that proves to be defective.
To exercise this warranty, write or call your local Keithley representative, or contact Keithley headquarters in Cleveland, Ohio. You will be given prompt assistance and return instructions. Send the product, transportation prepaid, to the indicated service facil­ity. Repairs will be made and the product returned, transportation prepaid. Repaired or replaced products are warranted for the bal­ance of the original warranty period, or at least 90 days.
LIMITATION OF WARRANTY
This warranty does not apply to defects resulting from product modification without Keithley’s express written consent, or misuse of any product or part. This warranty also does not apply to fuses, software, non-rechargeable batteries, damage from battery leak­age, or problems arising from normal wear or failure to follow instructions.
THIS WARRANTY IS IN LIEU OF ALL OTHER WARRANTIES, EXPRESSED OR IMPLIED, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE. THE REMEDIES PROVIDED HEREIN ARE BUYER’S SOLE AND EXCLUSIVE REMEDIES.
NEITHER KEITHLEY INSTRUMENTS, INC. NOR ANY OF ITS EMPLOYEES SHALL BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF ITS INSTRU­MENTS AND SOFTWARE EVEN IF KEITHLEY INSTRUMENTS, INC., HAS BEEN ADVISED IN ADVANCE OF THE POSSIBILITY OF SUCH DAMAGES. SUCH EXCLUDED DAMAGES SHALL INCLUDE, BUT ARE NOT LIMITED TO: COSTS OF REMOVAL AND INSTALLATION, LOSSES SUSTAINED AS THE RESULT OF INJURY TO ANY PERSON, OR DAMAGE TO PROPERTY.
A G R E A T E R M E A S U R E O F C O N F I D E N C E
Keithley Instruments, Inc.
Corporate Headquarters • 28775 Aurora Road • Cleveland, Ohio 44139
440-248-0400 • Fax: 440-248-6168 • 1-888-KEITHLEY (534-8453) • www.keithley.com
12/04
DTx-EZ
Getting Started Manual
©2005, Keithley Instruments, Inc.
All rights reserved.
First Printing, January 2005
Cleveland, Ohio, U.S.A.
Document Number: DTXEZ-903-01
Rev. A

Manual Print History

The print history shown below lists the printing dates of all Revisions and Addenda created for this manual. The Revi­sion Level letter increases alphabetically as the manual undergoes subsequent updates. Addenda, which are released between Revisions, contain important change information that the user should incorporate immediately into the manual. Addenda are numbered sequentially. When a new Revision is created, all Addenda associated with the previous Revision of the manual are incorporated into the new Revision of the manual. Each new Revision includes a revised copy of this print history page.
Revision A (Document Number DTXEZ-903-01A) ........................................................................... January 2005
All Keithley product names are trademarks or registered trademarks of Keithley Instruments, Inc. Other brand and product names are trademarks or registered trademarks of their respective holders.
Safety Precautions
The following safety precautions should be observed before using this product and any associated instrumentation. Although some in­struments and accessories would normally be used with non-haz­ardous voltages, there are situations where hazardous conditions may be present.
This product is intended for use by qualified personnel who recog­nize shock hazards and are familiar with the safety precautions re­quired to avoid possible injury. Read and follow all installation, operation, and maintenance information carefully before using the product. Refer to the manual for complete product specifications.
If the product is used in a manner not specified, the protection pro­vided by the product may be impaired.
The types of product users are:
Responsible body is the individual or group responsible for the use and maintenance of equipment, for ensuring that the equipment is operated within its specifications and operating limits, and for en­suring that operators are adequately trained.
Operators use the product for its intended function. They must be trained in electrical safety procedures and proper use of the instru­ment. They must be protected from electric shock and contact with hazardous live circuits.
Maintenance personnel perform routine procedures on the prod­uct to keep it operating properly, for example, setting the line volt­age or replacing consumable materials. Maintenance procedures are described in the manual. The procedures explicitly state if the operator may perform them. Otherwise, they should be performed only by service personnel.
Service personnel are trained to work on live circuits, and perform safe installations and repairs of products. Only properly trained ser­vice personnel may perform installation and service procedures.
Keithley products are designed for use with electrical signals that are rated Measurement Category I and Measurement Category II, as described in the International Electrotechnical Commission (IEC) Standard IEC 60664. Most measurement, control, and data I/O sig­nals are Measurement Category I and must not be directly connect­ed to mains voltage or to voltage sources with high transient over­voltages. Measurement Category II connections require protection for high transient over-voltages often associated with local AC mains connections. Assume all measurement, control, and data I/O connections are for connection to Category I sources unless other­wise marked or described in the Manual.
Exercise extreme caution when a shock hazard is present. Lethal voltage may be present on cable connector jacks or test fixtures. The American National Standards Institute (ANSI) states that a shock hazard exists when voltage levels greater than 30V RMS,
42.4V peak, or 60VDC are present. A good safety practice is to ex-
pect that hazardous voltage is present in any unknown circuit before measuring.
Operators of this product must be protected from electric shock at all times. The responsible body must ensure that operators are pre­vented access and/or insulated from every connection point. In some cases, connections must be exposed to potential human con­tact. Product operators in these circumstances must be trained to protect themselves from the risk of electric shock. If the circuit is capable of operating at or above 1000 volts, no conductive part of
the circuit may be exposed.
Do not connect switching cards directly to unlimited power circuits. They are intended to be used with impedance limited sources. NEVER connect switching cards directly to AC mains. When con­necting sources to switching cards, install protective devices to limit fault current and voltage to the card.
Before operating an instrument, make sure the line cord is connect­ed to a properly grounded power receptacle. Inspect the connecting cables, test leads, and jumpers for possible wear, cracks, or breaks before each use.
When installing equipment where access to the main power cord is restricted, such as rack mounting, a separate main input power dis­connect device must be provided, in close proximity to the equip­ment and within easy reach of the operator.
For maximum safety, do not touch the product, test cables, or any other instruments while power is applied to the circuit under test. ALWAYS remove power from the entire test system and discharge any capacitors before: connecting or disconnecting cables or jump­ers, installing or removing switching cards, or making internal changes, such as installing or removing jumpers.
Do not touch any object that could provide a current path to the com­mon side of the circuit under test or power line (earth) ground. Always make measurements with dry hands while standing on a dry, insulated surface capable of withstanding the voltage being measured.
The instrument and accessories must be used in accordance with its specifications and operating instructions or the safety of the equip­ment may be impaired.
Do not exceed the maximum signal levels of the instruments and ac­cessories, as defined in the specifications and operating informa­tion, and as shown on the instrument or test fixture panels, or switching card.
When fuses are used in a product, replace with same type and rating for continued protection against fire hazard.
Chassis connections must only be used as shield connections for measuring circuits, NOT as safety earth ground connections.
If you are using a test fixture, keep the lid closed while power is ap­plied to the device under test. Safe operation requires the use of a lid interlock.
5/03
If a screw is present, connect it to safety earth ground using the wire recommended in the user documentation.
!
The symbol on an instrument indicates that the user should re­fer to the operating instructions located in the manual.
The symbol on an instrument shows that it can source or mea­sure 1000 volts or more, including the combined effect of normal and common mode voltages. Use standard safety precautions to avoid personal contact with these voltages.
The symbol indicates a connection terminal to the equipment frame.
The WARNING heading in a manual explains dangers that might result in personal injury or death. Always read the associated infor­mation very carefully before performing the indicated procedure.
The CAUTION heading in a manual explains hazards that could damage the instrument. Such damage may invalidate the warranty.
Instrumentation and accessories shall not be connected to humans.
Before performing any maintenance, disconnect the line cord and all test cables.
To maintain protection from electric shock and fire, replacement components in mains circuits, including the power transformer, test leads, and input jacks, must be purchased from Keithley Instru­ments. Standard fuses, with applicable national safety approvals, may be used if the rating and type are the same. Other components that are not safety related may be purchased from other suppliers as long as they are equivalent to the original component. (Note that se­lected parts should be purchased only through Keithley Instruments to maintain accuracy and functionality of the product.) If you are unsure about the applicability of a replacement component, call a Keithley Instruments office for information.
To clean an instrument, use a damp cloth or mild, water based cleaner. Clean the exterior of the instrument only. Do not apply cleaner directly to the instrument or allow liquids to enter or spill on the instrument. Products that consist of a circuit board with no case or chassis (e.g., data acquisition board for installation into a com­puter) should never require cleaning if handled according to instruc­tions. If the board becomes contaminated and operation is affected, the board should be returned to the factory for proper cleaning/ser­vicing.

Table of Contents

About this Manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii
Intended Audience. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii
What You Should Learn from this Manual. . . . . . . . . . . . . . . . . xiii
Organization of this Manual. . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiv
Conventions Used in this Manual . . . . . . . . . . . . . . . . . . . . . . . . xiv
Related Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv
Where to Get Help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvi
Chapter 1: Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
What is DTx-EZ?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Conforms to the DT-Open Layers Standard . . . . . . . . . . . . . . 2
Provides Custom Controls. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
The Data Acquisition Custom Control . . . . . . . . . . . . . . 3
The DT Plot Custom Control . . . . . . . . . . . . . . . . . . . . . . . 3
Provides Properties, Methods, and Events . . . . . . . . . . . . . . . 4
Provides Function and Subroutine Libraries . . . . . . . . . . . . . 5
Follows Object-Oriented Design. . . . . . . . . . . . . . . . . . . . . . . . 6
Provides Extensive Example Programs . . . . . . . . . . . . . . . . . . 6
Provides Multiple Board Support. . . . . . . . . . . . . . . . . . . . . . . 6
Provides High Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
What You Need. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Installation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Adding DTx-EZ Custom Controls to Your Project . . . . . . . . . . . 10
Adding to a Visual Basic 6.0 Project . . . . . . . . . . . . . . . . . . . . 10
Adding to a Visual C++ 6.0 Project. . . . . . . . . . . . . . . . . . . . . 11
Creating an Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Using the DTx-EZ Online Help . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
vii
Contents
Chapter 2: Using the DTx-EZ Examples . . . . . . . . . . . . . . . 15
About the Examples. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Running the Examples as Applications. . . . . . . . . . . . . . . . . 17
Opening the Examples from within Visual Basic. . . . . . . . . 18
Opening the Examples from within Visual C++ . . . . . . . . . 19
A/D Burst Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
DAC Waveform Generator Example. . . . . . . . . . . . . . . . . . . . . . . 25
Continuous A/D Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Single-Value Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
About-Trigger Example. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Digital I/O Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
DDE Server and Client Examples . . . . . . . . . . . . . . . . . . . . . . . . . 37
Waveform Generator Example. . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Continuous FFT Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
ChartIt Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Scope Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
viii
Chapter 3: Property, Method, Function, and Subroutine
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Data Acquisition Custom Control . . . . . . . . . . . . . . . . . . . . . . . . . 47
Information Properties and Methods. . . . . . . . . . . . . . . . . . . 47
Initialization Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Configuration Properties and Functions . . . . . . . . . . . . . . . . 58
Operation Properties, Methods, Functions, and
Subroutines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Data Management DLLs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Buffer Management Functions and Subroutines . . . . . . . . . 64
Conversion Functions and Subroutines. . . . . . . . . . . . . . . . . 67
DT Plot Custom Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Plot Appearance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Plot Pre-Display Operational Parameters . . . . . . . . . . . . . . . 70
Grids . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Markers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
x-Axis Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
y-Axis Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Plotting Operation Control Parameters. . . . . . . . . . . . . . . . . 73
Chapter 4: Programming Flowcharts. . . . . . . . . . . . . . . . . . 75
Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
Single-Value Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Continuous Buffered Input Operations . . . . . . . . . . . . . . . . . . . . 79
Continuous Buffered Output Operations. . . . . . . . . . . . . . . . . . . 81
Event Counting Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Frequency Measurement Operations . . . . . . . . . . . . . . . . . . . . . . 85
Pulse Output Operations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Plotting Control Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Chapter 5: Software Architecture. . . . . . . . . . . . . . . . . . . . . 91
Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
System Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Initializing and Specifying a Board . . . . . . . . . . . . . . . . . . . . 93
Specifying a Subsystem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Configuring a Subsystem. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Handling Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
Handling Errors. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
Halting the Operation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
Analog and Digital I/O Operations . . . . . . . . . . . . . . . . . . . . . . . 99
Data Encoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
Resolution. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
Channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
Specifying the Channel Type . . . . . . . . . . . . . . . . . . . . . 101
Contents
ix
Contents
Specifying a Single Channel . . . . . . . . . . . . . . . . . . . . . 102
Specifying One or More Channels . . . . . . . . . . . . . . . . 102
Specifying the Channel List Size . . . . . . . . . . . . . . 103
Specifying the Channels in the Channel List . . . . 104
Inhibiting Channels in the Channel List . . . . . . . . 105
Specifying Synchronous Digital I/O Values
in the Channel List . . . . . . . . . . . . . . . . . . . . . . . . . 106
Ranges. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
Gains . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
Specifying the Gain for a Single Channel . . . . . . . . . . 109
Specifying the Gain for One or More Channels . . . . . 109
Filters. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Data Flow Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Single-Value Operations . . . . . . . . . . . . . . . . . . . . . . . . . 112
Continuous Operations . . . . . . . . . . . . . . . . . . . . . . . . . 113
Continuous (Post-Trigger) Mode . . . . . . . . . . . . . . 114
Continuous Pre-Trigger Mode . . . . . . . . . . . . . . . . 115
Continuous About-Trigger Mode. . . . . . . . . . . . . . 116
Triggered Scan Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
Scan-Per-Trigger Mode . . . . . . . . . . . . . . . . . . . . . . . . . . 119
Internal Retrigger Mode . . . . . . . . . . . . . . . . . . . . . . . . . 120
Retrigger Extra Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
Clock Sources. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
Internal Clock Source . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
External Clock Source . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
Extra Clock Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
Trigger Sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
Software (Internal) Trigger Source . . . . . . . . . . . . . . . . 125
External Digital (TTL) Trigger Source . . . . . . . . . . . . . 125
External Analog Threshold (Positive) Trigger Source 126
x
External Analog Threshold (Negative) Trigger
Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
Analog Event Trigger Source . . . . . . . . . . . . . . . . . . . . . 127
Digital Event Trigger Source . . . . . . . . . . . . . . . . . . . . . 127
Timer Event Trigger Source . . . . . . . . . . . . . . . . . . . . . . 127
Extra Trigger Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
Buffers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
Ready Queue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
Done Queue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
Buffer and Queue Management . . . . . . . . . . . . . . . . . . 133
Buffer Wrap Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
DMA Resources. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
Counter/Timer Operations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
Counter/Timer Operation Mode . . . . . . . . . . . . . . . . . . . . . 138
Event Counting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
Frequency Measurement . . . . . . . . . . . . . . . . . . . . . . . . 140
Using the Windows Timer. . . . . . . . . . . . . . . . . . . . 140
Using a Pulse of a Known Duration . . . . . . . . . . . 142
Rate Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
One-Shot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
Repetitive One-Shot . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
C/T Clock Sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
Internal C/T Clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
External C/T Clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
Internally Cascaded Clock . . . . . . . . . . . . . . . . . . . . . . . 156
Extra C/T Clock Source . . . . . . . . . . . . . . . . . . . . . . . . . 157
Gate Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
Software Gate Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
High-Level Gate Type . . . . . . . . . . . . . . . . . . . . . . . . . . 158
Low-Level Gate Type . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
Contents
xi
Contents
Low-Edge Gate Type . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
High-Edge Gate Type . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Any Level Gate Type . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
High-Level, Debounced Gate Type . . . . . . . . . . . . . . . 160
Low-Level, Debounced Gate Type . . . . . . . . . . . . . . . . 160
High-Edge, Debounced Gate Type . . . . . . . . . . . . . . . . 160
Low-Edge, Debounced Gate Type . . . . . . . . . . . . . . . . 161
Level, Debounced Gate Type . . . . . . . . . . . . . . . . . . . . . 161
Pulse Output Types and Duty Cycles . . . . . . . . . . . . . . . . . 162
Simultaneous Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
Plot Control Operations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
Plotting Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
Data Identification Properties . . . . . . . . . . . . . . . . . . . . 166
Plotting Mechanics Properties . . . . . . . . . . . . . . . . . . . . 167
Appearance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
Stripchart Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
Specifying a Grid. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
Specifying Markers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
xii
Appendix A: Flowcharts for Substeps . . . . . . . . . . . . . . . 171
Chapter 6: Product Support . . . . . . . . . . . . . . . . . . . . . . . . 191
General Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
Service and Support. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
This manual describes how to get started using DTx-EZ™ to develop application programs for data acquisition boards that conform to the DT-Open Layers
TM

Intended Audience

This document is intended for engineers, scientists, technicians, or others responsible for developing application programs using the Microsoft Visual Basic™ or Visual C++™ compiler to perform data acquisition operations.
It is assumed that you are a proficient programmer, that you are experienced programming in the Windows® 98, Windows NT, Windows Me (Millennium Edition), or Windows 2000 operating environment on the IBM PC or compatible computer platform, that you have familiarity with data acquisition principles, and that you have clearly defined your requirements.

About this Manual

standard.

What You Should Learn from this Manual

This manual provides installation instructions, summarizes the functions provided by the DTx-EZ, and describes how to use the properties, methods, functions, and subroutines to develop a data acquisition program. Using this manual, you should be able to successfully install the DTx-EZ software and get started writing an application program for data acquisition.
This manual is intended to be used with the online help for the DTx-EZ, which you can find in the same program group as the DTx-EZ software. The online help for the DTx-EZ contains all of the specific reference information for each of the properties, methods, functions, subroutines, error codes, and Windows messages (events).
xiii
About this Manual

Organization of this Manual

This manual is organized as follows:
Chapter 1, “Overview,” provides an overview of DTx-EZ.
Chapter 2, “Using the DTx-EZ Examples,” describes how to use the example programs provided with DTx-EZ.
Chapter 3, “Property, Method, Function, and Subroutine
Summary,” summarizes the properties, methods, functions, and
subroutines provided with DTx-EZ.
Chapter 4, “Programming Flowcharts,” provides programming flowcharts for using the properties, methods, functions, and subroutines provided with DTx-EZ.
Chapter 5, “Software Architecture,” describes the architecture and concepts of DTx-EZ software.
Chapter 6, “Product Support,” describes how to get help if you have trouble using DTx-EZ.
Appendix A, “Flowcharts for Substeps,” provides additional flowcharts for performing substeps required for an operation.
xiv
• An index completes this document.

Conventions Used in this Manual

The following conventions are used in this manual:
• Notes provide useful information that requires special emphasis, cautions provide information to help you avoid losing data or damaging your equipment, and warnings provide information to help you avoid catastrophic damage to yourself or your equipment.
• Items that you select or type are shown in bold. Property, method, function, and subroutine names also appear in bold.
• Code fragments appear in courier font.
• In syntax, items inside square brackets are optional.
• In syntax, a vertical bar between braces indicates that you must choose between two or more items. You must choose an item unless all of the items are also enclosed in curly brackets. For example, { True | False } indicates that you must select one of these choices.
• When navigating the screens, an instruction such as Configure > Board means to select “Board” from the drop-down menu under “Configure.”

Related Information

Refer to the following documentation for more information on using DTx-EZ:
• DTx-EZ Online Help. This Windows help file is located in the same program group as the DTx-EZ software and contains all of the specific reference information for each of the properties, methods, subroutines, functions, error codes, and Windows messages (events) provided by DTx-EZ. Refer to page 13 for information on how to launch this help file.
About this Manual
• Device Driver documentation for your board. This documentation describes the capabilities supported by the device driver for your board. Refer to this documentation as you develop application programs using DTx-EZ.
• User manual for your data acquisition board. This manual describes the capabilities of the hardware as well as how to set up and install your board.
• For Visual Basic and Visual C++ programmers, see the online help in your programming environment.
• Windows programming documentation.
xv
About this Manual

Where to Get Help

Should you run into problems installing or using DTx-EZ, the Keithley Technical Support Department is available to provide technical assistance.
xvi
1

Overview

What is DTx-EZ?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
What You Need. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Installation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Adding DTx-EZ Custom Controls to Your Project . . . . . . . . . . . 10
Creating an Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Using the DTx-EZ Online Help . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1
Chapter 1

What is DTx-EZ?

DTx-EZ is a set of Object-Linking and Embedding (OLE) controls that facilitate rapid data acquisition application development in Visual Basic and Visual C++ environments.
DTx-EZ supplies the programming tools to transform Visual Basic and Visual C++ into a powerful data acquisition application development environment. With DTx-EZ, you can quickly develop applications with analog and digital I/O, real-time data display, and a graphical user interface (GUI), while operating in a true Windows environment.

Conforms to the DT-Open Layers Standard

DTx-EZ is fully compatible with DT-Open Layers.
DT-Open Layers is a set of open standards for developing integrated, modular software under Microsoft Windows. Because it is modular and uses Windows DLLs, DT-Open Layers is easily expanded to support new, more powerful hardware devices without re-linking or rebuilding applications. Therefore, you do not need to rewrite your code when adding new data acquisition boards that have DT-Open Layers-compliant device drivers. DT-Open Layers protects your software investment now and in the future.

Provides Custom Controls

The DTx-EZ provides two custom controls:
• Data Acquisition Custom Control, and
• Plotting Custom Control.
The following subsections describe these controls.
2
The Data Acquisition Custom Control
Overview
The Data Acquisition Custom Control facilitates performing data acquisition functions. Each copy of the Data Acquisition Custom Control operates on a single subsystem of the supported board at a time. However, Visual Basic and Visual C++ lets you use multiple copies of this control operating simultaneously, controlling different subsystems on the same board or even on different boards.
DTx-EZ determines the capabilities of each subsystem for your data acquisition board. The board’s supported capabilities are listed in the custom control’s Properties window. You can control the subsystem's operation by manipulating the subsystem's properties. You can change the properties at design time in the Properties window or at run time using simple Visual Basic or Visual C++ code.
Each subsystem may have multiple channels. For example, the A/D subsystem on the DataAcq-EZ boards has 16 available channels. To access multiple channels, you must set up a list of channels you want to sample. The DataAcq-EZ boards also provide programmable gains. To program the gains on the channels, you need to set up a gain list to accompany the channel list.
The DT Plot Custom Control
1
1
1
1
1
1
The DT Plot Custom Control is a high-speed plotting control, useful for plotting fixed- or floating-point data in your Visual Basic or Visual C++ application. Since the DT Plot Custom Control works directly with DT-Open Layers hBuf data, the need to copy the buffer to an array is eliminated.
1
1
1
3
Chapter 1
You fill a buffer with data you want to plot and assign it to the plot’s Buffer property. You can plot from 1 to 16 channels of data at a time, all with different colors. You may also choose from a variety of line styles and the following features:
• x and y grid lines that you can set to automatically scale to your data or to remain at fixed spacing intervals.
• x and y markers that can be used to indicate a zoom-in section of the data or to determine the data value at that position.
• A stripchart mode so you can plot many buffers of rapidly-changing, continuous data and see all of them on the plot’s display.
• A single-point feature when in strip charting mode that allows you to add one point of data at a time to the display.
At design time, the DT Plot Custom Control displays a randomly-generated data plot that shows you what your plots will look like. Whenever you change a property, the plot immediately displays the effects of your changes. For some properties, you can enter new data for the plot at either design time or run time.

Provides Properties, Methods, and Events

The Data Acquisition and DT Plot Custom Controls have unique properties, methods, and events, described as follows:
Properties represent the variables that allow you to configure the data acquisition or plotting operation. Many read/write properties are accessible in the Properties window at design time or at runtime. Some read/write properties are lists that may be accessed through the control’s custom property pages. Other properties are read-only; you can access them only at runtime. These read-only properties represent variables that you can use to determine data acquisition or plotting capabilities.
4
Overview
Note: Each Data Acquisition Custom Control can be associated with a single subsystem at a time. This means that you must first
select the board and subsystem you want to use before you can configure the subsystem's properties. When a custom control is created, its
properties are set to the default settings. You must modify the properties if you want to change their values from the default settings.
Methods are tools that are used in the Visual Basic or Visual C++ code to provide runtime control of data acquisition operations; no methods are associated with the DT Plot Custom Control.
Events have procedures that execute code when the specified data acquisition event occurs during runtime in the case of the Data Acquisition Custom Control or when the specified mouse or keyboard event occurs during runtime in the case of the DT Plot Custom Control. Most OLE custom control events are based on user interactions.
Note, however, that the Data Acquisition Custom Control events are based on specific data acquisition events that could occur within your application. Most of the Data Acquisition Custom Control events are used for either continuous acquisition operation or for error tracking.
1
1
1
1
1
1
All of the DT Plot Custom Control events are standard Microsoft events. Refer to your Visual Basic or Visual C++ online help for more information about them.

Provides Function and Subroutine Libraries

In addition to custom controls, DTx-EZ provides a library of DT-Open Layers functions and subroutines for Visual Basic and for Visual C++. These libraries add facilities for managing buffers, simultaneously starting multiple subsystems, and performing FFT analysis.
1
1
1
5
Chapter 1

Follows Object-Oriented Design

For easy programming, DTx-EZ’s Application Programming Interface (API) emphasizes polymorphism — it uses nearly identical interface functions to communicate with each type of data acquisition subsystem: analog input (A/D), analog output (D/A), digital input (DIN), digital output (DOUT), and counter/timer (C/T).
The features provided by each supported data acquisition board vary; for a complete list of capabilities supported by your board, refer to board's driver documentation.
The API provides a full set of functions to query and set all possible device capabilities. The library hides device details and presents a consistent interface to each subsystem.

Provides Extensive Example Programs

To get your application up and running quickly, a comprehensive set of Visual Basic and Visual C++ example programs is provided. You can use these examples as tutorials to learn how DTx-EZ operates, or you can modify one or more examples to form the basis of your own custom data acquisition application. Source code is included, so you can customize the examples to complete your Visual Basic or Visual C++ application.

Provides Multiple Board Support

The DTx-EZ is hardware-independent. You can add support for new boards without altering or recompiling code at the application level simply by adding a new DT-Open Layers device driver. You install the device driver separately (in the Windows environment); refer to your board and/or device driver documentation for more information on installing device drivers.
The library functions are designed to fully support all board features.
6

Provides High Performance

Overview
DTx-EZ was designed with an intimate knowledge of the Windows operating environment and the IBM PC computer system. As a result, it takes unique advantage of the Windows architecture to achieve maximum performance. By using sophisticated software buffering (part of the DT-Open Layers standard), and the PCI bus, USB bus, or DMA capabilities of the hardware, the software can achieve continuous throughput to or from memory at greater than 1 MHz.
1
1
1
1
1
1
1
1
1
7
Chapter 1

What You Need

To use DTx-EZ, you need the following:
• Pentium or higher-based PC with a CD-ROM drive and a minimum of 32 Mbytes of RAM;
• One or more supported data acquisition boards;
• Microsoft Windows 2000 or XP.
• Microsoft Visual C++ 6.0 or Microsoft Visual Basic 6.0.
8

Installation

DTx-EZ is installed automatically when you install the device driver for the module. Refer to the getting started manual for your module for more information.
Overview
1
1
1
1
1
1
1
1
1
9
Chapter 1

Adding DTx-EZ Custom Controls to Your Project

The following subsections describe how to add DTx-EZ Custom Controls to:
• A Visual Basic 6.0 project (this page),
• A Visual C++ 6.0 project (page 11).

Adding to a Visual Basic 6.0 Project

Before you begin using the DT-EZ, add the DTx-EZ Data Acquisition and DT Plotting Custom Controls and definition files. Add the files DTACQ32.OCX, DTPLOT32.OCX, OLMEMDEFS.BAS, OLDADEFS.BAS and OLDSPDEFS.BAS to your project file as follows from Visual Basic 6.0:
1. Select Project > Components.
The Components dialog box appears.
2. Click the Controls tab.
10
3. Click DTAcq32 OLE Custom Control module and/or DTPlot32 OLE Custom Control module, then click OK.
4. Choose Project > Add Module.
The Add Module dialog box appears.
5. Select the Existing tab.
6. Select OLMEMDEFS.BAS, OLDEFS.BAS, and/or OLDSPDEFS.BAS from the \DTx-EZ\INCLUDE directory, and
click Open.
When the DTx-EZ custom controls are loaded, the DTACQ32 and DTPLOT32 icons appear in the Toolbox as follows:

Adding to a Visual C++ 6.0 Project

Overview
1
1
Before you begin using the DT-EZ, add the DTx-EZ Data Acquisition and DT Plotting Custom Controls.
1. Start Windows 95 and launch Microsoft Visual C++ 6.0.
2. Create a new MFC project using the application wizard.
Ensure you add support for ActiveX controls in Step 2.
3. Select Project > Add to Project > Components and Controls.
The “Component and Controls Gallery” appears.
4. Double-click the Registered ActiveX Controls folder.
5. Select the DTPlot32 Control and click Insert.
The program prompts you to insert the component and to confirm the creation of a wrapper class for accessing the control through Visual C++.
6. Repeat step 5 for the DTAcq32 Control.
1
1
1
1
1
1
1
11
Chapter 1

Creating an Application

You can use the Data Acquisition Custom Control and DT Plot Custom Control just like other ActiveX or OLE custom controls to integrate data acquisition into your Windows application. Create your application as follows:
1. Add the Data Acquisition or DT Plot Custom Control to your form by selecting it from the toolbox and placing it on your form.
For information on adding a DTx-EZ Custom Control to a project, see
page 10. Once added to your project, you can select the DTx-EZ
Custom Control from the toolbox.
2. Configure your control object for the desired function by setting values in the Properties window.
Refer to Chapter 5, “Software Architecture,” for more information. Context-sensitive online help is available for the DTx-EZ Custom Controls as well. To access online help, simply press F1, and information related to the current operation appears on the screen.
3. Add code, as needed, using the Code window to
Respond to user actions,
12
Change the properties at run time, or
Control data acquisition operations.
Refer to Chapter 2, “Using the DTx-EZ Examples,” for more information.
4. When you are ready to run your application outside your development environment, create an executable file (.EXE) by choosing Make EXE file from the File menu.
Note: When you create and distribute applications that use the Data Acquisition Custom Control and DT Plot Custom Control, review the licensing material included in the DTx-EZ online help.
Using the DTx-EZ Online Help
This manual is intended to be used with the online help for DTx-EZ. The online help contains all of the specific reference information for each of the functions, error codes, and Windows messages not included in this manual.
To launch this online help, double-click the DTx-EZ help icon in the KUSB Series program group or folder.
Overview
1
1
1
1
1
1
1
1
1
13
Chapter 1
14
Loading...
+ 199 hidden pages