background image

Summary of Contents for ADC-16

Page 1: ...ADC 16 Analog Input Board User Guide...

Page 2: ...log Input Board Rev sion B December 992 Copyright Keithley Data Acquisition 1992 Part Number 24446 KEITHLEY DATA ACQUISITION Keithley MetraByte Asyst 440 Myles Standish Blvd Taunton MA 02780 TEL 50818...

Page 3: ...cquisitionassumes no responsibility for the use of such information nor for any infringements of patents or other rights of third parties that may result from its use No license is granted by implicat...

Page 4: ...amming 3 1 CHAPTER 4 THE POP UP CONTROL PANEL 4 1 Overview 4 1 4 2 Driver Descriptions 4 1 4 3 Driver FileLoading UnloadingOptions 4 1 4 4 Syntax Conventions 4 3 4 5 VLEXE Loading Unloading 4 4 4 6 PA...

Page 5: ...O 1 8 1 MUX Gain Register Base Address 2 8 2 Control Register Base Address 3 8 3 Status Register Base Address 3 8 4 Typical Programming Sequence 8 4 BASIC Example Program 8 5 CHAPTER 9 CALIBRATION 9 1...

Page 6: ...L GND GAINS 1 10 100 I SCALING fi i 3 2767 I 1 7 0 CONTROL SiATUS MUX GAIN INTERRUPT SELECT REGISTER CONTROL REGISTER I I INTERNAL DATA aus COMMON N 3 N C COMMOlv N O N C OPD C EX1 E X 2 EX4 IPO IP 1...

Page 7: ...4if eight STA EX8sare in the system When a Channel Gain array is in use the number of conversions is equal to the number of entries in the array Thisnumber can be up to 256 There are three modes of A...

Page 8: ...e manufacturer for information on this option NOTE The README DOC file in the Distribution Software contains last minute information not included in this manual READMEDOCis a readable ASCII file 1 3 A...

Page 9: ...dB min Gain 10 110dB typ 86 dB min Gain 100 120dB typ 92 dE3 min Common Mode Range _6 V Max Input Volts w o Power On k35 VDC Damage Power Off k20 VDC DIGITAL I O Digital Inputs Number of Inputs 2 TTL...

Page 10: ...ds will work with a single ADC 16 Input Offset Auto zeroed k10 pV for Gain 100 f 1 LSB for Gain 1or 10 ACCURACY Gain 1 k 01 of Full Scale Gain 10 1 typ Gain 100 2 1 typ N01sE TYPICAL Gain 1 flbit rms...

Page 11: ...AL Dimensions 6 7 x 5 4 x 2 3 in 17 0x 13 7 x 5 8 cm Weight 11oz 312 g STA U Board This board is simply a wiring feed through for facilitatingconnections to the ADC 16 As such the STA U has no meaning...

Page 12: ...y remove the Board from its anti static wrapping material 3 Inspect the Board for signs ofdamage If any damage is apparent return the Board to the factory 4 Check the remaining contents ofyour package...

Page 13: ...7 DMA 2 AT Coprocessor H a r d Disk AT GameKontrol ExpansionUnit XT Bus Mouse AILBus Mouse Parallel Printer EGA 2CO 2CF 2DO 2DF 2EO 2E7 2E8 2EF 2F8 2FF 300 3O F 310 31F 320 32F 378 3717 380 38F 3AO 3A...

Page 14: ...C i 2 r IN C Y 3 H I c 4 i l CH 5 it A CH 6 HI IU CH 7 HI IN LL GND LL GNC PWR COM EX2 EX 1 1 PO lP1 REL 1 C REL 0 X 0 REL 0 K C 2 4 SOFTWARE INSTALLATION Backing Up The Distribution Software As soon...

Page 15: ...e purpose is to assist you in setting up Board parameters and saving them to a new or existing configuration file The default configuration file in your Distribution Software is ADCI6 CFG however the...

Page 16: ...retainer screw for the rear panel adapter plate 7 Replace the computer s cover 8 Plug in all cords and cables Turn the power to the computer back on You are now ready to adapter plate Then slide the p...

Page 17: ...digital outputs two TTL CMOScompatible digital inputs and access for power signals TBl allows direct connection to the two internal Form C relays on the ADC 16 Note that the signals through TBl and T...

Page 18: ...ber you cannot install more than eight STA EX8s I 7 Make all other STA EX8 connections as required by your application 8 Replace the cover s on the STA EX8 s INPUT CHANNELASSIGNMENTS When programming...

Page 19: ...6 CHANNEL 2 0 CH7 CHANNEL 21 EX0 CHANNEL 3 EX1 CHANNEL 1 EX2 CHANNEL 2 EX3 CHANNEL 3 EX4 CHANNEL 4 EX5 CHANNEL 5 EX5 CHANNEL 6 EX7 CHANNEL 7 STA EX8 CHO STA EX8 l CH1 STA EX8 2 CH2 CHANNEL 5 C q 3 CHA...

Page 20: ...as well as to debug monitor operation By selecting the data logging menu you may turn the ADC 16 into an automatic data logging system Chapter 4 contains instructions for loading the Pop Up Control P...

Page 21: ...ackground operations of the Pop Up Control Panel for the ADC 16 and other products from the manufacturer This driver occupies approximately 55K of DOS memory and it must be loaded before PADC16 EXE Th...

Page 22: ...istribution Software to automatically install the basic driver loading instructions in AUTOEXEC BAT To use this utility log to the directory containing the Distribution Softwareand type ADCSETUY c Ent...

Page 23: ...gs 4 4 SYNTAX CONVENTIONS Unless otherwise noted the syntax for the driver load unload sections Sections4 5 and 4 6 use the followingcharacter formattingrules Bold Indicates a mandatory entry as follo...

Page 24: ...Alt key s plus any choice of A through Z F1 through F10 O through 9 o r Tab Esc or Note that your entry must be spelled out For example entering HK F1 assigns the function key F1 to be the Help Key O...

Page 25: ...b Esc or Note that your entry must be spelled out For example entering SK F3 assigns the function key F3 as the Mode Select key Or entering SK C t r l S specifies that the Ctrl and S keys must be pres...

Page 26: ...they must be preceded by an ampersand and an H forexample H 3 0 0 Make certain the Base Address you enter has not been already assigned to another device F cfgfile DefaultOverride allows you to chang...

Page 27: ...the following characters are acceptable A through Z 0 through 9 I c 1 c Note that and are illegal For example NAME ADC16 Use this switch to list all command line options for the ADC16 EXE driver When...

Page 28: ...require access to the DOS ANSI SYSfile ANSI SYSis generally included with the files in your computer s DOS software To activate ANSI SYS you must modify your computer s CONFIG SYS file to include an...

Page 29: ...on the Panel 3 Connect known voltages to Analog Input channels and repeat Step 2 to put the Analog Panel Jt the top of your display To Get Up Running Via Hot Keys 1 With the board installed and driver...

Page 30: ...CONTROL PANEL The Control Panel of the Pop Up Control Panel appears as follows Control Panel Menu This menu appears along the top of the Panel and contains three options as follows This option toggles...

Page 31: ...nel A D Data The monitor panel for the A D conversion s appears as follows Only the channels specified by Start and Stop under Setup will show results These results update with each conversion cycle 5...

Page 32: ...efer to one or more of these example programs while reading this chapter Sincethe syntax and application of the BASIC languages are different this chapter describes programming in each language separa...

Page 33: ...m is in standard BASIC source code with an Insert Your CodeHere section When you begin a program it willbe easiest to begin with the Quick Start program and add new sections to the existingcode The al...

Page 34: ...on 2 6 for the ADC 16hardware BaseAddress Interrupt Level input configuration The ADCl6DevOpen command performs this function which is demonstrated along with other required initialization functions i...

Page 35: ...the ADC16A or ADCl6B Handle to determine the selected board Immediate Execution Commands Frames Two types of Call commands may be used to control the ADC 16 once the driver is installed and the Board...

Page 36: ...ing Frames For Digital Output the Frame is a means of returning the value of the Digital Output port For Analog Input the Frame is the group of all setup parameters used in a synchronous or interrupt...

Page 37: ...Frame A NUMOFBRDS O EWLAG O BRDNUM O DIM BUFFER 20 SAMPLES 2 STARTCHAN O STOPCHAN O GAINCHAN O X O BUFFEROFFSET 0 440 450 I 460 470 480 490 500 I 510 520 530 540 550 560 570 580 590 600 610 620 630 64...

Page 38: ...ll is used to open the frame with the variable name ADSET for the ADC 16 board referred to by variable DEVHANDLE The FRAME is filled with the start stop channels and gain using the call KSETSTARTSTOPG...

Page 39: ...learn fasterby simply referring to the various example programs supplied with the ADC 16 Quick Start Program To aide in the creation of programs the Distribution Software includes a Quick Sfarfprogram...

Page 40: ...s well as the other required initialization functions are shown in the example program at the end of this section The syntax for this call is as follows A ADC16 CFG CHRS 0 read ADC 16 config file Derr...

Page 41: ...BrdNum 0 First ADC 16 board Derr ADCl6GetDevHandle BrdNum ADCl6A BrdNum 1 Second ADC 16 board Derr ADCl6GetDevHandle BrdNum ADCl6B Subsequent function calls will use the ADCl6A or ADC16B Handle for ei...

Page 42: ...he digital inputs Write the digital outputs FRAMES Analog Input and Digital Output allow for operation using Frames For Digital Output the Frame is a means of returning the value of the Digital Output...

Page 43: ...s AS INTEGER DIM DERR AS INTEGER DIM DEVHANDLE AS LONG DIM ADSET AS LONG DIM STATUS AS INTEGER DIM COUNT AS LONG DIM LONGADD AS LONG DIM StopChan AS INTEGER DIM StartChan AS INTEGER DIM GGAIN AS INTEG...

Page 44: ...pecified in a channel gainarray 6 4 QBASIC Program Flow A typical programming sequenceis as follows 1 2 3 4 5 6 Initialize the pointers to the driver Load the driver Declare and dimension all variable...

Page 45: ...TEGER Declare the driver function names as integer variables DIM KRESTORECHNGARY AS INTEGER Declare a l l variables used i n the program DIM NumOfBrds AS INTEGER declare integer variables DIM D e r r...

Page 46: ...in a multiboard system would not know which board to call The board Handle is the last parameter in each of the ADC 16 QBASIC calls The Handle for each board is returned by the ADC16GetDevHandle comma...

Page 47: ...forms a single A D conversion The syntax for this command is as follows For a singleA D conversion on Channel 0 with Gain Range 0 the call would be Chan 0 Gain 0 CALL ABSOLUTE DevHandle Chan Gain ADVa...

Page 48: ...nie or KGetDOFrame Setup the parameters within the Frame Execute the desired Frame function Check the status of the operation initiated The following program segment is similar to the QBASEX7 BASexamp...

Page 49: ...NTEGER rds defined i n CFG f i l e DIM ERRE LAG AS INTEGER Holds function e r r o r returns DIM DEVHANDLE AS LONG Device Handle a l l handles are 4 bytes DIM ADFRAME AS LONG DIM STARTCH AS INTEGER DIM...

Page 50: ...ME 39 KSETBUF 42 KSETSTARTSTOPG 54 KGETSTARTSTOPG 57 KSETCHN 60 KGETCHN 63 KSETSTARTSTOPCHN 66 KGETSTARTSTOPCHN 69 KSETG 72 KGETG 75 KSETCHNGARY 78 KCHKFRAME 129 KINITFRAME 132 KSYNCSTART 135 KINTSTAR...

Page 51: ...follows ADC16DevOpen ADClbGetDevHandle KDASDevInit Initializea DAS driver using a configuration file Get a handle to the logical device associated with an adapter card Initializea DASdriver and all as...

Page 52: ...rame you would use Frame Parameter functions to set up the analog input channels to be sampled the gain to apply to these channels the A D sampling rate etc KSetChn KGetChn Specifya channel for single...

Page 53: ...etc If a Device also contains all the fundamental configuration data BaseAddress Interrupt Level etc for a particular board it is unique to that board and is therefore a Logical Device Device Handle A...

Page 54: ...lect the syntax for any language Under this scheme examples reflect the syntaxes for their respective languages and takes the forms InterpretedBASIC xxl0 CALL FunctionName Parameterl ParameterN Return...

Page 55: ...l the driver to use the default configuration file name ADC16 CFG N u m b e r O f B o a r d s an integer value that determines the number of boards in the system 2 or 2 see comments for restrictions e...

Page 56: ...value DASErr error code number 0 if no error see also ADC16DevOpen comments ADC16GetDevHandle returns a unique devicehandle for identifying a specific ADC 16board Multiple board applications know how...

Page 57: ...his value must be previously DIMensioned as an array of two integers For QBASICand QuickBASIC it is DIMensioned as a single long integer DASErr integer variable 0 No Error return value see also KDIRea...

Page 58: ...e 0 if checking a frame to be used in Sync Mode Type 1if checking a frame to be used in Interrupt Mode None DasErr integer variable 0 No Error KGetADFrame KGetDOFrame KFreeFrame KChkFrame ensures that...

Page 59: ...from a previous KGetADFrame call exit parameters None return value DASErr error number 0 No Error see also KInitFrame comments KClearFrame performsa software re initializationof all parameters within...

Page 60: ...the Device parameters to their initial state Later KDASDevInit may be called as required for example when your program has just finished a synchronous acquisition and you want to do an Interrupt opera...

Page 61: ...IVulue a variable that contains the data sample In Interpreted BASIC this value must be previously DIMensioned as an array of two integers For QBASIC and QuickBASIC it is DIMensioned as a single LONG...

Page 62: ...a singleLONG integer Bit0 OPO Bit1 OP1 Bit2 EX1 Bit3 EX2 Bit4 EX4 Digital Output on EXI EX2 and EX4 is disabled if the ADC 16is configured seeChapter 2 Section 2 5 1with STA EX8 boards exitparameters...

Page 63: ...nel gain array This array is passed to the driver using KSetChnGAry For the driver to accept this array it must be in specificformat this format is not achievable directly from BASIC m o r m a t c b n...

Page 64: ...obtained from a previous KGetADFrame or KGetDOFrame call exitparameters None return value DASErr integer variable 0 No Error see also KGetADFrame KGetDOFrame KChkFrame comments None Examples Interpre...

Page 65: ...in the frame DASErr integer variable 0 No Error KChkFrame KFreeFrame KGetADFrame returns a handle to a parameter list referred to as aframe Frame parameters describe all aspects of a data acquisition...

Page 66: ...FrumeHundle frame handle obtained from previous KGetADFrame call Chan integer variable to receive the Start Channel associated with FrumeHundle DASErr integer variable 0 No Error KSetChn If the curre...

Page 67: ...Bit2 EX1 Bit3 E X Bit4 EX4 return value DASEv integer variable 0 No Error see also KSetDOFrame KDOWrite comments KGetDOCurVal reads a value up to 5bits that is currently assigned to the digital outpu...

Page 68: ...0 if an error condition occurs return value DASErr integer variable 0 No Error see also KChkFrame KFreeFrame comments KGetDOFrame returns a frame handle which identifies a parameter list referred to a...

Page 69: ...overall applied to all Analog Input channels Gain code associated with the frame CODE GAIN 0 1 1 10 2 100 DASErr integer variable 0 No Error KSetG KGetG returns the global Gain code currently applied...

Page 70: ...iated with FrameHandle Limits of STA EX8s 8 8 of STA EX8s 1 StopChn integer variable containing the stop channel associated with FrameHandle Limits of STA EX8s 8 8 of STA EX 1 return value DASEn integ...

Page 71: ...start channel associated with FrameHandIe Limits of STA EX8s 8 8 of STA EX8s 1 SropChn integer variablecontaining the stopchannel associated with FrameHandle limits of STA EX8s 8 8 of STA EX8s 1 Gain...

Page 72: ...rn value DASErr integer variable 0 No Error see also None comments Both the pSpecVer and pDriverVer integers are returned in the same format The version number is represented in the form y xx The y va...

Page 73: ...all is not required because ADC16DevOpen opens and reads the configuration file setting all the frame parameters to their initial state KInitFrame may be used any time an operation is not in process t...

Page 74: ...capabilitiesto transfer the acquired data to the PC memory at speeds limited to approximately 16Hz This limitation occursbecause of the maximum sampling rate of the integrating A D converter Because...

Page 75: ...n active 0 Interrupt operation idle Count long integer to receivecurrent sample transfer count samples transferred so far DASEv integer variable 0 No Error KIntStart KIntStop KIntStatus monitors the s...

Page 76: ...s transferred so far return value DASErr integer variable 0 No Error seealso KIntStart KIntStatus comments KIntStop is used whenever you wish to prematurely terminate an Interrupt operation initiated...

Page 77: ...uf allows Interpreted BASIC users to transfer data to from an internal buffer not easily accessible from BASIC to from a BASIC user array You would normally use this Call after a KIntStart operation e...

Page 78: ...r y ChanGain 0 ChanGain 0 array of Channel Gain pairs to be restored ChanGaidO restored array of Channel Gain pairs DASErr integer variable 0 No Error KFormatChnGAry KRestoreChnGAry restores the user...

Page 79: ...Interpreted BASIC only BufAddr long integer address value of memory area to be assigned to the frame for QuickBASICand QBASIConly Samples long integer specifylngthe number of samples associated with...

Page 80: ...e DASEn integer variable 0 No Error see also KSetStartStopChn comments KSetStartStopChn is used to specify a range of channels for KSyncStart or KIntStart operations For instance several A D channels...

Page 81: ...h is not achievablefrom BASIC BASICdoes not support byte sized variables From BASIC always use KFormatChnGAry before KSetChnGAry as shown in the examples below When no longer needed by the driver this...

Page 82: ...turn value DASErr integer variable 0 No Error see also KGetG KStartStopG KSetChnGAry comments KSetG sets the analog gain for a specified frame KSetStartStopG sets the start and stop channel numbers an...

Page 83: ...ariable 0 No Error KGetStartStopChn KSetChn KSetChn is used to specifya channel for a singlechannel operation As an example KSetChn would typicallybe used to specify the channel for KADRead KSetStartS...

Page 84: ...ets the analog gain for a specified frame KSetStartStopG sets the start and stop channel numbers and the gain for a specified frame This function is an expedient way to combine KSetStartStopChn and KS...

Page 85: ...Start takes a frame handle as an input parameter This handle is obtained by a KGetADFrame function and therefore defines the typeof operation KSyncStart is a foreground operation and does not return u...

Page 86: ...son 8 2 I O REGISTER ADDRESS MAP The AX 16 uses four consecutive Base Addresses in the computer I O space as shown in the following table Note that in the table R read and W write LOCATION FUNCTION TY...

Page 87: ...1 G O CH4 CH2 CH1 EX4 EX2 EX1 Data is readable from the A D converter only when an A D conversion is not in process Always check the A D BUSY Bit in the Status Register BaseAddress 3 before initiating...

Page 88: ...r time to settle select the channel and gain about 50 microseconds before an A D conversionis initiated If you are programming in Interpreted BASIC the software delays will more than exceed the requir...

Page 89: ...fore they are written to the control register Also set OPO and OP1 to 0 during initialization to ensure that the variable reflects the true state of the bit 8 6 STATUS REGISTER BASE ADDRESS 3 The Stat...

Page 90: ...ad the A D high byte and sign read Base Address O 10 Read the A D low byte read Base Address l 11 Assemble high low byte data into one signed data word 16 bit integer 12 Repeat cycle for another conve...

Page 91: ...ADC 16 USER GUIDE 180 HI HI AND LH7F 190 RDG 256 HI OR LOW 200 PRINT reading lt RDG 32767 5 210 FOR DELAY 0 TO 5000 NEXT 220 CHAN CHAN 8 230 IF CHAN 65 THEN DONE TRUE 240 WEND 8 6...

Page 92: ...ase Address To find out how to reset the Base Address Switch The default settingis Main Menu To accessthe calibration routines Theseroutines consistof calibratingthe 1mA source Set 1mA Source and cali...

Page 93: ...de of the shipping container Note that if you are submitting your equipment forrepair under warranty you must furnish the invoice number and date of purchase When returning equipment forrepair please...

Page 94: ...f the specified Base Address is out of range This error is typicallyreturned during the initializationprocess Error 6004 Error Opening ConfigurationFile Returned when Device Configuration does not ope...

Page 95: ...Error 7003 Bad Base Address An illegalbase address was specified Valid base addresses range from 200 Hex to 3F8 Hex Error 7005 Bad Interrupt Level An illegal Interrupt level is specified Valid interru...

Page 96: ...or 8002 No Such Function Indicates that the specified function is out of bounds Error 8003 Illegal Card Number Indicates that the specified board number is not valid Error 8004 Bad Error Indicates tha...

Page 97: ...ADC 16 USER GUIDE Error 8020 Bad Revision SpecifiedDASrevision number is not valid Error 8021 Error ResourceBusy Illegal handle for frame Error 8022 UnknownError Number A 4...

Reviews: