Tektronix Using Keithley DriverLINX with DAS-1800 Series (500KB) User manual

Keithley DAS-1800 Series
Using DriverLINX with Your
Hardware
Information in this document is subject to change without notice. The software described is this document is furnished under a license agreement. The software may be used or copied only in accordance with the terms of the agreement.
SCIENTIFIC SOFTWARE TOOLS, INC. SHALL NOT BE LIABLE FOR ANY SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES RELATED TO THE USE OF THIS PRODUCT. THIS PRODUCT IS NOT DESIGNED WITH COMPONENTS OF A LEVEL OF RELIABILITY SUITABLE FOR USE IN LIFE SUPPORT OR CRITICAL APPLICATIONS.
This document may not, in whole or in part, be copied, photocopied, reproduced, translated or reduced to any electronic medium or machine readable form without prior written consent from Scientific Software Tools, Inc.
Keithley DAS-1800 Series: Using DriverLINX with Your Hardware Copyright  1999 by Scientific Software Tools, Inc. All rights reserved.
First Printing. SST 20-0599-2
DriverLINX, SSTNET, and LabOBJX are registered trademarks and DriverLINX/VB is a trademark of Scientific Software Tools, Inc. MetraByte is a trademark of Keithley Instruments, Inc. Microsoft and Windows are registered trademarks and Visual C++ and Visual Basic are trademarks of Microsoft Corporation. Borland is a registered trademark and Borland C++ and Delphi are trademarks of Borland International, Inc. All other brand and product names are trademarks or registered trademarks of their respective companies.

Contents

Preface 5
Software License and Software Disclaimer of Warranty............................................................5
About DriverLINX.....................................................................................................................7
About This User’s Guide...........................................................................................................7
Conventions Used in This Manual.............................................................................................9
Configuring the DAS-1800 Series 11
Introduction..............................................................................................................................11
Configure DriverLINX Device Dialog.....................................................................................11
Using the DAS-1800 Series with DriverLINX 27
Introduction..............................................................................................................................27
DriverLINX Hardware Model for DAS-1800 Series...............................................................27
Connecting Signals to the DAS-1800 Series............................................................................33
Device Subsystem....................................................................................................................37
Analog Input Subsystem ..........................................................................................................38
Device Subsystem Page.............................................................................................13
Analog Input Subsystem Page ...................................................................................19
Analog Output Subsystem Page.................................................................................20
Digital Input Subsystem Page....................................................................................22
Digital Output Subsystem Page .................................................................................24
Counter/Timer Subsystem Page.................................................................................26
DriverLINX Subsystems............................................................................................27
DriverLINX Modes ...................................................................................................28
DriverLINX Operations and Events..........................................................................30
Logical Channels.......................................................................................................32
Buffers.......................................................................................................................32
Analog Input Subsystem Signals................................................................................33
Analog Output Subsystem Signals .............................................................................35
Digital Input Subsystem Signals................................................................................36
Digital Output Subsystem Signals..............................................................................36
Counter/Timer Subsystem Signals.............................................................................36
Device Modes............................................................................................................37
Device Operations .....................................................................................................37
Analog Input Modes..................................................................................................38
Analog Input Operations............................................................................................38
Analog Input Pacing, Triggering and Gating Options................................................38
Analog Input Timing Events......................................................................................40
Analog Input Start Events..........................................................................................49
Analog Input Stop Events..........................................................................................51
Analog Input Channels...............................................................................................53
Analog Input Expansion Channels.............................................................................58
Keithley DAS-1800 Series Contents • 3
Analog Input Buffers .................................................................................................60
Analog Input Data Coding.........................................................................................61
Analog Input Messages..............................................................................................63
Analog Output Subsystem........................................................................................................64
Analog Output Modes................................................................................................64
Analog Output Operations.........................................................................................64
Analog Output Pacing, Triggering and Gating Options.............................................64
Analog Output Timing Events...................................................................................66
Analog Output Start Events .......................................................................................72
Analog Output Stop Events........................................................................................76
Analog Output Channels............................................................................................77
Analog Output Channel Gains...................................................................................79
Analog Output Buffers...............................................................................................80
Analog Output Data Coding ......................................................................................81
Analog Output Messages...........................................................................................83
Digital Input Subsystem...........................................................................................................84
Digital Input Modes...................................................................................................84
Digital Input Operations............................................................................................84
Digital Input Pacing, Triggering and Gating Options................................................84
Digital Input Timing Events ......................................................................................85
Digital Input Start Events...........................................................................................87
Digital Input Stop Events...........................................................................................87
Digital Input Channels...............................................................................................88
Digital Input Buffers..................................................................................................90
Digital Input Messages..............................................................................................91
Digital Output Subsystem ........................................................................................................93
Digital Output Modes................................................................................................93
Digital Output Operations..........................................................................................93
Digital Output Pacing, Triggering and Gating Options..............................................93
Digital Output Timing Events....................................................................................94
Digital Output Start Events........................................................................................97
Digital Output Stop Events........................................................................................97
Digital Output Channels............................................................................................. 97
Digital Output Buffers.............................................................................................100
Digital Output Messages..........................................................................................101
Counter/Timer Subsystem......................................................................................................102
Uninstalling DriverLINX 105
How do I uninstall DriverLINX? ...........................................................................................105
Troubleshooting 107
Solving Problems...................................................................................................................107
Solving Problems Installing Drivers........................................................................107
Solving Problems Configuring the Drivers..............................................................107
Solving Problems Loading Drivers..........................................................................108
Generating a DriverLINX Configuration Report ................................................................... 111
What is in the Report? .............................................................................................111
How do I Generate the Report?...............................................................................111
Glossary of Terms 112
4 Contents Keithley DAS-1800 Series

Preface

Software License and Software Disclaimer of Warranty

This is a legal document which is an agreement between you, the Licensee, and S cientific Software Tools, Inc. By opening this sealed diskette pack age, Licensee agrees to become bound by t he terms of this Agreement , which include the Software License and Software Disclaimer of Warranty.
This Agreement constitutes the c omplete Agreement between Licensee and Scientific S oftware Tools, Inc. If Licensee does not agree to the terms of this Agreement, do not open the diskette pack age. Promptly return t he unopened diskette pac kage and the other items (including writt en materials, binders or ot her containers, and hardware, if any ) that are part of this product to Sc ientific Software Tools, Inc. for a full refund. No ref unds will be given for products that have opened disk packages or missing components.
Licensing Agreement
Copyright. The software and documentation is owned by Scientific Software Tools, Inc . and is protected by both United States
copyright laws and internati onal treaty provisions. Scientif ic Software Tools, Inc. authorizes the original purchaser only (Licensee) to either (a) make one copy of the s oftware solely f or backup or archival purpos es, or (b) transfer t he software to a single hard disk only. The written materials acc om panying the software may not be duplicated or copied for any reason.
Trade Secret. Licensee understands and agrees that t he software is the proprietary and conf idential property of Scienti fic Soft ware Tools, Inc. and a valuable trade secret. Licensee agrees t o use the soft ware only for the int ended use under this Lic ense, and shall not disclose the soft ware or i t s contents to any third part y.
Copy Restrictions. The Licensee may not modify or translate the program or relat ed documentation without the prior written consent of Scientific Software Tools, Inc. All modifications, adaptat ions, and merged porti ons of the sof tware consti tute the s oftware
licensed to the Licensee, and the terms and condit ions of this agreem ent apply to sam e. Licensee may not distribute c opies, inc luding electronic transfer of copies, of the m odified, adapt ed or merged sof tware or accom panying writt en material s to others . Licens ee agrees not to reverse engineer, decompil e or di sassemble any part of the s of tware.
Unauthorized copying of the s oftware, incl uding software that has been modified, merged, or included wit h other software, or of the written materials is expressly forbidden. Licensee may not rent, trans fer or lease the software to any t hird parties. Licensee agrees to
take all reasonable steps to protect Scientific Software Tools’ software from theft, disclosure or use contrary to the terms of the Licens e.
License. Scientific Software Tools, Inc. grants the Licensee only a non-exclus ive right t o use the serializ ed copy of t he software on a single terminal connected t o a single computer. The Licensee may not net work the software or use it on more than one com puter or computer terminal at the s ame time.
Term. This License is eff ective until terminated. This License will terminate automatically without not ice from Scientific Software Tools, Inc. if Lic ensee f ails to c ompl y wit h any t erm or c onditi on of thi s Lic ense. The Lic ens ee agrees upon s uch t erminat ion to ret urn or destroy the written materials and all copies of the sof tware. The Licensee may t erminate the agreement by returning or des troying the program and documentation and all copies thereof.
Keithley DAS-1800 Series Preface • 5
Limited Warranty
Scientific Software Tools, Inc. warrants that the s oftware will perform subst antially in accordance wit h the written materials and t hat the program disk, instruc tional manuals and ref erence materials are free f rom defects in materials and workmanship under normal use for 90 days from the date of receipt. All express or im pl i ed warranties of the software and related materials are limited to 90 days.
Except as specifical ly set forth herein, the sof tware and accom panying writ ten material s (incl uding inst ructions for use) are prov ided
“as is” without warranty of any kind. Further, Sci entific Software Tools , Inc. does not warrant, guarantee, or make any represe ntations regarding the use, or the results of the use, of the soft ware or writt en mat erials in t erms of correc tnes s , ac curac y, reliabi lit y, current ness , or otherwise. The entire risk as to the results and performance of the soft ware is assumed by Licens ee and not by Scientifi c Software Tools, Inc. or its distributors, agents or employees.
EXCEPT AS SET FORTH HEREIN, THE RE ARE NO OTHER WARRANT IE S, EI THER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, WITH RESPECT TO THE SOFTWARE, THE ACCOMPANYING WRITTEN MATERIALS, AND ANY ACCOMP ANYING HARDWARE.
Remedy. Scientific Soft ware Tools’ ent ire liability and t he Licens ee’s ex clus ive remedy s hall be, at Sc ientific S oftware Tools’ opt ion,
either (a) return of the price paid or (b) repair or replacement of the software or accompanying materials . In the event of a defect in material or workmanship, t he item may be returned within the warranty period to S cientific Software Tools f or a replacement without charge, provided the licensee prev iously sent in the limited warranty registration board to Sc ientific S oftware Tools, Inc ., or can furnish proof of the purchase of the program. This remedy is void if failure has resulted from accident, abuse, or misapplication. Any replacement will be warranted for the remainder of the original warranty period.
NEITHER SCIENTIFIC SOFTWARE TOOLS, INC. NOR ANYONE ELSE WHO HAS BEEN INVOLVED IN THE CREATION, PRODUCTION, SALE OR DELIV ERY OF THIS PRODUCT SHALL BE LIABLE FOR ANY DIRECT, INDIRECT, CONSEQUENTI AL, OR INCIDENTAL DAMAGES (INCLUDING DAMAGES FOR LOSS OF BUSINESS PROFITS, BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION AND THE LIKE) ARISING OUT OF THE USE OF OR THE INABILIT Y TO USE SUCH PRODUCT EVEN IF SCIENTIFIC SOFTWARE TOOLS HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. BECAUSE SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES, OR LIMITATIONS ON DURATION OF AN IMPLI ED WARRANTY, THE ABOVE LIMITATIONS MAY NOT APPLY TO LICENSEE.
This agreement is governed by the laws of the Commonwealth of Pennsylvania.
6 Preface Keithley DAS-1800 Series

About DriverLINX

Welcome to DriverLINX for Microsoft Windows, the high-performance real­time data-acquisition device drivers for Windows application development.
DriverLINX is a language- and hardware-indepe ndent applic ation programming
interface designed to support hardware manufacturers’ high-speed analog, digital, and counter/timer data-acquisition boards in Windows. DriverLINX is a multi-user and multitasking data-acquisition resource manager providing more than 100 services for foreground and background data acquisition tasks.
Included with your DriverLINX package are the following items:
The DriverLINX API DLLs and drivers supporting your data­acquisition hardware
Analog I/O Panel, a DriverLINX program that verifies the installation and configuration of DriverLINX for your analog input/output board and demonstrate s several virtual bench-top instruments
Source code for the sample programs
The DriverLINX Application Programming Interface files for your compiler
DriverLINX On-line Help System
DriverLINX 4.0 Installation and Configuration Guide
DriverLINX Analog I/O Programming Guide
DriverLINX Technical Reference Manual
Supplemental Documentation on DriverLINX and your data-acquisition hardware
About This User’s Guide
The purpose of this manual is to help you quickly learn how to configure and use t he
hardware features of Keithley’s DAS-1800 Series boards with DriverLINX.
For help instal l ing and configuring your ha rdware and DriverLINX,
please see the manual that accompanied your hardware and the DriverLINX 4.0 Installation and Configuration Guide for your version of Windows.
For more information on the DriverLINX API, please see the
DriverLINX Technical Reference Manual.
For additional help programming your board, please examine the source
code examples on the Distribution Disks.
This manual contains the following chapters:
Configuring the DAS-1800 Series
Shows how to configure the DAS-1800 Series using the Configure DriverLINX Device dialog box.
Using the DAS-1800 Series with DriverLINX
Keithley DAS-1800 Series Preface • 7
Shows how to set up DriverLINX with the Edit Service Request dialog box to use DAS-1800 Series hardware features.
Uninstalling DriverLINX
Describes how to remove DriverLINX hardware drivers and other files.
Troubleshooting
Gives troubleshooting tips for installing, configur ing, and loading D riverLINX drivers.
8 Preface Keithley DAS-1800 Series

Conventions Used in This Manual

The following notational conventions are used in this manual:
A round bullet (•) identifies itemized lists.
Numbered lists indicate a step-by-step procedure.
DriverLINX Application Programming Interface and Windows macro and function names are set in bold when mentioned in the text.
DriverLINX indicates the exported function name of the device driver
DLL while DriverLINX indicates the product as a whole.
DriverLINX Application Programming Interface identifiers, menu items, and Dialog Box names are italicized when mentioned in the text.
Italics are used for emphasis.
Source code and data structure examples are displayed in Courier typeface and bounded by a box with a single line.
Code
A box with a double line bound tables of information.
Tables
Concept
Important concepts and notes are printed in the left margin.
Keithley DAS-1800 Series Preface • 9

Configuring the DAS-1800 Series

Introduction

The installation program provides general instructions for installing and configuring DriverLINX. This manual explains the steps and special features that apply to
Keithley’s DAS-1800 Series boards. Installing and configuring DriverLINX for a Keithley DAS-1800 Series board
requires three steps:
1. Install DriverLINX. Follow the instructions given by the installation
program. The Read Me First instructions explain the components and drivers you can install.
2. Configure DriverLINX. This creates a Logical Device, which stores
configuration information for your board. See “Configure Dri verLINX Device Dialog” on page 11 for configuration options specific to a Keithley DAS-1800 Series model.
3. Install your DAS-1800 hardware. Follow the instructions in your
hardware manual.
After configuring DriverLINX, instal l ing your board and restarting Windows, reopen the DriverLINX Configuration Panel to make sure that DriverLINX loaded the Logical Device for your board. If the Logical Device is not loaded, the Event Log may have a message from the driver that explains why. You can check the Event Log using the DriverLINX Event Viewer on the Windows Start Menu.

Configure DriverLINX Device Dialog

DriverLINX uses a standardized configuration protocol for all data-acquisition hardware. Configuration assigns a port address, interrupt resources a nd a DriverLINX Logical Device number to a specific DAS-1800 Series board in your computer.
The installation program automatically starts the DriverLINX Configuration Panel. To start it now, use the shortcut on the Windows Start Menu.
Keithley DAS-1800 Series Configuring the DAS-1800 Series 11
When you click the Configure… button on the DriverLINX Configuration Panel, DriverLINX displays the Configure DriverLINX Device dialog. The dialog has a page for each subsystem on a Keithley DAS-1800 Series model. The following sections describe your choices in configuring DriverLINX to work with your board.
12 Configuring the DAS-1800 Series Keithley DAS-1800 Series

Device Subsystem Page

Use the Device subsystem page to tell DriverLINX the model name, address and, optionally, the expansion accessories connected to your DAS-1800 Series board.
Vendor
The Vendor property displays “Keithley MetraByte” It is a read-only property.
Device
Windows NT
The Device property designates the Logical Device you are configuring. It is a read­only property. To change it, first save (OK) or quit (Cancel) the current configuration. Then select or create a new Logical Device using the DriverLINX
Configuration Panel.
Model
The Model property selects or indicates the hardware model of the board you’re configuring.
Select one of the following models:
DAS-1801ST DAS-1802ST DAS-1802HR DAS-1801HC DAS-1802HC DAS-1801AO DAS-1802AO DAS-1801ST-DA DAS-1802ST-DA DAS-1802HR-DA
Keithley DAS-1800 Series Configuring the DAS-1800 Series 13
Windows 95/98
Under Windows 95/98, DriverLINX displays the model you chose during installation. To install a different model, cancel the configuration and run Add New Hardware from the Windows Control Panel.
Address
The Address property records the I/O port address for the board. The default address used by DriverLINX is 0x300 hexadecimal or 768 decimal.
The DAS-1800 has a 6-bit DIP switch that sets its base address. Each switch corresponds to a binary digit in the address. When a switch is up, or in the ON
position, its digit is 0. When it’s down, its digit is 1. The switches select the value of the 1
address are 0. That is, there are four zeros to the right of the bits represented by the switches.
For example, the following DIP switch shows the setting for 11 0000 0000 (0x300 hexadecimal or 768 decimal).
st
to the 6th digits. The 7th to the 10th digits of the
Windows NT
Windows 95/98
Enter your board’s base I/O address. Note: you need a block of sixteen free addresses. AO models use an additional block of ten addresses starting at base + 0x400.
Under Windows 95/98, Add New Hardware automatically selects an appropriate address. To change the setting, see “Using the Windo ws 95/98 Device Ma nager” on page 17.
Detect
The Detect property enables and disables DriverLINX’s hardware detection and testing algorithms. For maximum system reliability, always leave this check-box marked.
Calibrate
The Calibrate property enables and disables hardware auto-calibration. This option is grayed-out for the DAS-1800 Series because it does not support automatic calibration.
14 Configuring the DAS-1800 Series Keithley DAS-1800 Series
Special…
The Special… button displays the following dialog box of DAS-1800 Series-specific configuration options:
Common-mode reference
The DAS-1800 has two grounding options for single-ended analog inputs. They determine the ground reference for the ADC input amplifier.
LL GND — references the analog ground connection.
U_CM MD — re ferences the user-c ommon mode ground connection.
Use the U_CM MD setting to eliminate ground loops. See your DAS-1800 User’s
Guide for more details.
Number of EXP-1800s
You can expand the number of single-ended analog input channels connected to your DAS-1800 board by using one to sixteen EXP-1800 expansion boards. Each EXP­1800 is 1-to-16 multiplexer that replaces one onboard channel with sixteen expansion channels. Configure your DriverLINX Logical Device to use the additional channels
by entering the number of EXP-1800s here. See “Analog Input Expansion Channels” on page 58 for details on accessing multiplexer channels.
Simultaneous sample and hold configuration
You can provide for simultaneous analog input sampling using external Simultaneous Sample and Hold (SSH-8) units. A DAS-1800HC model can have up to eight SSH-8 units. Other models can have up to two SSH-8 units. In the Configure DAS-1800 Options dialog box, enter the number of SSH-8s connected.
Keithley DAS-1800 Series Configuring the DAS-1800 Series 15
For each SSH-8 unit, select its number in the SSH # list box and enter the following configuration parameters:
Base channel — Each SSH-8 replaces 8 DAS-1800 channels
determined by which accessory and SSH-8 connectors you use and the offset jumper settings on the SSH-8. You can connect two SSH-8 units to one accessory connector by daisy chaining them together using the connectors inside the units. See the SSH-8 User’s Guide for details.
Select the base channel corresponding to the connectors you are using for this SSH-8 unit:
Accessory Base Channel
Connector Directly
connected
SSH-8
STA-1800U
J3 0 0
STA-1800HC
J1 0 24 J2 8 32 J3 16 40 J4 24 48
Daisy-chain
connected
SSH-8
Channel offset — click on an SSH-8 channel in the list and then select
the channel offset that corresponds to the position of the Output Channel Jumper on the SSH-8. The list displays the number of the DAS-1800 channel that the SSH-8 channel replaces.
Usually, you would configure all channels on a directly connected SSH­8 to the lower offset channels (0-7) and all channels on a daisy-chain connected SSH-8 to the higher offset channels (8-15).
Channel gain — click on an SSH-8 channel in the list and then select its
SSH-8 external amplifier gain. SSH-8FG models have a fixed gain of
0.5. SSH-8SG models have switches to set the gain of each channel.
For information on programming a task for simultaneous sampling, see “Rate Generator: Internal Clocki ng” on page 41 o r “Rate Generator: External Clocking” on page 43.
Disable AO recycle mode
For the DAS-1800AO hardware, DriverLINX can automatically promote AO tasks meeting certain criteria to run from the DAC FIFO buffer in recycle mode. If the Disable AO recycle mode box is checked, DriverLINX will not use recycle mode. If the box is not checked, DriverLINX will use recycle mode for applicable tasks.
In recycle mode, DriverLINX automatically promotes AO tasks meeting the following criteria as specified in the Service Request to run from the DAC FIFO buffer in re -cycle mode:
16 Configuring the DAS-1800 Series Keithley DAS-1800 Series
Service Request Property Value
Request mode Interrupt Stop event type Command Buffer notify flag False Buffer samples × Number of buffers
The advantages of using the DAC FIFO buffer for free-run, re-cycle mode analog output are:
The DAS-1800AO’s digital trigger operates in retrigger mode, enabling
you to synchronize analog output with a recurring external signal.
Traffic on the memory bus is significantly reduced at high output rates.
The system response latency will be noticeably shortened.
The analog output timing will be immune to traffic on the memory and
I/O buses.
The disadvantages are:
You can’t change the analog output values while the analog output task
is running.
There is a delay while DriverLINX loads the FIFO.
< 2048
Buffer-filled notification messages cannot be posted, as the hardware
does not permit detection of end-of-buffer conditions.
The STATUS operation cannot provide the “number of buffers
processed” report.
Using the Windows 95/98 Device Manager
Under Windows 95/98, DriverLINX uses the address and interrupt settings maintained by the Windows Device Manager.
To view or change the settings for your board using the Devi ce Manager:
1. Start the Device Manger by right-clic king on My Computer and
selecting Properties or click here
2. Click the Device Manger tab.
3. Click the
list.
4. Under DriverLINX drivers, select the entry for your board. (It may or
may not have
next to , if necessary to expand the
next to it.)
.
Keithley DAS-1800 Series Configuring the DAS-1800 Series 17
5. Click the Properties button.
6. On the board’s property page, click the Resources tab.
7. To change the number and type of resources, select a different Basic
Configuration und er Setting based on.
8. To change a resource setting, select it under Resource Type and click
the Change Setting button. Windows will guide you in selecting an appropriate value.
9. When you are done, click OK to close the board’s property page.
10. The board’s a ddress switches must match the address setting you select.
If necessary shut down your computer and reposition them as described in your hardware manual.
11. Restart Windows to load the Logical Device for your board using the
new settings.
18 Configuring the DAS-1800 Series Keithley DAS-1800 Series

Analog Input Subsystem Page

Use the Analog Input subsystem page to choose between single-ended or differential
analog input connections and to set or view your board’s interrupt request level.
Channels
On the DAS-1800HC, Analog Input channel configuration is software programmable for 64 single-ended or 32 differential analog inputs. On all other DAS-1800 boards, Analog Input channel configuration is software programmable for 16 single-ended or 8 differential analog inputs.
Windows NT
Windows 95/98
When configuring the Analog Input Subsystem, you choose a default configuration for all channels. Applications can use the default configuration or specify the connection type for each channel it uses. This scheme supports applications that use KPCI-1800-specific features as well as those that use only generic features. For programming information, see “Analog Input Channels” on page 53.
Range
The analog input ranges for the DAS-1800 Series are fully software programmable. DriverLINX grays out this property in the configuration dialog.
Interrupt
Configure the board with an interrupt for full support of the board’s capabilities. For Windows NT, select a free interrupt request level to support interrupt or DMA
mode transfers. Valid IRQ settings are: 3, 5, 7, 10, 11, 15 and None.
Under Windows 95/98, Add New Hard ware automatically selects an appropriate interrupt. To change the sett ing, see “Using the Wind ows 95/98 Device Manager” on page 17.
DMA
Configure the board with a DMA channel for full support of the board’s capabilities. For Windows NT, select a free DMA channel to support DMA mode transfers. Valid
DMA settings are: 5, 6, 7 and None.
Keithley DAS-1800 Series Configuring the DAS-1800 Series 19
Under Windows 95/98, Add New Hard ware automatically selects an appropriate
DMA channel. To change the setting, se e “Using the Windows 95/98 Device Manager” on page 17.

Analog Output Subsystem Page

Note: The Configure DriverLINX Device dialog shows the Analog Output
Subsystem Page only for applicable models. Use the Analog Output subsystem page to set or view the subsystem’s DMA channel
and initial output voltages.
Windows NT
Channels
Lists the analog output channels on the board and selects a channel for the Volts and Initialize properties.
Range
The analog output ranges for the DAS-1800 Series are fully software programmable. DriverLINX grays out this property in the configuration dialog.
Volts
The Initialization Value property specifies the analog output value DriverLINX will write to the selected Logical Channel upon hardware initialization. DriverLINX only writes this value if you enable the Initialize check box.
Interrupt
The DAS-1800 Series uses the same interrupt for analog output as for analog input. Go to the Analog Input subsystem page to view or set it.
DMA
DMA applies only to the DAS-1801AO and DAS-1802AO models. Configure the board with a DMA channel for full support of the board’s capabilities.
For Windows NT, select a free DMA channel to support DMA mode transfers. Valid DMA settings are: 5, 6, 7 and None.
20 Configuring the DAS-1800 Series Keithley DAS-1800 Series
Windows 95/98
Under Windows 95/98, Add New Hard ware automatically selects an appropriate
DMA channel. To change the setting, se e “Using the Windows 95/98 Device Manager” on page 17.
Initialize
Checking the Initialize check box instructs DriverLINX to use the Volts property to initialize the selected analog output channel.
Keithley DAS-1800 Series Configuring the DAS-1800 Series 21
For the DAS-1800 Series, there are no configurable options on the Digital Input subsystem page.

Digital Input Subsystem Page

Channels
The Channels prop erty allows you to select a Logical Channel for configuration or
viewing the channel’s range. The DAS-1800 Series digital channels have fixed configurations.
DriverLINX defines the following Logical Channels for the DAS-1800 Series digital inputs:
Logical Channel
0 Standard Digital Input DI 0 … DI 3 1 External Clock XPCLK 2 External Trigge r TGIN
DriverLINX Function DAS-1800 Series
External Connector
Range
The Range property specifies the supported digital input range for the selected Logical Channel. This is a read-only property.
Interrupt
The DAS-1800 Series does not use interrupts for the digital input subsystem. DriverLINX disables this property and displays it as blank.
DMA
The DAS-1800 Series does not use system DMA channels. DriverLINX disables this property and displays it as blank.
22 Configuring the DAS-1800 Series Keithley DAS-1800 Series
Configuration Setup
The Configuration Setup property specifies the hardware configuration of the digital I/O ports. The DAS-1800 Series has a fixed digital I/O configuration. Therefore, DriverLINX disables this field.
Initialize
Checking the Initialize check box instructs DriverLINX to use the Configuration Setup property to configure the digital I/O ports. The DAS-1800 Series has a fixed
digital I/O configuration. Therefore, DriverLINX disables this field.
Keithley DAS-1800 Series Configuring the DAS-1800 Series 23

Digital Output Subsystem Page

Use the Digital Output subsystem page to change the default digital output port initialization values.
Channels
The Channels property allows you to select a Logical Channel for initialization or
viewing the channel’s range . DriverLINX defines the follo wing Logical Channels for the DAS-1800 Series digital outputs:
Logical Channel DriverLINX
Function
0 (HC models) Standard Digital Output DO 0 … DO 7 0 (except HC models) Standard Digital Output DO 0 … DO 3 1 (except HC models) Standard Digital Output MUX4 … MUX7, GEXT
The Analog Input subsystem uses the MUX outputs to control an EXP-1800 expansion accessory. If you are not using an EXP-1800, you can use the MUX outputs as anot her Digital Output channel. However, you can change its value onl y while the Analog Input subsystem is inactive.
DAS-1800 Series External Connector
Range
The Range property specifies the supported digital output range for the selected Logical Channel. This is a read-only property.
Interrupt
The DAS-1800 Series does not use interrupts for the digital output subsystem. DriverLINX disables this property and displays it as blank.
DMA
The DAS-1800 Series does not use system DMA channels for Digital Output. DriverLINX disables this property and displays it as blank.
24 Configuring the DAS-1800 Series Keithley DAS-1800 Series
Initialization Value
The Initialization Value property specifies the digital output value DriverLINX will write to the selected Logical Channel upon hardware initialization. DriverLINX only writes this value if you enable the Initialize check box.
By default, DriverLINX uses the hardware-defined initialization values if the Initialize check box is not checked. For the DAS-1800 Series, the default digital output value is zero.
Initialize
Checking the Initialize check box instructs DriverLINX to use the Initialization Value property for digital output port initialization.
Dec
This check box converts the Initialization Value property to decimal.
Hex
This check box converts the Initialization Value property to hexadecimal.
Keithley DAS-1800 Series Configuring the DAS-1800 Series 25
For the DAS-1800 Series, there are no configurable options on the Counter/Timer subsystem page.

Counter/Timer Subsystem Page

Resolution
The Resolution property specifies the clock frequency of the master oscillator. All models have a 5.0 MHz clock source for pacing analog input. AO models also use the 5.0 MHz clock source for pacing analog output.
Interrupt
The DAS-1800 Series does not support interrupts from counter/timers. DriverLINX disables this property and displays it as blank.
26 Configuring the DAS-1800 Series Keithley DAS-1800 Series

Using the DAS-1800 Series with DriverLINX

Introduction

See the Analog I /O Programming Guide for an
overview of DriverLINX programming.
This chapter shows you how to set up and use DAS-1800 Series hardware features with DriverLINX.
The descriptions here use the Edit Service Request dialog for language and API
independence. For the corr ect syntax with the language you’re using, p lease see the DriverLINX Technical Reference Manuals. For DriverLINX examples in your programming language, p lease see the sourc e code examples in the subdirectories of your DriverLINX installation directory or on the original distribution media.

DriverLINX Hardware Model for DAS-1800 Series

DriverLINX provides a portable, hardware-independent API for data-acquisition boards while still allowing applications to access unique or proprietary hardware features of specific products. To achieve this goal, DriverLINX maps a hardware­independent, or abstract, data-acquisition model onto DAS-1800 Series hardware capabilities.
The following sections describe how DriverLINX implements DAS-1800 Series hardware features as Subsystems, Modes, Operations, Events, Logical Channels, Buffers, and Messages.

DriverLINX Subsystems

The DAS-1800 Series supports the following DriverLINX subsystems:
1. Device—refers to a DAS-1800 board as a whole.
2. Analog Input—refers to the analog input channels, clocks, and control
signals.
3. Analog Output—refers to the analog output channels, clocks, and
control signals. DA, HC and AO models only.
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 27
4. Digital Input—refers to the digital input port as well as 1-bit digital
input (TTL) control signals, such as TGIN.
5. Digital Output—refers to the digital output port and control signals.
6. Counter/Timer—refers to the input/output subsystem-specific internal
clock channels for pacing analog input/output.

DriverLINX Modes

Applications use modes in Service Requests to advise DriverLINX on their preferred hardware data transfer technique. The DriverLINX modes fall into two general classes:
Foreground or synchronous modes. The calling application doesn’t
regain control until DriverLINX completes the Service Request. DriverLINX supports this mode for simple, single value I/O operations or software housekeeping functions that DriverLINX can complete without a significant delay.
Background or asynchronous modes. The calling application regains
control as soon as DriverLINX initiates the task. The calling application must synchronize with the data-acquisition task using status polling or DriverLINX’s messages (preferred). DriverLINX supports this mode for buffered data transfers or for commands that require a significant time to complete.
DriverLINX supports four modes with the DAS-1800 Series for its commands (Service Requests).
Polled Mode—T his is a foreground or synchronous operation.
DriverLINX supports this mode for simple, single-value I/O operations that the data-acquisition board can complete without significant delay.
Interrupt Mode—Thi s is a background or asynchronous operation.
DriverLINX transfers data between the computer’s memory and the data-acquisition board using hardware interrupts and programmed I/O transfers.
DMA Mode—This is a background or asynchronous operation.
DriverLINX programs the data-acquisition board to transfer data between the computer’s memory and the board.
Other Mode—This is a foreground or synchronous opera tion.
DriverLINX supports this mode for initialization, configuration, calibration, data conversion, and timebase operations.
28 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series
The following table summarizes the data acquisition modes that DriverLINX supports for each subsystem with the Keithley DAS-1800 Series.
Subsystem Polled Interrupt DMA Other
Analog Input Analog Ou tput
(DA and HC models)
Analog Ou tput (AO models)
Digital Input Digital Output Counter/Timer Device
√√√√ √√
√√√√
√√ √ √√
√ √
DAS-1800 Series Supported DriverLINX Modes.
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 29

DriverLINX Operations and Events

Applications construct DriverLINX data-acquisition tasks by combining a small number of DriverLINX operations and events in many possible ways. The following table summarizes the operations and events that DriverLINX supports for the Keithley DAS-1800 Series. Later sections for each DriverLINX subsystem will describe the operations and events in more detail.
Note: In addition to the operations shown in the table below, all subsystems allow the MESSAGE operation in any Mode.
30 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series
Subsystem Operation Events
Mode Timing Start Stop
Analog Input
Polled Start, Co nvert null null, cmd null, TC Interrupt Start, Stop,
Status, Convert
DMA Start, Stop,
Status, Convert
Other Initialize
Analog Output (DA, HC and AO models only)
Polled Start, Convert null null, cmd null, TC Interrupt (AO
models only)
Start, Stop, Status, Convert
DMA (AO models only)
Start, Stop, Status, Convert
Other Initialize
dig, rate cmd, dig cmd, TC, dig
dig, rate cmd, dig cmd, TC, dig
dig, rate cmd, dig cmd, TC
dig, rate cmd, dig cmd, TC
Digital Input
Polled Start null null, cmd null, TC Interrupt Start, Stop,
rate cmd cmd, TC
Status
Other Initialize
Digital Output
Polled Start null null, cmd null, TC Interrupt Start, Stop,
rate cmd cmd, TC
Interrupt
Other Initialize
Counter/Timer
Other Initialize
Device
Other Initialize,
Capabilities
Allowed Operations and Events for DAS-1800 Series Subsystems and Modes.
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 31
The following list explains the Event abbreviations in the preceding table:
null—Null or None Event when a Service Request doesn’t require an
event
cmd—Command Event when DriverLINX starts or stops a task on
software command
TC—Terminal Count Event when DriverLINX processes all data
buffers once
rate—Rate Event specifies how DriverLINX paces or clocks data
transfer
dig—Digital Event specifies a trigger, clock, or other control signal to
pace, start, or stop a task

Logical Channels

DriverLINX designates the individually addressable hardware channels for each subsystem as “Logical Channels.” Generally, the zero-based Logical Channel numbering sequence closely follows the hardware manufacturer’s cha nnel numbering scheme.
In some cases, however, DriverLINX assigns Logical Channel numbers to hardware features that users don’t commonly think of as “channels.” For instance, DriverLINX commonly models external hardware clock input lines, external hardware trigger input lines, and external interrupt inputs as 1-bit digital Logical Channels. In other cases, DriverLINX models subsystem-specific features, such as internal pacer clocks, as members of a more general-purpose set of counter/timer channels.
For a list of DriverLINX assigned Logical Channel numbers, see the notes on each supported subsystem.

Buffers

Applications usually use data buffers to exchange data between the application and the data-acquisition hardware. When using data buffers, please note the following points about DriverLINX’s data buffers:
DriverLINX supports data-acquisition tasks with 1 to 255 data buffers
per task.
DriverLINX i mposes no size limits o n a single buffer, alt hough the
operating system or some hardware products may have size restrictions.
User applications must allow DriverLINX to allocate all data buffers to
guarantee application portability to different hardware and operating systems and to insure that the hardware can physically access the buffer memory.
User applications usually don’t have concurrent or immediate access to
the in-use data buffer while DriverLINX is executing a data-acquisition task.
32 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series

Connecting Signals to the DAS-1800 Series

The Keithley hardware manual describes the data and control signals for the DAS­1800 Series and the connector pinouts for these signals. This section summarizes how DriverLINX numbers the I/O data signals and how DriverLINX uses the control connections for external clock, trigger, a nd gating inputs.

Analog Input Subsystem Signals

The Analog Input subsystem has 8 differential, 32 differential, 16 single-ended or 64 single-ended analog input connections, depending on the model and configuration of your DAS-1800 board.
DriverLINX maps these connections to Logical Channels as shown in the following table:
Physical Channels Connector Name Logical
0 – 7 Differential CH00LO, HI – CH07LO, HI 0 – 7
0 – 31 Differential CH00LO, HI – CH31LO, HI 0 – 31
0 – 15 Single-ended CH00LO – CH15LO, LLGND 0 – 15 0 – 15 Single-ended,
User-common mod e
0 – 63 Single-ended CH00LO – CH63LO, AGND 0 – 63
How DriverLINX maps analog input hardware channels to Logical Channels.
CH00LO – CH15LO, U_CM_MD 0 – 15
Channels
Analog Input Pacing, Trigger ing and Gating Signals
Analog input tasks can use the input-pacing counter, which DriverLINX designates as Counter/Timer Logical Channel 0. For this counter the clock source can be internal or external.
The Analog Input subsystem uses two control signals that DriverLINX defines as an external clock and a trigger/gate as shown in the following table:
Connector Name DriverLINX Usage
TGIN External trigger:
Digital Start Event (Post-Triggering)
Digital Stop Event (Pre- and About-
Triggering)
External gate:
Rate Timing Event
Digital Start Event (Gating)
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 33
Connector Name DriverLINX Usage
XPCLK External pacer clock:
Rate Timing Event
Digital Timing Event
How DriverLINX uses analog i nput control signals.
34 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series

Analog Output Subsystem Signals

The Analog Output subsystem has 2 or 4 analog differential output connections, depending on the model of your DAS-1800 board.
DriverLINX maps these connections to Logical Channels as shown in the following table:
Physical Channels Connector Name Logical Channels
0 – 1 (HR-DA and AO models)
0 – 1 (HC models)
0 – 3 (ST-DA models only)
How DriverLINX maps analog output hardware channels to Logical Channels.
Analog Output Pacing, Triggering and Gating Signals
Analog output tasks can use the output-pacing counter, which DriverLINX designates as Counter/Timer Logical Channel 1. For this counter the clock source can be internal or external.
The Analog Output subsystem uses two control signals that DriverLINX defines as an external clock and a trigger as shown in the following table:
ODAC 0 – ODAC 1 0 – 1
DAC0 OUT– DAC1 OUT 0 – 1
ODAC 0 – ODAC 3 0 – 3
Connector Name DriverLINX Usage
TGIN External trigger:
Digital Start Event (Post-Triggering)
External gate:
Rate Timing Event
Digital Start Event (Gating)
XPCLK External pacer clock:
Rate Timing Event
Digital Timing Event
How DriverLINX uses analog output control signals.
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 35

Digital Input Subsystem Signals

The Digital Input subsystem has one 4 or 8-bit digital input port and two control inputs which DriverLINX models as 1-bit logical digital input ports. DriverLINX maps these signals to Logical Channels as shown in the following table:
Port Connector Name Logical Channel
4-bit digital input DI 0 … DI 3 0 External clock alias XPCLK 1 External trigger alias TGIN 2
How DriverLINX maps digital input hardware channels to Logical Channel s.

Digital Output Subsystem Signals

The Digital Output subsystem has a 4 or 8-bit digital output port and, except on HC models, a group of control signals that you can use as an output port. DriverLINX maps these signals to Logical Channels as shown in the following tables:
HC Models
Port Connector Name Logical Channel
8-bit digital input DO 0 … DO 7 0
How DriverLINX maps digital output hardware channels to Logical Channel s for HC models.
Other Models
Port Connector Name Logical Channel
4-bit digital output DO 0 … DO 3 0 5-bit digital output MUX4 – MUX7, GEXT 1
How DriverLINX maps digital output hardware channels to Logical Channel s of other models.

Counter/Timer Subsystem Signals

The Counter/Timer subsystem has one or two counter/timer channels for analog input/output pacing. It also has an external clock source and a gate input that the board can use with any Logical Channel. DriverLINX maps these signals as shown in the following table:
Timer Connector Name Logical Channel
Input Pacing Counter XPCLK 0 Output Pacing Counter
(AO models only)
How DriverLINX maps counter/ timer hardware channels to Logical Channels .
XPCLK 1
36 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series

Device Subsystem

The following sections describe how DriverLINX implements Device Subsystem features for the DAS-1800 Series.

Device Modes

The Device Subsystem supports only DriverLINX’s Other mode for all operations.

Device Operations

The DAS-1800 Series Device Subsystem supports the following DriverLINX operations:
If another application is using the same data-acquisition board, DriverLINX will prevent Device Initialization from interfering with another
application’s data-acquisition tasks.
Initialize—DriverLINX aborts all data-acquisition tasks for every
subsystem controlled by the current application. DriverLINX then initializes each subsystem.
Capabilities—DriverLINX provides hardware-specific and
configuration information in the form of a Logical Device Descriptor database.
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 37

Analog Input Subsystem

The following sections describe how DriverLINX implements Analog Input Subsystem features for the DAS-1800 Series.

Analog Input Modes

The Analog Input Subsystem supports the following modes:
Polled—For single-value or single-scan analog input samples.
Interrupt—For buffered transfers using programmed I/O.
DMA—For buffered transfers using direct memory access.
Other—For subsystem initialization and data conversion.

Analog Input Operations

The DAS-1800 Series Analog Input Subsystem supports the following DriverLINX operations:
Initialize—aborts all active analog input data-acquisition tasks.
However, DriverLINX prevents one application from interfering with another application’s data-acquisition tasks.
Start—initiates a data-acquisition task using the Mode, Timing, Start,
and Stop Events, the Logical Channels, and the Buffers the application specified in the Service Request.
Status—reports the buffer position of the next sample that DriverLINX
will write into a buffer.
Stop—terminates an analog input data-acquisition task.
Message—DriverLINX displays a pop-up dialog box for the user
containing the text for the current DriverLINX error message.

Analog Input Pacing, Triggering and Gating Options

The DAS-1800 Series User’s Guides describe several pacing, triggering and gating options available on DAS-1800 models. The following table summarizes these options and identifies which Service Request properties use them. Except as indicated all tasks must use Interrupt or DMA mode.
38 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series
Parameter Option Service Request Properties
Pacing Mode
Periodic (paced) Rate generator timing event Burst Burst generator timing event
Clock Source
Software Single-value or single-scan
(Polled mode)
Internal Rate timing event with an internal
clock source
External +/- Rate timing event with an external
clock source Digital timing event
Trigger
Internal (software) Command start event
Command stop event Terminal count stop event
Digital +/- Digital start event
Digital stop event
Trigger Mode
Pre-trigger Digital stop event with 0-delay About-trigger Digital stop event with positive delay Post-trigger Digital start event Trigger-to-trigger Digital start event
Digital stop event
Trigger-to-about-trigger Digital start event
Digital stop event with positive delay
Gate
Level +/- Rate timing event
Digital start event (for use with a digital timing event)
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 39

Analog Input Timing Events

Timing Events specify how the hardware paces or clocks the acquisition of analog input samples. DriverLINX uses the Timing Event to program when the DAS-1800 Series acquires the next analog input sample.
The DAS-1800 Series supports the following Timing Events:
None—Sampling requires no pacing as DriverLINX is acquiring only a
single value or scan.
Rate—The DAS-1800 Series supports fixed rate and burst mode
sampling using internal and external clocks.
Digital—DriverLINX uses an external digital input signal to pace the
acquisition of the next sample.
None or Null Timing Event
The Null Event specifies that the task does not need a clock to determine when to acquire the next sample.
Rate Timing Event
The DAS-1800 Series supports two types of Rate Events for analog input:
Rate Generator—Generates a fixed rate clock with equal time
intervals between tics.
Burst Generator—Generates a dual frequency clock with a fixed
number of tics at a high frequency separated by a time interval at a lower frequenc y.
DAS-1800 boards have a 5 MHz master clock frequency, or 0.2 µs tic period. The sample period can range from 15 tics (3µs) to
sample rate can range from 0.00116 Hz to 333kHz. However, using multiple channels or non-unity gains may reduce the maximum sample rate that the hardware can accurately acquire. Consult your hardware manual for details.
32
21
tics (833 s). This means the
40 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series
Rate Generator: Internal Clocking
An internally clocked Rate Generator produces a fixed rate clock with equal time intervals between tics.
Period
Use an internally clocked rate generator when you want to acquire all analog input samples at equally spaced time intervals.
How to set up the DAS-1800 Seri es for fixed rate sampling using an i nt ernal clock.
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 41
For hardware independence, specify the clock channel using the symbolic constant, DEFAULTTIMER, which always maps to the default Logical Channel for analog input timing.
Specify internal cl ocking using a Rate Generator on Channel 0 with
the Internal 1 Clock source. See “Counter/Timer Subsystem” on page
102 for a description of clock sources.
The Period property specifies the time interval between samples in tics,
where an Internal 1 tic is 0.2 µs, or 5 MHz. The minimum period is 15 tics, or 333 kHz. The maximum period is 4294967295 tics (
0.00116 Hz.
The Gate property specifies how the TGIN signal affects the operation
of the internal clock. Valid settings are Enabled, Disabled, and High Level and Low Level. See “Counter/Timer Subsystem” on page 102 for a description of each Gate setting.
Note: You cannot use a gated clock with a digital start or stop trigger.
For simultaneous sampling using an SSH-8 accessory, check the
Simultaneous box in the Channels section. Simultaneous means that all selected channels are sampled in each sample period.
Also see: “Repeat Mode Sampling on the DAS-1802HR-DA” on page 57.
32
21
), or
42 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series
Rate Generator: External Clocki ng
An externally clocke d Rate Generator produces a rate clock with unknown time intervals between tics.
Period (ext clk)
Use an externally clocked rate generator when you want to synchronize analog input samples with a recurrent external signal. In this mode you will need a separate external clock tic for each analog sample you want to acquire.
How to set up the DAS-1800 Seri es for fixed rate sampling using an external clock.
Be sure that the external clock source is TTL compatible, 0 V minimum to +5 V maximum!
Specify external clocking using a Rate Generator on Channel 0 with
an External, External+, or External- Clock source. See
“Counter/Timer Subsystem” on page 102 for a description of clock sources. For hardware-independence, you can specify the hardware external clock channel by the symbolic constant, DI_EXTCLK.
Users should connect the external clock signal to the XPCLK line.
Specify a Period between the minimum and maximum exte rnal
clocking period. The value doesn’t affect the external clock frequency, but DriverLINX requires a valid hardware value in case the application requests a timebase operation and to optimize data transfer between the driver and the application.
The frequency of the external clock must not exceed 333 kHz.
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 43
The Gate property specifies how the TGIN signal affects the operation
of the internal clock. Valid settings are Enabled, Disabled, and High
Level and Low Level. See “Counter/Timer Subsystem” on page 102 for a description of each Gate setting.
Note: You cannot use a gated clock with a digital start or stop trigger.
For simultaneous sampling using an SSH-8 accessory, check the
Simultaneous box in the Channels section.
Also see: “Repeat Mode Sampling on the DAS-1802HR-DA” on page 57.
44 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series
Burst Generator: Internal Clocking
An internally clocked Burst Generator produces a dual frequency clock with a fixed number of tics at a high frequency repeated at a lower frequency.
Use an internally clocked rate generator when you want to acquire analog input samples from a several channels at closely spaced time intervals and then repeat at longer intervals.
How to set up the DAS-1800 Seri es for burst mode sampling using an internal c l ock.
For hardware independence, specify the clock channel using the symbolic constant, DEFAULTTIMER, which always maps to the default Logical Channel for analog input timing.
Specify internal cl ocking using a Burst Generator on Channel 0 with
the Internal 1 Clock source. See “Counter/Timer Subsystem” on page
102 for a description of clock sources.
The Period property specifies the time interval between bursts in tics,
where an Internal 1 tic is 0.2 µs, or 5 MHz. The minimum period is 15 tics, or 333 kHz. The maximum period is 4294967295 tics (
32
21
), or
0.000116 Hz.
The On time property specifies the time interval between samples. It
must be within the range of 4µs (20 tic s) minimum (10µs for DAS­1800HR) to 64µs (320 tics) maximum. Also On time × Pulses must be less than or equal to Period.
The Gate property specifies how the TGIN signal affects the operation
of the internal clock. Valid settings are Enabled, Disabled, High Level and Low Level. See “Counter/Timer Subsystem” on page 102 for a description of each Gate setting.
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 45
Note: You cannot use a gated clock with a digital start or stop trigger.
The Pulses property specifies how many channels the board samples in
each Period. Pulses must equal the number of channels in the channel list.
Also see: “Repeat Mode Sampling on the DAS-1802HR-DA” on page 57.
Burst Generator: External Clocking
An externally clocked Rate Generator produces a dual frequency clock with a fixed number of tics at a high, internal frequency repeated at a lower, externally controlled frequency.
Use an externally clocked burst generator when you want to synchronize a burst of analog input samples with a recurrent external signal. In this mode you will need a separate external clock tic for each burst of analog samples you want to acquire.
How to set up the DAS-1800 Seri es for burst mode sampling using an external clock.
BE SURE that the external clock source is TTL compatible, 0 V minimum to +5 V maximum!
Specify external clocking using a Burst Generator on Channel 0 with
an External, External+, or External- Clock source. See “Counter/Timer Subsystem” on page 102 for a description of clock sources. For hardware-independence, you can specify the hardware external clock channel by the symbolic constant, DI_EXTCLK.
Users should connect the external clock signal to the XPCLK line.
Specify a Period between the minimum and maximum exte rnal
clocking period. The value doesn’t affect the external clock frequency,
46 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series
but DriverLINX requires a valid hardware value in case the application requests a timebase operation and to optimize data transfer between the driver and the application.
The On time property specifies the time interval between samples. It
must be within the range of 4µs (20 tic s) minimum (10µs for DAS­1800HR) to 64µs (320 tics) maximum. Also On time × Pulses must be less than or equal to Period.
The frequency of the external clock must not exceed 333 kHz.
The Gate property specifies how the TGIN signal affects the operation
of the internal clock. Valid settings are Enabled, Disabled, High Level
and Low Level. See “Counter/Timer Subsystem” on page 102 for a description of each Gate setting.
Note: You cannot use a gated clock with a digital start or stop trigger.
The Pulses property specifies how many channels the board samples in
each Period. Pulses must equal the number of channels in the channel list.
Also see: “Repeat Mode Sampling on the DAS-1802HR-DA” on page 57.
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 47
Digital Timing Event
DriverLINX supports Digital Events as aliases for externally clocked Rate Generators. Use this technique for compatibility with data-acquisition products that only support external clock sources, such as some digital I/O products.
How to set up the DAS-1800 Seri es for external rate sampling using a di gi t a l event.
Specify external cl ocking using Channel 1. For hardware-
independence, you can specify the hardware external trigger channel by the symbolic constant, DI_EXTCLK.
Users should connect the external clock signal to the XPCLK line.
Specify the Mask property as 1, or Bit 0, to indicate that DriverLINX
should only compare a 1-bit digital input value against the Pattern property.
Specify the Match property as Not equals.
Specify the Pattern property as 0 for a rising, or positive, edge clock
(≠0) or 1 for a falling, or negative, edge clock (≠1).
48 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series

Analog Input Start Events

Start Events specify when the DAS-1800 hardware starts acquiring analog input data. The DAS-1800 Series supports the following Start Events:
Note: The DAS-1800 Series does not support analog triggering.
None—Use this event when the DriverLINX operation does not require
a Start Event.
Command—DriverLINX starts the task on software command, i.e., as
soon as DriverLINX finishes programming the DAS-1800 hardware for the task.
Digital—The DAS-1800 starts acquiring analog input samples when
the hardware detects the digital Logical Channel input satisfies the condition specified in the Start Event.
None or Null Start Event
The Null Event specifies that the task does not need a Start Event to begin the task.
Command Start Event
The Command Event starts data acquisition as soon as DriverLINX has completed programming the data-acquisition hardware with the task parameters.
Digital Start Event (Post-Triggering)
The DAS-1800 can acquire analog input samples after the hardware detects a digital trigger condition. Use post-triggering when you want to synchronize the start of data acquisition with an external signal.
How to set up the DAS-1800 Seri es for post-triggered analog input.
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 49
Digital Start Events contain mask, pattern, and match fields. The mask is logically ANDed with the digital input data on the Logical Channel and then compared with the pattern for a match/mismatch.
Specify the Channel as 2. For hardware-independence, you can specify
the hardware external trigger channel by the symbolic constant, DI_EXTTRG.
Users should connect the external trigger signal to the TGIN line.
Specify the Mask property as 1, or Bit 0, to indicate that DriverLINX
should only compare a 1-bit digital input value against the Pattern property.
Specify the Match property as Not equals.
Specify the Pattern property as 0 for a rising, or positive, edge trigger
(≠0) or 1 for a falling, or negative, edge trigger (≠1).
Specify the Delay property as 0. The DAS-1800 does not support a
delay in sampling after the start trigger.
You cannot use a digital start trigger with a gated clock.
If both the start trigger and stop trigger are digital events, they must
have identical Pattern settings.
Digital Start Event (Gating)
The DAS-1800 can pause and resume acquiring analog input samples based on the level of a digital input condition. Use a digital start event to set up gating when using
a digital timing event. To set up gating for a rate timing event, see “Rate Timing Event” on page 40.
How to set up the DAS-1800 Seri es for gated analog input.
50 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series
Digital Start Events contain mask, pattern, and match fields. The mask selects which bit in the Logical Channel to use as a gate input. The pattern selects whether the gate is active, or enables data-acquisition, when the gate signal is high or low.
Specify the Channel as 2. For hardware-independence, you can specify
the hardware external trigger channel by the symbolic constant, DI_EXTTRG.
Users should connect the external trigger signal to the TGIN line.
Specify the Mask property as 1, or Bit 0, to identify the gate input bit
of the Logical Channel.
Specify the Match property as Equals.
Specify the Pattern property as 0 for a low-level active gate or 1 for a
high-level active gate.
Specify the Delay property as 0. DriverLINX does not use a delay with
gating.

Analog Input Stop Events

Stop Events specify when the hardware stops acquiring analog input data. The DAS-1800 Series supports the following Stop Events:
None—Use this event when the DriverLINX operation doesn’t require
a Stop Event.
Command—Dr iverLINX stops the task on software command, i.e.,
when the application issues a Service Request with a Stop operation.
Terminal count—DriverLINX stops the task after the data-acquisition
hardware has filled all the data buffers once.
Digital—The DAS-1800 stops acquiring analog input samples when
the hardware detects the digital Logical Channel input satisfies the condition specified in the Stop Event.
None or Null Stop Event
The Null Event specifies that the task does not need a Stop Event to end the task.
Command Stop Event
The Command Event stops data acquisition when the user application changes the Operation property in the Service Request to Stop and resubmits the Service Request to DriverLINX.
In Stop-on-Command mode , DriverLINX continuously cycles through al l the data buffers filling them with analog input data from the data-acquisition hardware.
Terminal Count Stop Event
The Terminal Count Event stops data acquisition after DriverLINX has filled all the data buffers once with analog input data. Use Terminal Count when you want to acquire a single scan or fixed amount of data.
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 51
Digital Stop Event (Pre- and About-Triggering)
The DAS-1800 can acquire analog input samples until the hardware detects a digital trigger condition. Use pre-triggering when you want to synchronize the end of data acquisition with an external signal.
How to set up the DAS-1800 Seri es for pre-triggered analog input.
Digital Stop Events contain mask, pattern, and match fields. The mask is logically ANDed with the digital input data on the Logical Channel and then compared with the pattern for a match/mismatch.
Specify the Channel as 2. For hardware-independence, you can specify
the hardware external trigger channel by the symbolic constant, DI_EXTTRG.
Users should connect the external trigger signal to the TGIN line.
Specify the Mask property as 1, or Bit 0, to indicate that DriverLINX
should only compare a 1-bit digital input value against the Pattern property.
Specify the Match property as Not equals.
Specify the Pattern property as 0 for a rising, or positive, edge trigger
(≠0) or 1 for a falling, or negative, edge trigger (≠1).
Specify the Delay property as an integer from 0 to
2216− . The
DAS-1800 continues sampling until it obtains this number of samples after the trigger. The number must be a multiple of the number of channels in the channel list.
You cannot use a digital stop trigger with a gated clock.
If both the start trigger and stop trigger are digital events, they must
have identical Pattern settings.
52 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series
When the hardware detects the trigger, DriverLINX sends a StopEvent message (or
event) that identifies sample following the trigger. For more information, see “Analog Input Messages” on page 63.

Analog Input Channels

The KPCI-1800 Series models support a variety of channel gains with differential or single-ended connections. The Logical Device configuration sets the default connection type for analog input channels. An application can request a particular connection type for each channel it uses. The channel gains are also application selectable.
The DAS-1800 Series allows applications to specify the analog channels using three techniques:
Start Channel—Acquire data from a single channel.
Start/Stop Channel Range—Acquire data from a consecutive range of
channels.
Channel List—Acquire data from a list of channels.
Single Channel Analog Input
In single channel mode, the DAS-1800 Series acquires all data from one channel at the specified gain.
How to set up the DAS-1800 Seri es for sampling on a single channel.
Multi-channel Analog Input Range
In multi-channel range mode, the DAS-1800 Series acquires data from a consecutive range of analog channels.
The Start Channel’s gain only applies to the first channel.
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 53
DriverLINX uses the Stop Channel’s gain for all the other analog
channels in the range.
The gains may vary but they must all be either unipolar or bipolar.
If the Start Channel is greater than the Stop Channel, the channel
sequence is [Start Channel,… Last Channel, 0,… Stop Channel], where Last Channel is the highest numbered channel for the DAS-1800 model the application is using.
For simultaneous sampling using an SSH-8 see “Rate Generator:
Internal Cloc king” on page 41 or “Rate Generator: External Cl ocking” on page 43.
How to set up the DAS-1800 Seri es for sampling on a consecutive range of channels.
Multi-channel Analog Input List
In multi-channel list mode, the DAS-1800 Series acquires data from an arbitrary list of analog channels.
The channel-gain list may contain up to 256 channels in any order. The
list may repeat the same channel with the same or different gains.
The gains may vary but they must all be either unipolar or bipolar.
For simultaneous sampling using an SSH-8 see “Rate Generator:
Internal Cloc king” on page 41 or “Rate Generator: External Cl ocking” on page 43.
54 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series
How to set up the DAS-1800 Seri es to sample on an arbitrary list of channels.
Analog Input Channel Gains
Each channel in a channel scan list has a gain code property to select the pre­amplifier gain when sampling that channel. The following tables show the correspondence between the gain multiplier, the maximum input signal range, and the gain code for each input range. Note: DriverLINX uses a negative (-) gain multiplier to signify a bipolar (±) range.
You should be aware that using multiple channels or non-unity gains reduces the maximum sample rate. Consult your hardware manual for details.
DAS-1801 Models
Gain Range Gain Code
-1 ±5 V 0
-5 ±1 V 1
-50 ±100 mV 2
-250 ±20 mV 3 10 5 V4 50 1 V5 50 0 … 100 mV 6 250 0 … 20 mV 7
Gains, Ranges, and Hardware Gain Codes for DAS-1801 Models.
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 55
DAS-1802 Models
Gain Range Gain Code
-1 ±10 V 0
-2 ±5 1
-4 ±2.5 V 2
-8 ±1.25 V 3 1 0 … 1 0 4 20 55 4 0 … 2.5 V 6 8 0 … 1.25 V 7
Gain Multipliers, Ranges, and Gain Codes for DAS-1802 Models.
Use the DriverLINX Gain2Code method to easily convert between the gains in the above tables and Gain Codes. Using this method makes applications portable to different hardware models that have the same analog input ranges.
Expansion Channel Gains
The available gains for an expansion channel are the products of the expansion board’s programmable (1 and 50) and the DAS board’s programmable gains.
For example, the gains available for a channel on an EXP-1800 attached to a DAS-1802, are: -1, -2, -4, -8, 1, 2, 4, 8, -50, -100, -200, -400, 50, 100, 200, 400.
See “Special…” on page 15 for information on configuring expansion accessories or “Analog Input Expansion Channels” on page 58 for information on selecting expansion channel s .
SSH-8 Channel Gains
The available gains for a channel on an SSH-8 unit are the products of the channel’s gain on the SSH-8 and the DAS board’s programmable gains.
See “Special…” on page 15 fo r information on configuring an SSH-8 unit.
Analog Input Channel Connection Types
On the DAS-1800 Series, each Analog Input channel can use single-ended or differential connections. When configuring the Analog Input Subsystem, you choose a default configuration for all channels. Applications can use the default configuration or specify the connection type for each channel it uses. This scheme supports applications that use DAS-1800-specific features as well as those that use only generic features.
Each channel in a channel list has a gain code property. To specify a connection type for a channel, an application includes a connection-type flag in its gain code. The following table shows the flag value for each connection type:
56 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series
Connection Type Flag Value
Default Configuration CHAN_SEDIFF_DEFAULT = 0 Single-Ended
Differential
CHAN_SEDIFF_SE = CHAN_SEDIFF_DIFF =
13
22×
13
×
23
Note: The user chooses the default configuration on the Analog Input page of the
DriverLINX Configuration Panel. See “Configure DriverLINX Device Dialog” on page 11.
For example, an application that requires or knows a channel’s connection type obtains the gain code for a single-ended channel with a bipolar gain of 5, with:
Gain2Code (-5) + CHAN_SEDIFF_SE // This code will work with only drivers that allow applications to specify a
connection type.
An application that does not require or know a channel’s connection type obtains the gain code for a channel with a bipolar gain of 5, with:
Gain2Code (-5) // This code will work with any board that supports bipolar ranges.
Repeat Mode Sampling on the DAS-1802HR-DA
The DAS-1802HR-DA provides an option to sample the same channel one to 4095 times before advancing to the next channel in the channel/gain queue.
To set up repeat mode sampling, choose a rate or burst timing event and set the pulses field as follows:
Pulses Field with a Repeat Count
1 Repeat Count
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
MSB
Pulse Count
1514131211109876543210
Pulses = PULSE_REPEAT_COUNT_FLAG
+ RepeatCount × (PULSE_COUNT_MASK + 1) AND PULSE_REPEAT_COUNT_MASK + PulseCount AND PULSE_COUNT_MASK
LSB
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 57

Analog Input Expansion Channels

Multiplexers can expand the number of analog input channels from the 16 base channels up to 256 differential analog input channels (except on HC models). The DAS-1800 Series hardware automatically switches the multiplexer channels, allowing you to specify exp ansion channels numbers a l ong with base channels numbers in a channel list.
To enable DriverLINX to use multiplexers, enable expansion mode in the Configure
DAS-1800 Options dialog (see Special…). With expansion mode enabled, DriverLINX considers the board to have the original 16 base channels followed by 256 expansion channels.
DriverLINX uses a static numbering scheme for attaching multiplexers. Attaching or removing a mux from a base channel doesn’t cha nge the Logical Channel number of any other channel. DriverLINX r eserves a fixed numbe r of expansion cha nnels for each potential mux, whether it is attached or not.
To determine the DriverLINX Logical Channel number for a multiplexer channel, use the following formula or refer to the table that follows it. Note that DriverLINX uses 0-based numbering for all channels .
<logical chan#> = <num base chan> + <base chan#> × <num mux chan> + <mux chan#>
Term Descri pti on
<logical chan#> Logical Channel number to use in channel lists. <num base chan> Number of base channels on the DAS-1800 board <base chan#> Base channel on the DAS-1800 board where you attached
the mux.
<num mux chan> Number of expansion channels DriverLINX reserves for
the mux. (16 for DAS-1800 expansion accessories).
<mux chan#> Channel on the expansion board where you attached the
signal. Mux channels are numbered from 0 to 15.
For example, the Logical Channel address for channel 4 on a mux attached to base channel 3 is
16 + 3 × 16 + 4 = 68.
To specify multiplexer input channels 0, 1, and 2 on an expansion board connected to base channel 0, use 16, 17, and 18 in the channel/gain list.
58 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series
Base Chan #
Mux Chan #
01234567etc
16 32 48 64 80 96 112 128
0
17 33 49 65 81 97 113 129
1
18 34 50 66 82 98 114 130
2
19 35 51 67 83 99 115 131
3
20 36 52 68 84 100 116 132
4
21 37 53 69 85 101 117 133
5
22 38 54 70 86 102 118 134
6
23 39 55 71 87 103 119 135
7
24 40 56 72 88 104 120 136
8
25 41 57 73 89 105 121 137
9
26 42 58 74 90 106 122 138
10
27 43 59 75 91 107 123 139
11
28 44 60 76 92 108 124 140
12
29 45 61 77 93 109 125 141
13
30 46 62 78 94 110 126 142
14
31 47 63 79 95 111 127 143
15
Table of logical channel numbers for DA S -1800 expansion boards.
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 59

Analog Input Buffers

DriverLINX supports single-value, single-scan and buffered analog input.
For single-value input, specify the Number of buffers as 0. The buffer
for a single value is the ioValue property.
For single-scan input, specify the Number of buffers as 1 and the
number of Samples equal to the number of channels.
For buffered input, specify the Number of buffers from 1 to 255 and
the number of Samples as desired.
For example, 500 samples/2 channels = 250 is ok, but 500 samples/3 channels = 166.67 is incorrect.
How to set up the DAS-1800 Seri es to store samples in buffers.
Buffer Size
An individual DriverLINX buffer may have any size as long as the buffer length holds an integral number of channel scans (i.e., a multiple of the number of analog
input channels you’re acquiring). This restriction enforces the requirement that all acquired channels have the same number of sample s.
Buffer Usage
DriverLINX fills buffers sequentially until the task stops. During the task only complete buffers are available to the application. Except for tasks that stop on terminal count, the last buffer may be only partially full. If the task stops on a trigger, use the StopEvent message (or event) to determine the location of the last sample. For other cases, use a Status operation to determine the location of the last sample.
Compatibility with the KPCI-1800 Series
Keithley’s KPCI-1800 Series consists of PCI bus-based data-acquisition boards with features similar to the DAS-1800HC models. Developers writing applications they want to be compatible with both series should be aware of the following special requirements for DMA mode buffering on the KPCI-1800 Series.
60 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series
The KPCI-1800 Series performs direct memory access (DMA) using the PCI bus mastering mode. To maintain the high efficiency that bus mastering provides, the hardware transfers samples in pairs (four bytes at a time) to memory on 4-byte boundaries. This feature has the following consequences:
Each buffer must have an even nu mber of samples (a multiple of four
bytes). If an application requests a DMA-mode task with an odd number of samples per buffer, DriverLINX returns an "Invalid # of conversions" error.
A sample taken on an odd-numbered clock pulse is not available until
the next even-numbered clock pulse. At high sample rates with continuous internal or external clocking, this effect is imperceptible. At very low sample rates, you may observe applications taking twice as long as expected to acquire a sample. With an external clock that produces an odd number of pulses and then stops, the application will not receive the last sample.
Applications that require an odd number of samples per buffer or use an external clock with an odd, finite number of clock pulses should use interrupt mode instead of DMA mode. For existing applications that use DMA mode but do not meet these requirements, the user can cause DriverLINX to sub stitu te interrupt mode for DMA mode by disabling bus mastering in the KPCI-1800’s Configure DriverLINX Device dialog.

Analog Input Data Coding

DAS-1800 Series models return Analog Input hardware codes using binary integers for unipolar ranges and offset binary for bipolar ranges. DriverLINX refers to these
coding schemes as the “native” format. For any programmable gain, the DAS-1800 models return hardware codes with the
ranges in the following table:
Analog Input Resolution
Polarity Analog Input
Hardware Code
12 bits Unipolar 0 to 4095 12 bits Bipolar -2048 to 2047
(right-justified without sign extension)
*
16 bits (HR models) Unipolar 0 to 65535 16 bits (HR models) Bipolar -32768 to 32767
Native Analog Input hardware c odes for each DAS-1800 Series polarit y.
*
The KPCI-1800 Series hardware codes are left-justified. For compatibility convert to a standard data
type with DriverLINX conversion functions.
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 61
6 4 2 0
-2
-4
-6
-2048 2047
10
8
Bipolar
6
4
2
0
0 4095
DAS-1800 Series native Anal og Input Codes versus Voltage Range (except HR models).
Unipolar
DriverLINX refers to the default hardware analog-coding scheme as the “native” format. For computer arithmetic in a higher level language, the integer, or two’s complement, format is generally easier to use. For unipolar data, native and integer formats are identical.
Applications can use DriverLINX’s data conversion operations to transform an entire data buffer from native format to many common integer and floating-point formats.
62 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series

Analog Input Messages

For analog input operations, DriverLINX can report the following messages to the application:
DriverLINX
Explanation
Message
Service Start DriverLINX has started the acquisition task. Service Done DriverLINX has completed the acquisition task. Buffer Filled DriverLINX has filled an analog input buffer. Start Event DriverLINX has processed the interrupt for a hardware
start event.
Stop Event DriverLINX has processed the interrupt for a hardware
stop event.
Data Lost DriverLINX has detected an analog input data overrun
condition.
Critical Error DriverLINX has encountered an unexpected hardware
or software condition.
DriverLINX Event mess ages for analog input.
For detailed explanations of these messages see one of the following references:
DriverLINX Technical Reference Manual for C/C++ users
DriverLINX/VB Technical Reference Manual for VB or Delphi users
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 63

Analog Output Subsystem

The following sections describe how DriverLINX implements Analog Output Subsystem features for the DAS-1800 Series.

Analog Output Modes

The Analog Output Subsystem supports the following modes:
Polled—For single-value or single-scan analog output samples.
Interrupt—For buffered transfers using programmed I/O.
DMA—For buffered transfers using direct memory access.
Other—For subsystem initialization and data conversion.

Analog Output Operations

The DAS-1800 Series Analog Output Subsystem supports the following DriverLINX operations:
Initialize—aborts all active analog output data-acquisition tasks.
However, DriverLINX prevents one application from interfering with another application’s data-acquisition tasks.
Start—initiates a data-acquisition task using the Mode, Timing, Start,
and Stop Events, the Logical Channels, and the Buffers the application specified in the Service Request.
Status—reports the buffer position of the next sample that DriverLINX
will write from a buffer.
Stop—terminates an analog output data-acquisition task.
Message—DriverLINX displays a pop-up dialog box for the user
containing the text for the current DriverLINX error message.

Analog Output Pacing, Triggering and Gating Options

The DAS-1800 Series User’s Guides describe several pacing, triggering and gating options available on DAS-1800 models. Most are available only on the DAS­1800AO models. The following table summarizes these options and identifies which Service Request properties use them. Except as indicated all tasks must use Interrupt or DMA mode.
64 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series
Parameter Option Service Request Properties
Pacing Mode
Periodic (paced) Rate generator timing event
Clock Source
Software Single-value or single-scan
(Polled mode)
Internal D/A clock Rate timing event with an internal
clock source
Internal A/D clock Rate timing event with an internal
clock source. A period of 0 signifies that the A/D task operates the clock, which controls both tasks
External +/- Rate timing event with an external
clock source Digital timing event
Trigger
Internal (software) Command start event
Command stop event
Terminal count stop event Digital +/- Digital start event Retrigger Digital start event (Interrupt mode;
task must meet certain conditions)
Gate
Level +/- Rate timing event
Digital start event (for use with a
digital timing event)
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 65

Analog Output Timing Events

Timing Events specify how the hardware paces or clocks the writing of analog output samples. DriverLINX uses the Timing Event to program when the DAS-1800 Series writes the next analog output sample.
The DAS-1800 Series supports the following Timing Events:
None—Task requires no pacing as DriverLINX is writing only a single
value or scan.
Rate—The DAS-1800 Series supports fixed rate writing using internal
and external clocks. You can also synchronize an Analog Output task with an Analog Input task using a Rate Event. See “Rate Generator: Internal Cloc king” on page 67 or “Rate Generator: External Cl ocking” on page 69.
Digital—DriverLINX uses an external digital output signal to pace the
timing of the next sample.
None or Null Timing Event
The Null Event specifies that the task does not need a clock to determine when to write the next sample.
Rate Timing Event
The DAS-1800 Series supports one type of Rate Event for analog output:
Rate Generator—Generates a fixed rate clock with equal time
intervals between tics.
DAS-1800 boards have a 5 MHz master clock frequency, or 0.2 µs tic period. The
16
)12(10
sample period can range from 10 tics (2µs) to the sample rate can range from 7.63 Hz to 500 kHz.
× tics (0.131 s). This means
66 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series
Rate Generator: Internal Clocking
An internally clocked Rate Generator produces a fixed rate clock with equal time intervals between tics.
Period
Use an internally clocked rate generator when you want to write analog output samples at equally spaced time intervals.
For hardware independence, specify the clock channel using the symbolic constant, DEFAULTTIMER, which always maps to the default Logical Channel for analog output timing.
How to set up the DAS-1800 Seri es for fixed rate writing using an internal clock.
Specify internal cl ocking using a Rate Generator on Channel 1 with
the Internal 1 Clock source. See “Counter/Timer Subsystem” on page
102 for a description of clock sources.
The Period property specifies the time interval between samples in tics,
where an Internal 1 tic is 0.2 µs, or 5 MHz. The minimum period is 10 tics, or 500 kHz. The maximum period is 655350 tics (
16
or 7.63 Hz.
The Gate property specifies how the TGIN signal affects the operation
of the internal clock. Valid settings are Enabled, Disabled, High Level and Low Level. See “Counter/Timer Subsystem” on page 102 for a description of each Gate setting.
Note: You cannot use a gated clock with a digital start or stop trigger.
Check the Simultaneous box in the Channels section. Multi-channel
analog output on the DAS-1800 Series models is always simultaneous.
)12(10
× ),
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 67
Also see: “Synchronizing an Analog Output Task with an Analog Input Task” on page 72.
68 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series
Rate Generator: External Clocki ng
An externally clocke d Rate Generator produces a rate clock with unknown time intervals between tics.
Period (ext clk)
Use an externally clocked rate generator when you want to synchronize analog output samples with a recurrent external signal. In this mode you will need a separate external clock tic for each analog sample you want to write.
How to set up the DAS-1800 Seri es for fixed rate sampling using an external clock.
Be sure that the external clock source is TTL compatible, 0 V minimum to +5 V maximum!
Specify external clocking using a Rate Generator on Channel 1 with
an External, External+, or External- Clock source. See
“Counter/Timer Subsystem” on page 102 for a description of clock sources. For hardware-independence, you can specify the hardware external clock channel by the symbolic constant, DI_EXTCLK.
Users should connect the external clock signal to the XPCLK line.
Specify a Period between the minimum and maximum exte rnal
clocking period. The value doesn’t affect the external clock frequency, but DriverLINX requires a valid hardware value in case the application requests a timebase operation and to optimize data transfer between the driver and the application.
The frequency of the external clock must not exceed 500 kHz.
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 69
The Gate property specifies how the TGIN signal affects the operation
of the internal clock. Valid settings are Enabled, Disabled, High Level
and Low Level. See “Counter/Timer Subsystem” on page 102 for a description of each Gate setting.
Note: You cannot use a gated clock with a digital start or stop trigger.
Check the Simultaneous box in the Channels section. Multi-channel
analog output on the DAS-1800 Series models is always simultaneous.
Also see: “Synchronizing an Analog Output Task with an Analog Input Task” on page 72.
70 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series
Digital Timing Event
DriverLINX supports Digital Events as aliases for externally clocked Rate Generators. Use this technique for compatibility with data-acquisition products that only support external clock sources, such as some digital I/O products.
How to set up the DAS-1800 Seri es for external rate sampling using a di gi t a l event.
Specify external cl ocking using Channel 1. For hardware-
independence, you can specify the hardware external trigger channel by the symbolic constant, DI_EXTCLK.
Users should connect the external clock signal to the XPCLK line.
Specify the Mask property as 1, or Bit 0, to indicate that DriverLINX
should only compare a 1-bit digital input value against the Pattern property.
Specify the Match property as Not equals.
Specify the Pattern property as 0 for a rising, or positive, edge clock
(≠0) or 1 for a falling, or negative, edge clock (≠1).
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 71
Synchronizing an Analog Output Task with an Analog Input Task
On the DAS-1800 Series, DriverLINX can synchronize an analog output task with an analog input task. The analog output task uses the same timing event as the input task.
To synchronize an analog output (AO) task with an analog input (AI) task:
1. Set up the AI service request.
2. Set up the AO service request using an identical timing event as the AI
task, except with set the Period to zero. Both the AI and AO timing event must use Counter/Timer channel 0.
3. Submit the AO service request. The hardware runs the AO task only
while the AI task is running.
4. Submit the AI service request to start both tasks.
Although both tasks shar e the same clock source , they are otherwise logically independent of each other. Your application must manage and respond to each task separately. If the AI task terminates before the AO task, the AO task will still be logically active, but the clock stop sending timing pulses to the AO task until the next AI task starts. If you want to terminate the AO task when the AI task stops, either set up both service requests with equal buffer sizes and Stop Events, or issue a Stop operation request for the AO task.

Analog Output Start Events

Start Events specify when the DAS-1800 hardware starts acquiring analog output data.
The DAS-1800 Series supports the following Start Events:
None—Use this event when the DriverLINX operation does not require
a Start Event.
Command—DriverLINX starts the task on software command, i.e., as
soon as DriverLINX finishes programming the DAS-1800 hardware for the task.
Digital—The DAS-1800 starts acquiring analog output samples when
the hardware detects the digital Logical Channel output satisfies the condition specified in the Start Event.
None or Null Start Event
The Null Event specifies that the task does not need a Start Event to begin the task.
Command Start Event
The Command Event starts data acquisition as soon as DriverLINX has completed programming the data-acquisition hardware with the task parameters.
Digital Start Event (Post-Triggering)
The DAS-1800 can write analog output samples after the hardware detects a digital trigger condition. Use post-triggering when you want to synchronize the start of data acquisition with an external signal.
72 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series
How to set up the DAS-1800 Seri es for post-triggered analog output.
Digital Start Events contain mask, pattern, and match fields. The mask is logically ANDed with the digital input data on the Logical Channel and then compared with the pattern for a match/mismatch.
Specify the Channel as 2. For hardware-independence, you can specify
the hardware external trigger channel by the symbolic constant, DI_EXTTRG.
Users should connect the external trigger signal to the TGIN line.
Specify the Mask property as 1, or Bit 0, to indicate that DriverLINX
should only compare a 1-bit digital input value against the Pattern property.
Specify the Match property as Not equals.
Specify the Pattern property as 0 for a rising, or positive, edge trigger
(≠0) or 1 for a falling, or negative, edge trigger (≠1).
Specify the Delay property as 0. The DAS-1800 does not support a
delay in sampling after the start trigger.
You cannot use a digital start trigger with a gated clock.
Digital Start Event (Gating)
The DAS-1800 can pause and resume writing analog output samples based on the level of a digital input condition. Use a digital start event to set up gating when using
a digital timing event. To set up gating for a rate timing event, see “Rate Timing Event” on page 66.
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 73
How to set up the DAS-1800 Seri es for gated analog output.
Digital Start Events contain mask, pattern, and match fields. The mask selects which bit in the Logical Channel to use as a gate input. The pattern selects whether the gate is active, or enables data-acquisition, when the gate signal is high or low.
Specify the Channel as 2. For hardware-independence, you can specify
the hardware external trigger channel by the symbolic constant, DI_EXTTRG.
Users should connect the external trigger signal to the TGIN line.
Specify the Mask property as 1, or Bit 0, to identify the gate input bit
of the Logical Channel.
Specify the Match property as Equals.
Specify the Pattern property as 0 for a low-level active gate or 1 for a
high-level active gate.
Specify the Delay property as 0. DriverLINX does not use a delay with
gating.
Digital Start Event (Retriggering)
In recycle mode, a DAS-1800AO continuously writes analog output samples from its FIFO buffer. A digital trigger can restart the output at the beginning of the FIFO buffer. Use retriggering when you want to repeatedly synchronize the start of a waveform output with an external signal.
To use recycle mode, the device configuration must enable it and the task must meet
certain conditions. See “Special…” on page 15 for more information.
74 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series
How to set up the DAS-1800 Seri es for post-triggered analog output.
Digital Start Events contain mask, pattern, and match fields. The mask is logically ANDed with the digital input data on the Logical Channel and then compared with the pattern for a match/mismatch.
Specify the Channel as 2. For hardware-independence, you can specify
the hardware external trigger channel by the symbolic constant, DI_EXTTRG.
Users should connect the external trigger signal to the TGIN line.
Specify the Mask property as 1, or Bit 0, to indicate that DriverLINX
should only compare a 1-bit digital input value against the Pattern property.
Specify the Match property as Not equals.
Specify the Pattern property as 0 for a rising, or positive, edge trigger
(≠0) or 1 for a falling, or negative, edge trigger (≠1).
Specify the Delay property as 0. The DAS-1800 does not support a
delay in sampling after the start trigger.
You cannot use a digital start trigger with a gated clock.
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 75

Analog Output Stop Events

Stop Events specify when the hardware stops acquiring analog output data. The DAS-1800 Series supports the following Stop Events:
None—Use this event when the DriverLINX operation doesn’t require
a Stop Event.
Command—Dr iverLINX stops the task on software command, i.e.,
when the application issues a Service Request with a Stop operation.
Terminal count—DriverLINX stops the task after the data-acquisition
hardware has filled all the data buffers once.
None or Null Stop Event
The Null Event specifies that the task does not need a Stop Event to end the task.
Command Stop Event
The Command Event stops data acquisition when the user application changes the Operation property in the Service Request to Stop and resubmits the Service Request to DriverLINX.
In Stop-on-Command mode , DriverLINX continuously cycles through al l the data buffers the analog output data to the data-acquisition hardware.
Terminal Count Stop Event
The Terminal Count Event stops data acquisition after DriverLINX has filled all the data buffers once with analog output data. Use Terminal Count when you want to write a single scan or fixed amount of data.
76 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series

Analog Output Channels

The DAS-1800 Series allows applications to specify the analog channels using three techniques:
Start Channel—Write data to a single channel.
Start/Stop Channel Range—Write da ta to a consecutive range of
channels.
Channel List—Write data to a list of channels.
Single Channel Analog Output
In single channel mode, the DAS-1800 Series writes all data to one channel at the specified gain.
How to set up the DAS-1800 Seri es for writing to sampling on a si ngl e channel.
Multi-channel Analog Output Range
In multi-channel range mode, the DAS-1800 Series writes data to a consecutive range of analog channels.
The Start Channel’s gain only applies to the first channel.
DriverLINX uses the Stop Channel’s gain for all the other analog
channels in the range.
The Stop Channel must be greater than the Start Channel.
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 77
How to set up the DAS-1800 Seri es for writing to a consec utive range of channels.
Multi-channel Analog Output List
In multi-channel list mode, the DAS-1800 Series writes data to an arbitrary list of analog channels.
The channel-gain list may contain up to channels in any order and with
any allowed gain but may repeat any channel.
How to set up the DAS-1800 Seri es to write to an arbitrary li st of channels.
78 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series

Analog Output Channel Gains

The DAS-1800 Series models support a variety of channel gains. The following table shows the correspondence between DriverLINX gains, the maximum output signal range, and the gain code for each output range. Note: DriverLINX uses a negative (-) gain value to signify a b i polar (±) range.
AO Models
Gain Range Gain Code
-1 ±5 V 0
-0.5 ±10 V 1
Gains, Ranges, and Gain Codes for A O M odel s.
HC and DA Models
Gain Range Gain Code
-1 ±10 V 0
Gains, Ranges, and Gain Codes for HC and DA Models.
Use the DriverLINX Gain2Code method to easily convert between the gains in the above tables and hardware Gain Codes.
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 79

Analog Output Buffers

DriverLINX supports single-value, single-scan and buffered analog output.
For single-value output, specify the Number of buffers as 0. The
buffer for a single value is the ioValue property.
For a single-scan output, specify the Number of buffers as 1 and the
number of Samples equal to the number of channels.
For buffered output, specify the Number of buffers from 1 to 255 and
the number of Samples as desired.
For example, 500 samples/2 channels = 250 is ok, but 500 samples/3 channels = 166.67 is incorrect.
How to set up the DAS-1800 Seri es to store samples in buffers.
Buffer Size
An individual DriverLINX buffer may have any size as long as the buffer length holds an integral number of channel scans (i.e., a multiple of the number of analog
output channels you’re acquiring). This restriction enforces the requirement that all acquired channels have the same number of sample s.
Buffer Usage
DriverLINX writes from buffers sequentially until the task stops. Except for tasks that stop on terminal count, the last buffer may be only partially used. If the task stops on a trigger, use the StopEvent message (or event) to determine the location of the last sample. For other cases, use a Status operation to determine the location of the last sample.
80 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series

Analog Output Data Coding

DAS-1800 Series models use a variety of formats to encode analog output data, as shown in the following table. DriverLINX refers to these coding schemes as the
“native” format.
Model Format Analog
Output
Resolution
AO, ST-DA
HC Offset binary 12 bits 0 to 4095 HR-DA Two’s complement 16 bits -32768 to 32767
Two’s complement, right-shifted 12 bits -2048 to 2047
Native Analog Output hardware c odes for each DAS-1800 Series resolution.
Analog Output Hardware Code
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 81
6 4 2 0
-2048 2047
-2
-4
-6
6 4 2 0
0 4095
-2
-4
-6
6 4 2 0
-32768 32767
-2
AO, ST-DA
HC
HR
-4
-6
DAS-1800 Series native Anal og Output Codes versus Voltage Range at unity gain.
DriverLINX refers to the default hardware analog-coding scheme as the “native” format. For computer arithmetic in a hi gher level language, the 16-bit two’s complement integer format is generally easier to use.
DriverLINX automatically converts digital-to-analog codes to integer format, if you specify integer for the Format property. Or, applications can use DriverLINX’s data conversion operations to transform an entire data buffer from many common integer and floating-point formats to native format.
82 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series

Analog Output Messages

For analog output operations, DriverLINX can report the following messages to the application:
DriverLINX
Explanation
Message
Service Start DriverLINX has started the acquisition task. Service Done DriverLINX has completed the acquisition task. Buffer Filled DriverLINX has filled an analog output buffer. Critical Error DriverLINX has encountered an unexpected hardware
or software condition.
DriverLINX Event mess ages for analog output.
For detailed explanations of these messages see one of the following references:
DriverLINX Technical Reference Manual for C/C++ users
DriverLINX/VB Technical Reference Manual for VB or Delphi users
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 83

Digital Input Subsystem

The following sections describe how DriverLINX implements Digital Input Subsystem features for the DAS-1800 Series.

Digital Input Modes

The Digital Input Subsystem supports the following modes:
Polled—For single-value digital input samples.
Interrupt—For buffered transfers using programmed I/O.
Other—For subsystem initialization.

Digital Input Operations

The DAS-1800 Series Digital Input Subsystem supports the following DriverLINX operations:
Initialize—aborts any active interrupt data-acquisition tasks and stops
Start—initiates a data-acquisition task using the Mode, Timing, Start,
the clock. DriverLINX prevents one application from interfering with another application’s data-acquisition tasks.
and Stop Events, the Logical Channels, and the Buffers the application specified in the Service Request.
Status—reports the buffer position of the next sample that DriverLINX
will write into a buffer.
Stop—terminates an analog output data-acquisition task.
Message—DriverLINX displays a pop-up dialog box for the user
containing the text for the current DriverLINX error message.
Digital Port Configuration
The DAS-1800 Series has separate, dedicated digital input and output ports and doesn’t require the application to configure its digital I/O ports.

Digital Input Pacing, Tr i ggering and Gating Options

The DAS-1800 Series User’s Guides describe several pacing, triggering and gating options available for analog input on DAS-1800 models. As DriverLINX uses the analog input pacer clock for digital input, many of these options also apply to digital input tasks. The following table summarizes these options and identifies which Service Request properties use them. Except as indicated all tasks must use Interrupt or DMA mode.
84 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series
Parameter Option Service Request Properties
Pacing Mode
Periodic (paced) Rate generator timing event
Clock Source
Software Single-value or single-scan
(Polled mode) Internal Rate timing event with an internal
clock source External +/- Rate timing event with an external
clock source
Digital timing event
Trigger
Internal (software) Command start event
Command stop event
Terminal count stop event

Digital Input Timing Events

Timing Events specify how the hardware paces or clocks the reading of Digital Input samples. DriverLINX uses the Timing Event to program when the DAS-1800 Series reads the next digital input sample from the port.
The DAS-1800 Series supports the following Timing Events:
None—Input requires no pacing as DriverLINX i s reading only a single
value.
Rate—The DAS-1800 Series supports fixed rate writing using internal
and external clocks.
None or Null Timing Event
The Null Event specifies that the task does not need a clock to determine when to read the next sample.
Rate Timing Event
The DAS-1800 Series supports one type of Rate Event for digital output:
Rate Generator—Generates a fixed rate clock with equal time
intervals between tics.
DAS-1800 boards have a 5 MHz master clock frequency, or 0.2 µs tic period. The sample period can range from 500 tics (100 µs) to
the sample rate can range from 0.00116 Hz to 10kHz.
32
21
tics (833 s). This means
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 85
Rate Generator: Internal Clocking
An internally clocked Rate Generator produces a fixed rate clock with equal time intervals between tics.
Period
Use an internally clocked rate generator when you want to write digital output samples at equally spaced time intervals.
For hardware independence, specify the clock channel using the symbolic constant, DEFAULTTIMER, which always maps to the default Logical Channel for digital output timing.
How to set up the DAS-1800 Seri es for fixed rate sampling using an i nt ernal clock.
Specify internal cl ocking using a Rate Generator on Channel 0 with
the Internal 1 Clock source. See “Counter/Timer Subsystem” on page
102 for a description of clock sources.
The Period property specifies the time interval between samples in tics,
where an Internal 1 tic is 0.2 µs, or 5 MHz. The minimum period is 500 tics, or 10 kHz. The maximum period is 4294967295 tics (
21
or 0.00116 Hz.
Digital input does not support gating. Set the Gate property to
Disabled or NoConnect.
32
− ),
86 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series

Digital Input Start Events

Start Events specify when the DAS-1800 Series hardware starts reading digital input data.
The DAS-1800 Series supports the following Start Events for digital input:
None—Use this event when the DriverLINX operation doesn’t require
a Start Event.
Command—DriverLINX starts the task on software command, i.e., as
soon as DriverLINX finishes programming the DAS-1800 hardware for the task.
None or Null Start Event
The Null Event specifies that the task does not need a Start Event to begin the task.
Command Start Event
The Command Event starts data acquisition as soon as DriverLINX has completed programming the DAS-1800 Series hardware with the task parameters.

Digital Input Stop Events

Stop Events specify when the DAS-1800 Series hardware stops reading digital input data.
The DAS-1800 Series supports the following Stop Events for digital input:
None—Use this event when the DriverLINX operation doesn’t require
a Stop Event.
Command—Dr iverLINX stops the task on software command, i.e.,
when the application issues a Service Request with a Stop operation.
Terminal count—DriverLINX stops the task after the DAS-1800
Series hardware has filled all the data buffers once.
None or Null Stop Event
The Null Event specifies that the task does not need a Stop Event to end the task.
Command Stop Event
The Command Event stops data acquisition when the user application changes the Operation property in the Service Request to Stop and resubmits the Service Request to DriverLINX.
In Stop-on-Command mode , DriverLINX continuously cycles through al l the data buffers, reading from the digital port on the DAS-1800 Series.
Terminal Count Stop Event
The Terminal Count Event stops data acquisition after DriverLINX has read the digital input data into all the data buffers once. Use terminal count when you want to read a fixed amount of data.
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 87

Digital Input Channels

The DAS-1800 Series allows applications to specify the digital channels using three techniques:
Start Channel—Acquire data from a single channel.
Start/Stop Channel Range—Acquire data from a consecutive range of
channels.
Channel List—Acquire data from a list of channels.
Digital Input Logical Channels
The DAS-1800 Series has a single digital input port that DriverLINX designates as Logical Channel 0. DriverLINX defines two additional Logical Channels for the external clock and trigger signals but applications cannot directly read their values.
DriverLINX defines the following Logical Channels for the DAS-1800 Series digital inputs:
Logical Channel
0 Standard Digital Input DI 0 … DI 3 1 External Clock XPCLK 2 External Trigge r TGIN
DriverLINX Function DAS-1800 Series
External Connector
Single Channel Digital Input
In single channel mode, the DAS-1800 Series acquires all data from one channel.
How to set up the DAS-1800 Seri es to read from a single channel.
88 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series
Multi-channel Digital Input Range
Even though the DAS-1800 Series has only one digital input channel, DriverLINX supports specifying a channel range for compatibility with applications that use this method.
In multi-channel range mode, the DAS-1800 Series acquires all data from a consecutive range of digital channels.
Both the Start and Stop Channel must specify channel 0.
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 89
Multi-channel Digital Input List
Even though the DAS-1800 Series has only one digital input channel, DriverLINX supports specifying a channel range for compatibility with applications that use this method
In multi-channel list mode, the DAS-1800 Series acquires all data from a random list of digital channels.
The channel list may contain only one channel.
As the DAS-1800 Series only has a single digital input channel
available fo r reading, this technique is equival ent to Single Channel Digital Input.

Digital Input Buffers

DriverLINX supports single-value, single-scan and buffered digital input.
For single-value input, specify the Number of buffers as 0. The buffer
for a single value is the ioValue property.
For single-scan input, specify the Number of buffers as 1 and the
number of Samples equal to the number of channels.
For buffered input, specify the Number of buffers from 1 to 255 and
the number of Samples as desired.
90 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series
How to set up the DAS-1800 Seri es to read digital samples using dat a buf fers.
Buffer Usage
DriverLINX fills buffers sequentially until the task stops. During the task only complete buffers are available to the application. Except for tasks that stop on terminal count, the last buffer may be only partially full. If the task stops on a trigger, use the StopEvent message (or event) to determine the location of the last sample. For other cases, use a Status operation to determine the location of the last sample.

Digital Input Messages

For digital input operations, DriverLINX can report the following messages to the application:
DriverLINX
Explanation
Message
Service Start DriverLINX has started the acquisition task. Service Done DriverLINX has completed the acquisition task. Buffer Filled DriverLINX has filled a digital input buffer. Critical Error DriverLINX has encountered an unexpected hardware
or software condition.
DriverLINX Event mess ages for digital input.
For detailed explanations of these messages see one of the following references:
DriverLINX Technical Reference Manual for C/C++ users
DriverLINX/VB Technical Reference Manual for VB or Delphi users
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 91
92 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series

Digital Output Subsystem

The following sections describe how DriverLINX implements Digital Output Subsystem features for the DAS-1800 Series.

Digital Output Modes

The Digital Output Subsystem supports the following modes:
Polled—For single-value digital output samples.
Interrupt—For buffered transfers using programmed I/O.
Other—For subsystem initialization.

Digital Output Operations

The DAS-1800 Series Digital Output Subsystem supports the following DriverLINX operations:
Initialize—aborts any active interrupt data-acquisition tasks and stops
the clock. DriverLINX prevents one application from interfering with another application’s data-acquisition tasks.
Start—initiates a data-acquisition task using the Mode, Timing, Start,
and Stop Events, the Logical Channels, and the Buffers the application specified in the Service Request.
Status—reports the buffer position of the next sample that DriverLINX
will write from a buffer.
Stop—terminates an digital output data-acquisition task.
Message—DriverLINX displays a pop-up dialog box for the user
containing the text for the current DriverLINX error message.
Digital Output Initialization
By default, the Digital Output subsystem writes zero into the digital output port. You can specify a different initial output value using the Configure DriverLINX Device dialog. See “Digital Output Subsystem Page” on page 24.

Digital Output Pacing, Triggering and Gating Options

The DAS-1800 Series User’s Guides describe several pacing, triggering and gating options available for analog input on DAS-1800 models. As DriverLINX uses the analog input pacer clock for digital output, many of these options also apply to digital output tasks. The following table summarizes these options and identifies which Service Request properties use them. Except as indicated all tasks must use Interrupt or DMA mode.
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 93
Parameter Option Service Request Properties
Pacing Mode
Periodic (paced) Rate generator timing event
Clock Source
Software Single-value or single-scan
(Polled mode) Internal Rate timing event with an internal
clock source External +/- Rate timing event with an external
clock source
Digital timing event
Trigger
Internal (software) Command start event
Command stop event
Terminal count stop event

Digital Output Timing Events

Timing Events specify how the hardware paces or clocks writing Digital Output samples. DriverLINX uses the Timing Event to program when the DAS-1800 Series writes the next digital output sample from the port.
The DAS-1800 Series supports the following Timing Events:
None—Output requires no pacing as DriverLINX is writing only a
single value.
Rate—The DAS-1800 Series supports fixed rate writing using internal
and external clocks.
None or Null Timing Event
The Null Event specifies that the task does not need a clock to determine when to write the next sample.
94 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series
Rate Timing Event
The DAS-1800 Series supports one type of Rate Event for digital output:
Rate Generator—Generates a fixed rate clock with equal time
intervals between tics.
DAS-1800 boards have a 5 MHz master clock frequency, or 0.2 µs tic period. The sample period can range from 500 tics (100 µs) to
32
21
tics (833 s). This means
the sample rate can range from 0.00116 Hz to 10kHz.
Rate Generator: Internal Clocking
An internally clocked Rate Generator produces a fixed rate clock with equal time intervals between tics.
Period
Use an internally clocked rate generator when you want to write digital output samples at equally spaced time intervals.
How to set up the DAS-1800 Seri es for fixed rate writing using an internal clock.
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 95
For hardware independence, specify the clock channel using the symbolic constant, DEFAULTTIMER, which always maps to the default Logical Channel for digital output timing.
Specify internal cl ocking using a Rate Generator on Channel 0 with
the Internal 1 Clock source. See “Counter/Timer Subsystem” on page
102 for a description of clock sources.
The Period property specifies the time interval between samples in tics,
where an Internal 1 tic is 0.2 µs, or 5 MHz. The minimum period is 500 tics, or 10 kHz. The maximum period is 4294967295 tics (
32
21
or 0.00116 Hz.
Digital output does not support gating. Set the Gate property to
Disabled or NoConnect.
− ),
96 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series

Digital Output Start Events

Start Events specify when the DAS-1800 Series hardware starts writing digital output data.
The DAS-1800 Series supports the following Start Events for digital output:
None—Use this event when the DriverLINX operation doesn’t require
a Start Event.
Command—DriverLINX starts the task on software command, i.e., as
soon as DriverLINX finishes programming the DAS-1800 hardware for the task.
None or Null Start Event
The Null Event specifies that the task does not need a Start Event to begin the task.
Command Start Event
The Command Event starts data acquisition as soon as DriverLINX has completed programming the DAS-1800 hardware with the task parameters.

Digital Output Stop Events

Stop Events specify when the DAS-1800 Series hardware stops writing digital output data.
The DAS-1800 Series supports the following Stop Events for digital output:
None—Use this event when the DriverLINX operation doesn’t require
a Stop Event.
Terminal count—DriverLINX stops the task after the DAS-1800
Series hardware has written all the data buffers once.
None or Null Stop Event
The Null Event specifies that the task does not need a Stop Event to end the task.
Terminal Count Stop Event
The Terminal Count Event stops data acquisition after DriverLINX has written the digital output data from all the data buffers once. Use terminal count when you want to write a fixed amount of data.

Digital Output Channels

The DAS-1800 Series allows applications to specify the digital channels using three techniques:
Start Channel—Acquire data from a single channel.
Start/Stop Channel Range—Acquire data from a consecutive range of
channels.
Channel List—Acquire data from a list of channels.
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 97
Digital Output Logical Channels
The DAS-1800 Series has one digital output port that DriverLINX designates as channel 0. And, expect on HC models, DriverLINX designates the MUX and GEXT signal as another, 5-bit, digital output channel.
Logical Channel DriverLINX
Function
0 (HC models) Standard Digital Output DO 0 … DO 7 0 (except HC models) Standard Digital Output DO 0 … DO 3 1 (except HC models) Standard Digital Output MUX4 … MUX7, GEXT
DAS-1800 Series External Connector
Single Channel Digital Output
In single channel mode, the DAS-1800 Series writes all data from one channel.
How to set up the DAS-1800 Seri es to write a single digital out put channel.
Multi-channel Digital Output Range
In multi-channel range mode, the DAS-1800 Series acquires all data from a consecutive range of digital channels.
The Start and Stop Channel must specify the same channel as
DriverLINX supports only single value output in the digital output subsystem.
98 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series
Multi-channel Digital Output List
In multi-channel list mode, the DAS-1800 Series acquires all data from a random list of digital channels.
The channel list may contain only one channel as DriverLINX supports
only single value output in the digital output subsystem.
Keithley DAS-1800 Series Using the DAS-1800 Series with DriverLINX 99

Digital Output Buffers

DriverLINX supports single-value, single-scan and buffered digital output.
For single-value output, specify the Number of buffers as 0. The
buffer for a single value is the ioValue property.
For a single-scan output, specify the Number of buffers as 1 and the
number of Samples equal to the number of channels.
For buffered output, specify the Number of buffers from 1 to 255 and
the number of Samples as desired.
For example, 500 samples/2 channels = 250 is ok, but 500 samples/3 channels = 166.67 is incorrect.
How to set up the DAS-1800 Seri es to store samples in buffers.
Buffer Size
An individual DriverLINX buffer may have any size as long as the buffer length holds an integral number of channel scans (i.e., a multiple of the number of digital
output channels you’re acquiring). This restriction enforces the requirement that all acquired channels have the same number of sample s.
Buffer Usage
DriverLINX writes from buffers sequentially until the task stops. Except for tasks that stop on terminal count, the last buffer may be only partially used. If the task stops on a trigger, use the StopEvent message (or event) to determine the location of the last sample. For other cases, use a Status operation to determine the location of the last sample.
100 Using the DAS-1800 Series with DriverLINX Keithley DAS-1800 Series
Loading...