AT-AO-6/10 User Manual

AT-AO-6/10
User Manual
Expansion Board for the PC AT/EISA
September 1994 Edition
Part Number 320379-01
© Copyright 1991, 1994 National Instruments Corporation.
All Rights Reserved.
National Instruments Corporate Headquarters
6504 Bridge Point Parkway
Austin, TX 78730-5039
(512) 794-0100
Technical support fax: (800) 328-2203
(512) 794-5678
Branch Offices:
Australia (03) 879 9422, Austria (0662) 435986, Belgium 02/757.00.20, Canada (Ontario) (519) 622-9310,
Canada (Québec) (514) 694-8521, Denmark 45 76 26 00, Finland (90) 527 2321, France (1) 48 14 24 24,
Germany 089/741 31 30, Italy 02/48301892, Japan (03) 3788-1921, Mexico 95 800 010 0793,
Netherlands 03480-33466, Norway 32-84 84 00, Singapore 2265886, Spain (91) 640 0085, Sweden 08-730 49 70,
Switzerland 056/20 51 51, Taiwan 02 377 1200, U.K. 0635 523545
Limited Warranty
The AT-AO-6 and AT-AO-10 are warranted against defects in materials and workmanship for a period of one year
from the date of shipment, as evidenced by receipts or other documentation. National Instruments will, at its option,
repair or replace equipment that proves to be defective during the warranty period. This warranty includes parts and
labor.
The media on which you receive National Instruments software are warranted not to fail to execute programming
instructions, due to defects in materials and workmanship, for a period of 90 days from date of shipment, as
evidenced by receipts or other documentation. National Instruments will, at its option, repair or replace software
media that do not execute programming instructions if National Instruments receives notice of such defects during
the warranty period. National Instruments does not warrant that the operation of the software shall be uninterrupted
or error free.
A Return Material Authorization (RMA) number must be obtained from the factory and clearly marked on the
outside of the package before any equipment will be accepted for warranty work. National Instruments will pay the
shipping costs of returning to the owner parts which are covered by warranty.
National Instruments believes that the information in this manual is accurate. The document has been carefully
reviewed for technical accuracy. In the event that technical or typographical errors exist, National Instruments
reserves the right to make changes to subsequent editions of this document without prior notice to holders of this
edition. The reader should consult National Instruments if errors are suspected. In no event shall National
Instruments be liable for any damages arising out of or related to this document or the information contained in it.
EXCEPT AS SPECIFIED HEREIN, NATIONAL INSTRUMENTS MAKES NO WARRANTIES, EXPRESS OR IMPLIED,
AND SPECIFICALLY DISCLAIMS ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR
PURPOSE . CUSTOMER'S RIGHT TO RECOVER DAMAGES CAUSED BY FAULT OR NEGLIGENCE ON THE PART
OF NATIONAL INSTRUMENTS SHALL BE LIMITED TO THE AMOUNT THERETOFORE PAID BY THE CUSTOMER.
NATIONAL INSTRUMENTS WILL NOT BE LIABLE FOR DAMAGES RESULTING FROM LOSS OF DATA, PROFITS,
USE OF PRODUCTS, OR INCIDENTAL OR CONSEQUENTIAL DAMAGES, EVEN IF ADVISED OF THE POSSIBILITY
THEREOF. This limitation of the liability of National Instruments will apply regardless of the form of action,
whether in contract or tort, including negligence. Any action against National Instruments must be brought within
one year after the cause of action accrues. National Instruments shall not be liable for any delay in performance due
to causes beyond its reasonable control. The warranty provided herein does not cover damages, defects,
malfunctions, or service failures caused by owner's failure to follow the National Instruments installation, operation,
or maintenance instructions; owner's modification of the product; owner's abuse, misuse, or negligent acts; and
power failure or surges, fire, flood, accident, actions of third parties, or other events outside reasonable control.
Copyright
Under the copyright laws, this publication may not be reproduced or transmitted in any form, electronic or
mechanical, including photocopying, recording, storing in an information retrieval system, or translating, in whole
or in part, without the prior written consent of National Instruments Corporation.
Trademarks
LabVIEW ®, NI-DAQ ®, and RTSI ® are trademarks of National Instruments Corporation.
Product and company names listed are trademarks or trade names of their respective companies.
WARNING REGARDING MEDICAL AND CLINICAL USE
OF NATIONAL INSTRUMENTS PRODUCTS
National Instruments products are not designed with components and testing intended to ensure a level of reliability
suitable for use in treatment and diagnosis of humans. Applications of National Instruments products involving
medical or clinical treatment can create a potential for accidental injury caused by product failure, or by errors on
the part of the user or application designer. Any use or application of National Instruments products for or involving
medical or clinical treatment must be performed by properly trained and qualified medical personnel, and all
traditional medical safeguards, equipment, and procedures that are appropriate in the particular situation to prevent
serious injury or death should always continue to be used when National Instruments products are being used.
National Instruments products are NOT intended to be a substitute for any form of established process, procedure, or
equipment used to monitor or safeguard human health and safety in medical or clinical treatment.
Contents
About This Manual............................................................................................................. ix
Organization of This Manual ......................................................................................... ix
Conventions Used in This Manual................................................................................. x
Related Documentation.................................................................................................. x
Customer Communication ............................................................................................. x
Chapter 1
Introduction ......................................................................................................................... 1-1
What Your Kit Should Contain ..................................................................................... 1-1
Optional Software ......................................................................................................... 1-2
Optional Equipment ...................................................................................................... 1-3
Unpacking ..................................................................................................................... 1-3
Chapter 2
Configuration and Installation ...................................................................................... 2-1
Board Configuration ......................................................................................................2-1
AT Bus Interface................................................................................................2-1
Base I/O Address Selection................................................................................2-3
DMA Channel Selection ....................................................................................2-6
Interrupt Selection..............................................................................................2-7
Analog Output Configuration ........................................................................................2-8
Internal and External Reference.........................................................................2-9
External Reference Selection.................................................................2-10
Internal Reference Selection (Factory Setting)......................................2-11
Analog Output Polarity Selection ......................................................................2-11
Bipolar Output Selection (Factory Setting) ...........................................2-12
Unipolar Output Selection .....................................................................2-13
Hardware Installation.....................................................................................................2-14
Signal Connections ........................................................................................................2-14
Signal Connection Descriptions.........................................................................2-15
Analog Output Signal Connections....................................................................2-16
Digital I/O Signal Connections..........................................................................2-18
Power Connections ............................................................................................2-19
Update Timing Signal ........................................................................................2-20
Field Wiring Considerations ..........................................................................................2-20
Cabling Considerations..................................................................................................2-21
Chapter 3
Theory of Operation ..........................................................................................................3-1
Functional Overview......................................................................................................3-1
PC I/O Channel Interface Circuitry ...............................................................................3-2
Analog Output Circuitry ................................................................................................3-3
Voltage Output...............................................................................................................3-4
Current Output ...............................................................................................................3-5
Loading, Updating, and Calibrating the DACs..............................................................3-7
Digital I/O Circuitry.......................................................................................................3-8
RTSI Bus Interface Circuitry .........................................................................................3-9
© National Instruments Corporation
v
AT-AO-6/10 User Manual
Contents
Chapter 4
Programming........................................................................................................................4-1
Register Map..................................................................................................................4-1
Register Sizes.....................................................................................................4-2
Register Description.......................................................................................................4-2
Register Description Format ..............................................................................4-3
Configuration and Status Register Group ..........................................................4-4
CFG1 Register........................................................................................4-5
STATUS Register ..................................................................................4-8
CFG2 Register........................................................................................4-10
INT1CLR Register.................................................................................4-12
CFG3 Register........................................................................................4-13
INT2CLR Register.................................................................................4-15
DMATCCLR Register ...........................................................................4-16
MSM82C53 Counter/Timer Register Group .....................................................4-17
CNTR1 Register.....................................................................................4-18
CNTR2 Register.....................................................................................4-19
CNTR3 Register.....................................................................................4-20
CNTRCMD Register..............................................................................4-21
Read-Back Command ................................................................4-23
Status Byte .................................................................................4-24
RTSI Bus Register Group ..................................................................................4-25
RTSISHFT Register...............................................................................4-26
RTSISTRB Register...............................................................................4-27
Digital I/O Register Group.................................................................................4-28
DIN Register ..........................................................................................4-29
DOUT Register ......................................................................................4-30
Analog Output Register Group ..........................................................................4-31
FIFO WRITE Register...........................................................................4-32
FIFO CLEAR Register...........................................................................4-33
DAC0 through DAC9 Registers ............................................................4-34
Programming Considerations.........................................................................................4-39
Register Programming Considerations ..............................................................4-39
Initializing the AT-AO-6/10 Board....................................................................4-39
Programming the Analog Output Circuitry .......................................................4-40
Immediately Updating the Analog Output.............................................4-40
Using the Update Signal for Waveform Generation..............................4-40
Analog Output Channel Group ..................................................4-40
Select Update Source Signal for a Group ..................................4-40
Group 1 Scan Mode Using DMA ..............................................4-41
Group 1 Scan Mode Using Interrupt..........................................4-42
Group 1 Scan Mode Using Retransmission Feature of FIFO ....4-44
Group 1 Single-Channel Mode Using DMA or Interrupt..........4-45
Group 2 Using Interrupt.............................................................4-45
Application Hints ...................................................................................4-46
Programming the Digital I/O Circuitry..............................................................4-46
RTSI Bus Trigger Line Programming Considerations ..................................................4-46
Programming the RTSI Switch......................................................................................4-47
AT-AO-6/10 User Manual
vi
© National Instruments Corporation
Contents
Chapter 5
Calibration Procedures .....................................................................................................5-1
Calibration DACs...........................................................................................................5-2
Reference Calibration ....................................................................................................5-3
Analog Output Calibration.............................................................................................5-3
Appendix A
Specifications ........................................................................................................................A-1
Analog Output................................................................................................................A-1
Explanation of Analog Output Specifications ...................................................A-2
Digital I/O ......................................................................................................................A-2
Power Requirements (from PC I/O Channel) ................................................................A-2
Physical ..........................................................................................................................A-3
Operating Environment..................................................................................................A-3
Storage Environment......................................................................................................A-3
Appendix B
I/O Connector.......................................................................................................................B-1
Signal Connection Descriptions.....................................................................................B-2
Appendix C
MSM82C53 Data Sheet.....................................................................................................C-1
Appendix D
Customer Communication...............................................................................................D-1
Glossary ......................................................................................................................Glossary-1
Index ..................................................................................................................................Index-1
© National Instruments Corporation
vii
AT-AO-6/10 User Manual
Contents
Figures
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
2-1.
2-2.
2-3.
2-4.
2-5.
2-6.
2-7.
2-8.
AT-AO-6/10 Parts Locator Diagram................................................................ 2-2
Example Base I/O Address Switch Settings..................................................... 2-4
DMA Jumper Settings for DMA Channel 5 (Factory Setting) ........................ 2-6
Interrupt Jumper Setting IRQ11 and IRQ12 (Factory Setting) ........................ 2-7
AT-AO-6/10 I/O Connector ............................................................................. 2-15
Analog Voltage Output Connections ............................................................... 2-17
Digital I/O Connections.................................................................................... 2-19
Update Timing.................................................................................................. 2-20
Figure
Figure
Figure
Figure
Figure
Figure
Figure
3-1.
3-2.
3-3.
3-4.
3-5.
3-6.
3-7.
AT-AO-6/10 Block Diagram............................................................................ 3-1
PC I/O Channel Interface Circuitry Block Diagram ........................................ 3-2
Analog Output Circuitry Block Diagram ......................................................... 3-4
Output Sink Current Versus Output Voltage ................................................... 3-6
Possible Current Loop Connection................................................................... 3-6
Digital I/O Circuitry Block Diagram................................................................ 3-8
RTSI Bus Interface Circuitry Block Diagram.................................................. 3-9
Figure 4-1.
RTSI Switch Control Pattern............................................................................ 4-48
Figure 5-1.
EEPROM Map ................................................................................................. 5-2
Figure B-1.
AT-AO-6/10 I/O Connector ............................................................................. B-1
Tables
Table 2-1.
Table 2-2.
Table 2-3.
Table
Table
Table
Table
Table
Table
2-4.
2-5.
2-6.
2-7.
2-8.
2-9.
Table 4-1.
Table 4-2.
Table 4-3.
Table 4-4.
Table 4-5.
AT Bus Interface Factory Settings ................................................................... 2-1
Default Settings of National Instruments Products for the PC......................... 2-3
Switch Settings with Corresponding Base I/O Address and
Base I/O Address Space ................................................................................... 2-5
DMA Channels for the AT-AO-6/10 ............................................................... 2-6
Analog Output Jumper Settings ....................................................................... 2-8
External Reference Selection ........................................................................... 2-10
Internal Reference Selection ............................................................................ 2-11
Bipolar Output Selection.................................................................................. 2-12
Unipolar Output Selection................................................................................ 2-13
AT-AO-6/10 Register Map .............................................................................. 4-1
Analog Output Voltage Versus Digital Code (Unipolar Mode)....................... 4-36
Analog Output Voltage Versus Digital Code (Bipolar,
Straight Binary Mode)...................................................................................... 4-37
Analog Output Voltage Versus Digital Code (Bipolar,
Two's Complement Mode)............................................................................... 4-38
RTSI Switch Signal Connections..................................................................... 4-47
AT-AO-6/10 User Manual
viii
© National Instruments Corporation
About This Manual
This manual describes the mechanical and electrical aspects of the AT-AO-6/10 board and
contains information concerning its operation and programming. The AT-AO-6/10 is a highperformance, analog output and digital I/O board for the IBM PC AT and compatibles and EISA
personal computers (PCs). The AT-AO-6/10 refers to two versions of the board: the six-digitalto-analog converter (DAC) AT-AO-6 and the ten-DAC AT-AO-10. It contains six/ten 12-bit
DACs with both voltage and current outputs, and eight lines of transistor-transistor logic (TTL)compatible digital I/O.
Organization of This Manual
The AT-AO-6/10 User Manual is organized as follows:
•
Chapter 1, Introduction, describes the AT-AO-6/10; lists the contents of your AT-AO-6/10
kit, the optional software, and optional equipment; and explains how to unpack the AT-AO6/10 kit.
•
Chapter 2, Configuration and Installation, describes the AT-AO-6/10 jumper configuration,
installation of the AT-AO-6/10 in the PC, signal connections to the AT-AO-6/10, and cable
wiring.
•
Chapter 3, Theory of Operation, contains a functional overview of the AT-AO-6/10 and
explains the operation of each functional unit making up the AT-AO-6/10.
•
Chapter 4, Programming, describes in detail the address and function of each of the
AT-AO-6/10 registers. This chapter also includes important information about programming
the AT-AO-6/10.
•
Chapter 5, Calibration Procedures, discusses the calibration procedures for the AT-AO-6/10
analog output circuitry.
•
Appendix A, Specifications, lists the specifications for the AT-AO-6/10.
•
Appendix B, I/O Connector, shows the pinout and signal names for the AT-AO-6/10 50-pin
I/O connector, including a description of each connection.
•
Appendix C, MSM82C53 Data Sheet, contains the MSM82C53 Programmable Interval
Timer (Oki Semiconductor) data sheet. This counter/timer is used on the AT-AO-6/10.
•
Appendix D, Customer Communication, contains forms for you to complete to facilitate
communication with National Instruments concerning our products.
•
The Index alphabetically lists topics covered in this manual, including the page where the
topic can be found.
© National Instruments Corporation
ix
AT-AO-6/10 User Manual
About This Manual
Conventions Used in This Manual
The following conventions are used in this manual:
italic
Italic text denotes emphasis, a cross reference, or an introduction to a key
concept.
NI-DAQ
NI-DAQ is used throughout this manual to refer to the NI-DAQ software
for DOS/Windows/LabWindows unless otherwise noted.
PC
PC refers to the IBM PC AT and compatibles, and to EISA personal
computers.
AT-AO-6/10
AT-AO-6/10 refers to the AT-AO-6 and the AT-AO-10 boards.
Related Documentation
The following document contains information that you may find helpful as you read this manual:
•
IBM Personal Computer AT Technical Reference manual
You may also want to consult the following Oki Semiconductor manual if you plan to program
the MSM82C53 Counter/Timer used on the AT-AO-6/10:
•
Oki 82C53 Programmable Interval Timer technical manual
Customer Communication
National Instruments want to receive your comments on our products and manuals. We are
interested in the applications you develop with our products, and we want to help if you have
problems with them. To make it easy for you to contact us, this manual contains comment and
configuration forms for you to complete. These forms are in Appendix D, Customer
Communication, at the end of this manual.
AT-AO-6/10 User Manual
x
© National Instruments Corporation
Chapter 1
Introduction
This chapter describes the AT-AO-6/10; lists the contents of your AT-AO-6/10 kit, the optional
software, and optional equipment; and explains how to unpack the AT-AO-6/10 kit.
The AT-AO-6/10 is a high-performance analog output and digital I/O board for the PC. There are
two versions of the AT-AO-6/10: a version with six analog output channels and a version with ten
analog output channels. In this manual, the descriptions of analog output Channels 6 through 9
apply to the AT-AO-10 only. The AT-AO-6/10 has six/ten double-buffered, multiplying, 12-bit
DACs; unipolar and bipolar voltage output; 4 to 20 mA current output; an onboard DAC reference
voltage of 10 V; internal timer and external signal update capability for waveform generation; an
onboard 1,024-word FIFO buffer; transfer rates up to 200 ksamples/sec per channel; onboard
analog output auto calibration circuitry; eight digital I/O lines able to sink up to 24 mA of current;
timer-generated and externally generated interrupts; a high-performance RTSI bus interface; analog
output auto-initialization at startup; and full PC I/O channel DMA capability with analog output.
The AT-AO-6/10 is designed for applications such as automation of machine and process control,
instrumentation, and electronic test signal generation. The analog voltage outputs can be used for
functions such as 12-bit resolution voltage sourcing, analog function generation, and control signal
output. The 4 to 20 mA current outputs can be used in industrial control loops or any other
application that benefits from the inherent noise immunity of two-wire current loop
communication. The eight TTL-compatible digital I/O lines can be used for machine and process
control, intermachine communication, and relay switching control.
The AT-AO-6/10 is interfaced to the National Instruments RTSI bus. With this bus, National
Instruments AT Series boards can send timing signals to each other. The AT-AO-6/10 can send
signals from the onboard counter/timer to another board, or another board can send control signals
to the AT-AO-6/10.
Detailed specifications for the AT-AO-6/10 are listed in Appendix A, Specifications.
What Your Kit Should Contain
Each version of the AT-AO-6/10 board has a different part number and kit part number, listed as
follows.
Kit Name
Kit Part Number
Kit Component
Board Part
Number
AT-AO-6
776541-01
AT-AO-6 board
181435-06
AT-AO-10
776542-02
AT-AO-10 board
181435-10
© National Instruments Corporation
1-1
AT-AO-6/10 User Manual
Introduction
Chapter 1
The board part number is printed on your board along the top edge on the component side. You
can identify which version of the AT-AO-6/10 board you have by looking up the part number in
the preceding table.
In addition to the board, each version of the AT-AO-6/10 kit contains the following components.
Kit Component
Part Number
AT-AO-6/10 User Manual
NI-DAQ software for DOS/Windows/LabWindows, with manuals
NI-DAQ Software Reference Manual for DOS/Windows/LabWindows
NI-DAQ Function Reference Manual for DOS/Windows/LabWindows
320379-01
776250-01
320498-01
320499-01
If your kit is missing any of the components or if you received the wrong version, contact National
Instruments.
Your AT-AO-6/10 is shipped with the NI-DAQ software for DOS/Windows/LabWindows.
NI-DAQ has a library of functions that can be called from your application programming
environment. These functions include routines for analog input (A/D conversion), buffered data
acquisition (high-speed A/D conversion), analog output (D/A conversion), waveform generation,
digital I/O, counter/timer, SCXI, RTSI, and self-calibration. NI-DAQ maintains a consistent
software interface among its different versions so you can switch between platforms with minimal
modifications to your code. NI-DAQ comes with language interfaces for Professional BASIC,
Turbo Pascal, Turbo C, Turbo C++, Borland C++, and Microsoft C for DOS; and Visual Basic,
Turbo Pascal, Microsoft C with SDK, and Borland C++ for Windows. NI-DAQ software is on
high-density 5.25 in. and 3.5 in. diskettes.
Optional Software
This manual contains complete instructions for directly programming the AT-AO-6/10. Normally,
however, you should not need to read the low-level programming details in the user manual
because the NI-DAQ software package for controlling the AT-AO-6/10 is included with the board.
Using NI-DAQ is quicker and easier than and as flexible as using the low-level programming
described in Chapter 4, Programming.
You can use the AT-AO-6/10 with LabVIEW for Windows or LabWindows for DOS. LabVIEW
and LabWindows are innovative program development software packages for data acquisition and
control applications. LabVIEW uses graphical programming, whereas LabWindows enhances
Microsoft C and QuickBASIC. Both packages include extensive libraries for data acquisition,
instrument control, data analysis, and graphical data presentation.
AT-AO-6/10 User Manual
1-2
© National Instruments Corporation
Chapter 1
Introduction
Part numbers for these software packages are listed in the following table.
Software
Part Number
LabVIEW for Windows
LabWindows for DOS
Standard package
Advanced Analysis Library
Standard package with the Advanced Analysis Library
776670-01
776473-01
776474-01
776475-01
Optional Equipment
Equipment
Part Number
CB-50 I/O connector block (50 screw terminals)
with 0.5-m type NB1 cable
with 1.0-m type NB1 cable
AT Series RTSI bus cables for
2 boards
3 boards
4 boards
5 boards
776164-01
776164-02
776249-02
776249-03
776249-04
776249-05
Unpacking
Your AT-AO-6/10 board is shipped packaged in an antistatic package to prevent electrostatic
damage to the board. Several components on the board can be damaged by electrostatic discharge.
To avoid such damage in handling the board, take the following precautions:
•
Touch the antistatic package to a metal part of your PC chassis before removing the board from
the pacakge.
•
Remove the board from the package and inspect the board for loose components or any other
sign of damage. Notify National Instruments if the board appears damaged in any way. Do
not install a damaged board into your computer.
© National Instruments Corporation
1-3
AT-AO-6/10 User Manual
Chapter 2
Configuration and Installation
This chapter describes the AT-AO-6/10 jumper configuration, installation of the AT-AO-6/10 in the
PC, signal connections to the AT-AO-6/10, and cable wiring.
Board Configuration
The AT-AO-6/10 contains 24 jumpers (only 16 are used on the AT-AO-6 version) and one DIP
switch. Jumpers W22, W23, and W24 on the AT-AO-6/10 select the DMA channel and the
interrupt level. Jumpers W1 through W13 on the AT-AO-6 and Jumpers W1 through W20 on the
AT-AO-10 configure the analog output circuitry. Jumper W21 is used for initial calibration
functions and should not be changed, so it is removed from the board prior to shipping. The DIP
switch is used to set the base I/O address. The jumpers and DIP switch are shown in the parts
locator diagram in Figure 2-1.
AT Bus Interface
The AT-AO-6/10 is configured at the factory to a base I/O address of 1C0 hex, to use DMA
Channel 5, and to use interrupt levels 11 and 12. These settings (shown in Table 2-1) are suitable
for most systems. However, if your system has other hardware at this base I/O address, DMA
channel, or interrupt level, you need to change these factory settings on the AT-AO-6/10 (as
described in the following pages) or on the other hardware.
Base I/O Address
A9
A8
A7
A6
A5
Table 2-1. AT Bus Interface Factory Settings
Hex 1C0
(factory setting)
ON
U72
(The white portion indicates the
position of the raised part of the slide
switch.)
DMA Channel
DMA Channel 5
(factory setting)
W22: DRQ5, DACK5
W24: no jumpers
Interrupt Level
Group 1 interrupt level 11 selected
Group 2 interrupt level 12 selected
(factory setting)
W23: Row 11
W23: Row 12
© National Instruments Corporation
2-1
AT-AO-6/10 User Manual
Chapter 2
Configuration and Installation
Base I/O Address Selection
The base I/O address for the AT-AO-6/10 is determined by the switches at position U72 (see
Figure 2-1). The switches are set at the factory for the base I/O address 1C0 hex. This factory
setting is used by National Instruments software packages as the default base I/O address value for
the AT-AO-6/10. The AT-AO-6/10 uses the base I/O address space 1C0 hex through 1DF hex
with the factory setting.
Note: Verify that this space is not already used by other equipment installed in your computer. If
any equipment in your computer uses this base I/O address space, change the base I/O
address of the AT-AO-6/10 or of the other device. If you change the AT-AO-6/10 base I/O
address, make a corresponding change to any software packages you use with the
AT-AO-6/10. Table 2-2 lists the default settings of other National Instruments products for
the PC. For more information about the I/O address of your PC, refer to the technical
reference manual for your computer.
Table 2-2. Default Settings of National Instruments Products for the PC
Board
DMA Channel
Interrupt Level
AT-A2150
AT-AO-6/10
AT-DIO-32F
AT-DSP2200
AT-GPIB
AT-MIO-16
AT-MIO-16D
AT-MIO-16F-5
AT-MIO-16X
AT-MIO-64F-5
GPIB-PCII
GPIB-PCIIA
GPIB-PCIII
Lab-PC
Lab-PC+
PC-DIO-24
PC-DIO-96
PC-LPM-16
PC-TIO-10
None*
Channel 5
Channels 5, 6
None*
Channel 5
Channels 6, 7
Channels 6, 7
Channels 6, 7
None*
None*
Channel 1
Channel 1
Channel 1
Channel 3
Channel 3
None
None
None
None
None*
Line 11, 12
Lines 11, 12
None*
Line 11
Line 10
Line 10
Line 10
None*
None*
Line 7
Line 7
Line 7
Line 5
Line 5
Line 5
Line 5
Line 5
Line 5
Base I/O Address
120 hex
1C0 hex
240 hex
120 hex
2C0 hex
220 hex
220 hex
220 hex
220 hex
220 hex
2B8 hex
02E1 hex
280 hex
260 hex
260 hex
210 hex
180 hex
260 hex
1A0 hex
* These settings are software configurable and are disabled at startup time.
© National Instruments Corporation
2-3
AT-AO-6/10 User Manual
Configuration and Installation
Chapter 2
A9
A8
A7
A6
A5
The base address DIP switch is arranged so that you select a logical 1 or true state from the
associated address selection bit by pushing the toggle switch down, or toward the bottom of the
board. Alternately, you select a logical 0 or false state by pushing the toggle switch up, or toward
the top of the board. In Figure 2-2B, for example, A9 is up (false), A8 through A6 are down
(true), and A5 is up (false). This represents a hex value of IC0. The AT-AO-6/10 decodes the five
least significant bits of the address (A4 through A0) to select the appropriate AT-AO-6/10 register.
Table 2-3 lists the possible switch settings, the corresponding base I/O address, and the base I/O
address space used for that setting.
ON
U72
A9
A8
A7
A6
A5
A. Switches Set to Base I/O Address of Hex 000
ON
U72
B. Switches Set to Base I/O Address of Hex 1C0 (Factory Setting)
Figure 2-2. Example Base I/O Address Switch Settings
AT-AO-6/10 User Manual
2-4
© National Instruments Corporation
Chapter 2
Configuration and Installation
Table 2-3. Switch Settings with Corresponding Base I/O Address and Base I/O Address Space
Switch Setting
A9 A8 A7 A6 A5
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
Base I/O Address
(hex)
Base I/O Address
Space Used (hex)
000
020
040
060
080
0A0
0C0
0E0
100
120
140
160
180
1A0
1C0
1E0
200
220
240
260
280
2A0
2C0
2E0
300
320
340
360
380
3A0
3C0
3E0
000 - 01F
020 - 03F
040 - 05F
060 - 07F
080 - 09F
0A0 - 0BF
0C0 - 0DF
0E0 - 0FF
100 - 11F
120 - 13F
140 - 15F
160 - 17F
180 - 19F
1A0 - 1BF
1C0 - 1DF
1E0 - 1FF
200 - 21F
220 - 23F
240 - 25F
260 - 27F
280 - 29F
2A0 - 2BF
2C0 - 2DF
2E0 - 2FF
300 - 31F
320 - 33F
340 - 35F
360 - 37F
380 - 39F
3A0 - 3BF
3C0 - 3DF
3E0 - 3FF
Note: Base I/O address values 000 through 0FF hex are reserved for system
use. Base I/O address values 100 through 3FF hex are available on the
I/O channel.
© National Instruments Corporation
2-5
AT-AO-6/10 User Manual
Configuration and Installation
Chapter 2
DMA Channel Selection
The DMA channels used by the AT-AO-6/10 are selected by jumpers W22 and W24 (see
Figure 2-1). The AT-AO-6/10 is set at the factory to use DMA Channel 5. This channel is the
default DMA channel used by the AT-AO-6/10 software handler. Verify that this DMA channel is
not also used by equipment already installed in your computer. If any device uses DMA Channel
5, change the DMA channel used by either the AT-AO-6/10 or the other device. (Unless the
appropriate DMA modes have been enabled on the AT-AO-6/10 through software, the DMA
channel is by default in the high-impedance state at startup.) The DMA channels supported by the
AT-AO-6/10 hardware are Channel 0 through Channel 3 and Channel 5 through Channel 7. If the
AT-AO-6/10 is used in an AT-type computer, only DMA Channels 5 through 7 should be used
because these channels are the only 16-bit channels. If the board is used in an EISA computer, all
of the channels are 16-bit and can be used. The AT-AO-6/10 does not use and cannot be
configured to use the 8-bit DMA channels on the PC I/O channel.
Each DMA channel consists of two signal lines, as shown in Table 2-4.
Table 2-4. DMA Channels for the AT-AO-6/10
DMA
Channel
0
1
2
3
5
6
7
DMA
Acknowledge
DMA
Request
DACK0
DACK1
DACK2
DACK3
DACK5
DACK6
DACK7
DRQ0
DRQ1
DRQ2
DRQ3
DRQ5
DRQ6
DRQ7
(EISA bus)
(EISA bus)
(EISA bus)
(EISA bus)
(EISA and AT bus)
(EISA and AT bus)
(EISA and AT bus)
Two jumpers must be installed to select a single DMA channel. The DMA acknowledge and DMA
request lines selected must have the same number suffix for proper operation. Figure 2-3 shows
the jumper positions for selecting DMA Channel 5.
W22
EISA or AT Bus
•
•
•
•
•
DACK
•
1
•
•
•
DRQ
•
•
•
DACK
•
•
•
7
DRQ
DACK
DRQ
•
•
6
0
•
•
•
DRQ
DACK
DRQ
DACK
DACK
•
DACK
DRQ
•
5
•
DRQ
W24
EISA Only
2
3
•
Figure 2-3. DMA Jumper Settings for DMA Channel 5 (Factory Setting)
AT-AO-6/10 User Manual
2-6
© National Instruments Corporation
Chapter 2
Configuration and Installation
The DMA channel circuitry can be programmed for high-impedance state.
Interrupt Selection
The AT-AO-6/10 board can connect to any two of the eleven interrupt lines of the PC I/O channel.
Each interrupt line is selected by a jumper with the triple rows of pins located above the I/O slot
edge connector on the AT-AO-6/10 (refer to Figure 2-1). To use the interrupt capability of the
AT-AO-6/10, select an interrupt line and place the jumper in the appropriate position to enable that
particular interrupt line. The jumper on the upper two rows of interrupt line 11 selects the interrupt
level for Group 1 of the analog output channel, and the jumper on the lower two rows of interrupt
line 12 selects the interrupt level for Group 2 of the analog output channel.
The AT-AO-6/10 can share interrupt lines with other devices. Unless the appropriate interrupt
modes have been enabled on the AT-AO-6/10 through software, the interrupt line is by default in
the high-impedance state at startup. The interrupt lines supported by the AT-AO-6/10 hardware are
IRQ3, IRQ4, IRQ5, IRQ6, IRQ7, IRQ9, IRQ10, IRQ11, IRQ12, IRQ14, and IRQ15.
Note: Do not use interrupt line 6 or 14. Interrupt line 6 is used by the diskette drive controller,
and interrupt line 14 is used by the hard disk controller on most PCs.
Once you have selected an interrupt level, place the interrupt jumper on the appropriate pins to
enable the interrupt line.
The interrupt jumper set is W23. The default interrupt lines are IRQ11 for Group 1 and IRQ12 for
Group 2. These interrupt lines are selected by placing one jumper on the upper pins in row 11 and
the other jumper on the lower pins in row 12. Figure 2-4 shows the default interrupt jumper
settings IRQ11 and IRQ12. To change to other lines, remove the jumpers from IRQ11 and IRQ12
and place them on the new pins.
IRQ
15 14 12 11 10 9 7
for Group 1
for Group 2
6
5
4
3
• • •
• • • • • • •
• •
• • • • • • •
• •
• • • • • • • •
W23
Figure 2-4. Interrupt Jumper Setting IRQ11 and IRQ12 (Factory Setting)
Interrupts for both groups can be enabled or disabled via control bits on the AT-AO-6/10. These
control bits are described in the programming configuration registers. See Chapter 4,
Programming, for more information.
© National Instruments Corporation
2-7
AT-AO-6/10 User Manual
Configuration and Installation
Chapter 2
Analog Output Configuration
The AT-AO-6/10 is shipped from the factory with the following configuration–±10 V analog
output range with internal reference selected.
You can select different analog output configurations by using the jumper settings shown in Table
2-5. Table 2-5 lists all the available analog output configuration jumpers and notes the factory
settings. The following paragraphs describe each of the analog output configurations in detail.
Table 2-5. Analog Output Jumper Settings
Output Channel
Configuration
Channel 0
Reference: Internal (factory setting)
External
W1:
W1:
B-C
A-B
Unipolar
Bipolar (factory setting)
W3:
W3:
A-B
B-C
Reference: Internal (factory setting)
External
W2:
W2:
B-C
A-B
Unipolar
Bipolar (factory setting)
W4:
W4:
B-C
A-B
Reference: Internal (factory setting)
External
W5:
W5:
B-C
A-B
Unipolar
Bipolar (factory setting)
W7:
W7:
A-B
B-C
Reference: Internal (factory setting)
External
W6:
W6:
B-C
A-B
Unipolar
Bipolar (factory setting)
W8:
W8:
B-C
A-B
Reference: Internal (factory setting)
External
W9:
W9:
B-C
A-B
Channel 1
Channel 2
Channel 3
Channel 4
Channel 5
Jumper Settings
Unipolar
Bipolar (factory setting)
W11: A-B
W11: B-C
Reference: Internal (factory setting)
External
W10: B-C
W10: A-B
Unipolar
Bipolar (factory setting)
W12: B-C
W12: A-B
(continues)
AT-AO-6/10 User Manual
2-8
© National Instruments Corporation
Chapter 2
Configuration and Installation
Table 2-5. Analog Output Jumper Settings (continued)
Output Channel
Configuration
Jumper Settings
Channel 6
Reference: Internal (factory setting)
External
W13: B-C
W13: A-B
Unipolar
Bipolar (factory setting)
W15: A-B
W15: B-C
Reference: Internal (factory setting)
External
W14: B-C
W14: A-B
Unipolar
Bipolar (factory setting)
W16: B-C
W16: A-B
Reference: Internal (factory setting)
External
W17: B-C
W17: A-B
Unipolar
Bipolar (factory setting)
W19: A-B
W19: B-C
Reference: Internal (factory setting)
External
W18: B-C
W18: A-B
Unipolar
Bipolar (factory setting)
W20: B-C
W20: A-B
Channel 7
Channel 8
Channel 9
Internal and External Reference
Each DAC can be connected to the AT-AO-6/10 internal reference of 10 V or to the external
reference signal connected to the EXTREFX pin on the I/O connector. This signal applied to
EXTREFX must be between -10 V and +10 V. Each EXTREFX signal is shared by two DACs
that are in the same chip; that is, DAC0 and DAC1 share EXTREF0, DAC2 and DAC3 share
EXTREF2, etc. Both channels need not be configured the same way.
© National Instruments Corporation
2-9
AT-AO-6/10 User Manual
Configuration and Installation
Chapter 2
External Reference Selection
You select the external reference signal for each analog output channel by setting the following
jumpers as shown in Table 2-6:
Table 2-6. External Reference Selection
Channel
Jumper
Setting
Analog Output Channel 0
W1
A-B
External Reference
Configuration
•
A B C
Analog Output Channel 1
W2
A-B
•
A B C
Analog Output Channel 2
W5
A-B
•
A B C
Analog Output Channel 3
W6
A-B
•
A B C
Analog Output Channel 4
W9
A-B
•
A B C
Analog Output Channel 5
W10
A-B
•
A B C
Analog Output Channel 6
W13
A-B
•
A B C
Analog Output Channel 7
W14
A-B
•
A B C
Analog Output Channel 8
W17
A-B
•
A B C
Analog Output Channel 9
W18
A-B
•
A B C
AT-AO-6/10 User Manual
2-10
© National Instruments Corporation
Chapter 2
Configuration and Installation
Internal Reference Selection (Factory Setting)
You select the onboard 10 V reference for each analog output channel by setting the following
jumpers as shown in Table 2-7.
Table 2-7. Internal Reference Selection
Jumper
Factory Setting
Analog Output Channel 0
W1
B-C
Internal Reference
Configuration
•
Channel
A B C
W2
B-C
•
Analog Output Channel 1
A B C
W5
B-C
•
Analog Output Channel 2
A B C
W6
B-C
•
Analog Output Channel 3
A B C
W9
B-C
•
Analog Output Channel 4
A B C
W10
B-C
•
Analog Output Channel 5
A B C
W13
B-C
•
Analog Output Channel 6
A B C
W14
B-C
•
Analog Output Channel 7
A B C
W17
B-C
•
Analog Output Channel 8
A B C
W18
B-C
•
Analog Output Channel 9
A B C
Analog Output Polarity Selection
Each analog output channel can be configured for either unipolar or bipolar output. A unipolar
configuration has a range of 0 to Vref at the analog output. A bipolar configuration has a range of
© National Instruments Corporation
2-11
AT-AO-6/10 User Manual
Configuration and Installation
Chapter 2
-Vref to +Vref at the analog output. Vref is the voltage reference used by the DACs in the analog
output circuitry and can be either the 10 V onboard reference or an externally supplied reference
between -10 V and +10 V. Each channel is configured independently; at the factory, all channels
are configured for bipolar output.
Bipolar Output Selection (Factory Setting)
You select the bipolar output configuration for each analog output channel by setting the following
jumpers as shown in Table 2-8.
Table 2-8. Bipolar Output Selection
Jumper
Factory Setting
Analog Output Channel 0
W3
B-C
Bipolar Output
Configuration
•
Channel
A B C
Analog Output Channel 1
W4
A-B
•
A B C
W7
B-C
•
Analog Output Channel 2
A B C
Analog Output Channel 3
W8
A-B
•
A B C
W11
B-C
•
Analog Output Channel 4
A B C
Analog Output Channel 5
W12
A-B
•
A B C
W15
B-C
•
Analog Output Channel 6
A B C
Analog Output Channel 7
W16
A-B
•
A B C
W19
B-C
•
Analog Output Channel 8
A B C
Analog Output Channel 9
W20
A-B
•
A B C
AT-AO-6/10 User Manual
2-12
© National Instruments Corporation
Chapter 2
Configuration and Installation
Data can be written to the DAC in either straight binary mode or two's complement mode
depending on certain configuration register bits. When you use bipolar configuration, you must
select whether to write to the DAC in straight binary mode or two's complement mode. In straight
binary mode, data values written to the analog output channel range from 0 to 4,095 decimal (0 to
0FFF hex). In two's complement mode, data values written to the analog output channel range
from -2,048 to +2,047 decimal (F800 to 07FF hex).
Unipolar Output Selection
You select the unipolar output configuration for each analog output channel by setting the
following jumpers as shown in Table 2-9.
Table 2-9. Unipolar Output Selection
Channel
Jumper
Setting
Analog Output Channel 0
W3
A-B
Unipolar Output
Configuration
•
A B C
W4
B-C
•
Analog Output Channel 1
A B C
Analog Output Channel 2
W7
A-B
•
A B C
W8
B-C
•
Analog Output Channel 3
A B C
Analog Output Channel 4
W11
A-B
•
A B C
W12
B-C
•
Analog Output Channel 5
A B C
Analog Output Channel 6
W15
A-B
•
A B C
W16
B-C
•
Analog Output Channel 7
A B C
Analog Output Channel 8
W19
A-B
•
A B C
W20
B-C
•
Analog Output Channel 9
A B C
© National Instruments Corporation
2-13
AT-AO-6/10 User Manual
Configuration and Installation
Chapter 2
Notice that the straight binary format for data should be used when in unipolar output mode.
Hardware Installation
The AT-AO-6/10 can be installed in any available 16-bit expansion slot (AT Series) in your
computer. The AT-AO-6/10 does not work if installed in an 8-bit expansion slot (PC Series).
After you have made any necessary changes, verified, and recorded the switch and jumper settings
(a form is included for this purpose in Appendix D, Customer Communication), you are ready to
install the AT-AO-6/10. The following are general installation instructions, but consult the user
manual or technical reference manual of your PC for specific instructions and warnings.
1. Turn off your computer.
2. Remove the top cover or access port to the I/O channel.
3. Remove the expansion slot cover on the back panel of the computer.
4. Insert the AT-AO-6/10 into a 16-bit slot. Do not force the board into place.
5. Screw the mounting bracket of the AT-AO-6/10 to the back panel rail of the computer.
6. Check the installation.
7. Replace the cover.
The AT-AO-6/10 board is installed and ready for operation.
Signal Connections
This section describes input and output signal connections to the AT-AO-6/10 board via the
AT-AO-6/10 I/O connector, and includes specifications and connection instructions for the signals
given on the AT-AO-6/10 I/O connector.
Warning:
Connections that exceed any of the maximum ratings of input or output signals on
the AT-AO-6/10 can result in damage to the AT-AO-6/10 board and to the
PC. Maximum input ratings for each signal are given in this chapter under the
discussion of that signal. National Instruments is not liable for any damages
resulting from such signal connections.
Figure 2-5 shows the pin assignments for the AT-AO-6/10 I/O connector.
AT-AO-6/10 User Manual
2-14
© National Instruments Corporation
Chapter 2
Configuration and Installation
VOUT0
EXTREF0
1
2
IOUT0
3
4
RGND0
VOUT1
5
6
IOUT1
AGND0
7
8
AGND1
VOUT2
9 10
IOUT2
EXTREF2
11 12
RGND2
VOUT3
13 14
IOUT3
AGND2
VOUT4
15 16
AGND3
17 18
IOUT4
EXTREF4
19 20
RGND4
VOUT5
AGND4
21 22
23 24
IOUT5
AGND5
VOUT6
25 26
IOUT6
EXTREF6
27 28
VOUT7
29 30
RGND6
IOUT7
AGND6
31 32
VOUT8
33 34
AGND7
IOUT8
EXTREF8
VOUT9
35 36
RGND8
37 38
IOUT9†
AGND8
39 40
ADIO0
ADIO1
41 42
ADIO2
ADIO3
43 44
BDIO4
BDIO5
BDIO7
45 46
BDIO6
47 48
49 50
EXTUPDATE*
DGND
+5 V
†IOUT9 is used as the internal reference voltage
(2.5 V) output in the reference calibration mode.
Figure 2-5. AT-AO-6/10 I/O Connector
Signal Connection Descriptions
Pin
Signal Name
Description
1, 5, 9, 13,
17, 21, 25,
29, 33, 37
VOUT0 through VOUT9
These pins are the analog voltage outputs of Channel
0 through Channel 9.
© National Instruments Corporation
2-15
AT-AO-6/10 User Manual
Configuration and Installation
Pin
Signal Name
Chapter 2
Description (continued)
2, 6, 10, 14, IOUT0 through IOUT9†
18, 22, 26,
30, 34, 38
These pins are the analog current outputs of Channel
0 through Channel 9. The IOUT9 signal is
programmable and can be either analog current
output from Channel 9 or the 2.5 V onboard
reference signal. In the reference calibration mode,
this pin is used to monitor the internal 2.5 Vref.
3, 11, 19,
27, 35
EXTREF0 through
EXTREF8
These pins are the analog external reference inputs
for Channel 0 through Channel 9. Each external
reference input signal is shared by two channels.
Channel 0 and Channel 1 share EXTREF0, Channel
2 and Channel 3 shares EXTREF2, etc.
4, 12, 20,
28, 36
RGND0 through RGND8
These pins are the analog external reference ground
pins. Each of these five ground pins is the ground
reference to the corresponding EXTREFX signal.
7, 8, 15, 16, AGND0 through AGND8
23, 24, 31,
32, 39
These pins are the analog output ground pins for
each channel. Channel 8 and Channel 9 share one
ground pin, AGND8.
40, 41, 42,
43
ADIO0 through ADIO3
These pins are the digital I/O Port A signals.
44, 45, 46,
47
BDIO0 through BDIO3
These pins are the digital I/O Port B signals.
48
EXTUPDATE*
This pin is the external DAC Update. If selected, a
high-to-low edge on EXTUPDATE* results in the
selected outputs of DACs being updated with the
value written to them.
49
DGND
This pin is the digital ground. This pin supplies the
reference for the digital signals at the I/O connector
as well as the +5 VDC supply.
50
+5 V
This pin is the +5 VDC source. This pin is fused
for up to 1 A of +5 V supply.
The signals on the connector can be classified as analog output signals, digital I/O signals, digital
power connections, or update timing signals. Signal connection guidelines for each of these
groups are given in the following section.
Analog Output Signal Connections
Pins 1 through 39 of the I/O connector are analog output signal pins.
Pins 1, 5, 9, 13, 17, 21, 25, 29, 33 and 37 are the analog voltage output signal pins for analog
output Channels 0 through 9, respectively. Pins 2, 6, 10, 14, 18, 22, 26, 30, 34 and 38 are the
analog current output signal pins for Channels 0 through 9.
AT-AO-6/10 User Manual
2-16
© National Instruments Corporation
Chapter 2
Configuration and Installation
Pins 3, 11, 19, 27, and 35 are the external reference inputs for analog output channels. Each
analog output channel must be configured individually for external reference selection so the signal
applied at the external reference input is used by that channel. Analog output configuration
instructions are included under the Analog Output Configuration section earlier in this chapter.
The following ranges and ratings apply to the EXTREFX input:
Useful input voltage range:
Absolute maximum ratings:
±10 V peak with respect to RGND
±25 V peak with respect to RGND
Pins 4, 12, 20, 28, and 36 are the ground reference points for the external reference signals.
Pins 7, 8, 15, 16, 23, 24, 31, 32, and 39 are the ground reference points for the analog output
channels.
Figure 2-6 shows how to make analog voltage output connections and the external reference input
connection to Channel 0 and Channel 1 as an example.
3
+
External
Reference V
ref
Signal
(Optional)
-
+
Load
VOUT 0
-
EXTREF0
1 VOUT0
Channel 0
7 AGND0
4 RGND0
8 AGND1
Load
VOUT 1
+
Channel 1
5 VOUT1
Analog Output Channels
AT-AO-6/10 Board
Figure 2-6. Analog Voltage Output Connections
An example of the analog current output connection is given in Chapter 3, Theory of Operation.
The external voltage source is required to power the current loops.
The external reference signal can be either a DC or an AC signal. This reference signal is
multiplied by the DAC code to generate the output voltage.
© National Instruments Corporation
2-17
AT-AO-6/10 User Manual
Configuration and Installation
Chapter 2
Digital I/O Signal Connections
Pins 40 through 47 of the I/O connector are digital I/O signal pins.
Pins 40, 41, 42, and 43 are connected to the digital lines ADIO<3..0> for digital I/O Port A. Pins
44, 45, 46, and 47 are connected to the digital lines BDIO<3..0> for digital I/O Port B. Pin 49 is
the digital ground pin for both digital I/O ports. Ports A and B can be programmed individually to
be inputs or outputs.
The following specifications and ratings apply to the digital I/O lines.
Absolute maximum voltage
input rating
5.5 V with respect to DGND
Digital input specifications (referenced to DGND):
VIH input logic high voltage
VIL input logic low voltage
2 V minimum
0.8 V maximum
IIH input current load,
logic high input voltage
40 µA maximum
IIL input current load,
logic low input voltage
-120 µA maximum
Digital output specifications (referenced to DGND):
VOH output logic high voltage
VOL output logic low voltage
2.4 V minimum
0.5 V maximum
IOH output source current,
logic high
2.6 mA maximum
IOL output sink current,
logic low
24 mA maximum
With these specifications, each digital output line can drive 11 standard TTL loads and over 50 LS
TTL loads.
Figure 2-7 shows signal connections for three typical digital I/O applications.
AT-AO-6/10 User Manual
2-18
© National Instruments Corporation
Chapter 2
Configuration and Installation
+5 V
LED
40
41
42
43
Port A
ADIO<3..0>
44
45
46
47
TTL Signal
+5 V
Port B
BDIO<3..0>
49
Switch
DGND
I/O Connector
AT-AO-6/10 Board
Figure 2-7. Digital I/O Connections
In Figure 2-7, Port A is configured for digital output, and Port B is configured for digital input.
Digital input applications include receiving TTL signals and sensing external device states such as
the state of the switch in Figure 2-7. Digital output applications include sending TTL signals and
driving external devices such as the LED shown in Figure 2-7.
Power Connections
Pin 50 of the I/O connector provides +5 V from the PC power supply. This pin is referenced to
DGND and can be used to power external digital circuitry.
Power Rating
Warning:
1.0 A at +5 V ± 10%, fused
Under no circumstances should this +5 V power pin be connected directly to analog
or digital ground or to any other voltage source on the AT-AO-6/10. Doing so can
damage the AT-AO-6/10 and the PC. National Instruments is not liable for damage
resulting from such a connection.
© National Instruments Corporation
2-19
AT-AO-6/10 User Manual
Configuration and Installation
Chapter 2
Update Timing Signal
The EXTUPDATE* signal on pin 48 is a TTL-compatible input signal for analog output channel
updating. This signal line is pulled up to +5 V on the board, and is also connected to the RTSI
switch. The external device can drive this line low. The high-to-low edge on this line triggers an
internal active low pulse, EXTUPD*. The high-to-low edge of EXTUPD* initiates the update of
the selected, double-buffered, analog output channels, and the rising edge of the EXTUPD* signal
can generate a DataWriteEnable signal or an interrupt request to write new data to the selected
output channels. Figure 2-8 shows the timing diagram of these signals.
EXTUPDATE*
2.0 V min
tw
0.8 V max
EXTUPD*
tupd
td1
Data Write Enable
or
Interrupt Request
td2
20 nsec < t w <∞
td1 = 80 nsec max, 50 nsec typical
td2 = 50 nsec max, 20 nsec typical
t upd = 500 nsec
Figure 2-8. Update Timing
Field Wiring Considerations
Accuracy of signals generated by the AT-AO-6/10 can be seriously affected by environmental noise
when signal wires are run to and from the AT-AO-6/10.
Noise pickup and crosstalk can be minimized and signal accuracy optimized if the following
recommendations for analog signal connections are followed.
•
Use individually shielded, twisted-pair connections for voltage output signals. In such cases,
the voltage output and its corresponding analog ground signal wire are twisted together and the
shield is connected to the analog ground at the AT-AO-6/10. The other end of the shield is left
disconnected.
AT-AO-6/10 User Manual
2-20
© National Instruments Corporation
Chapter 2
Configuration and Installation
•
Reference inputs should also be connected via shielded twisted-pair connection. The shield
should be grounded at the signal source.
•
Current outputs are relatively immune to line loss and noise pickup and should be used for
signal transmission over long distances.
•
All AT-AO-6/10 signal lines should be physically separated from high-current or high-voltage
lines. These lines can induce currents into the AT-AO-6/10 signal lines if they are run in
parallel paths at a close distance. Reduce the magnetic coupling by separating the lines by a
reasonable distance if they run in parallel, or by running the lines at right angles to each other.
•
Do not run AT-AO-6/10 signal lines through conduits that also contain power lines.
•
Protect AT-AO-6/10 signal lines from magnetic fields caused by electric motors, welding
equipment, breakers, or transformers by running the AT-AO-6/10 signal lines through special
metal conduits if it is necessary to pass them through these areas.
Cabling Considerations
National Instruments has a cable termination accessory, the CB-50, for use with the
AT-AO-6/10 board. This kit includes a terminated 50-conductor flat ribbon cable and a connector
block. Signal I/O leads can be attached to screw terminals on the connector block and thereby
connected to the AT-AO-6/10 I/O connector.
The CB-50 can be used for prototyping an application or in situations where AT-AO-6/10
interconnections are frequently changed. However, once a final field wiring scheme has been
developed, you may want to develop your own cable.
The AT-AO-6/10 I/O connector is a 50-pin male ribbon-cable header. The manufacturer part
numbers for this header are as follows:
Electronic Products Division/3M
part nnmber 3596-5002
T&B/Ansley Corporation part number 609-5007
The mating connector for the AT-AO-6/10 is a 50-position ribbon socket connector, polarized,
with strain relief. National Instruments uses a polarized (keyed) connector to prevent inadvertent
misconnection to the AT-AO-6/10. Recommended manufacturer part numbers for this mating
connector are as follows:
Electronic Products Division/3M
part number 3425-7650
T&B/Ansley Corporation part number 609-5041CE
Recommended manufacturer part numbers for the standard ribbon cable (50-conductor, 28 AWG,
stranded) that can be used with these connectors are:
Electronic Products Division/3M
part number 3365/50
T&B/Ansley Corporation part number 171-50
© National Instruments Corporation
2-21
AT-AO-6/10 User Manual
Chapter 3
Theory of Operation
This chapter contains a functional overview of the AT-AO-6/10 and explains the operation of each
functional unit making up the AT-AO-6/10.
Functional Overview
The block diagram in Figure 3-1 is a functional overview of the AT-AO-6/10 board.
RTSI BUS
To Update
Generator
PC I/O Channel
AT
I/O
CHANNEL
INTERFACE
8
Double Buffered
Dual
D/A Converter
Double Buffered
Dual
D/A Converter
FIFO
8
V OUT 4
V OUT 2
8
V OUT 0
Double Buffered
Dual
D/A Converter
V
I
I OUT 0
I/O Connector
RTSI Bus
Interface
A GND 0
V OUT 1
V
DMA
Interface
Port A
82C53
OUT 0
MUX
CLK
GATE
CTR 0
OUT
MUX
CLK
GATE
CTR 1
OUT
CLK
GATE
CTR 2
OUT
2 MHz
I OUT 1
A GND 1
REF
REF GND
Interrupt
Interface
1 MHz
I
+5
OUT 1
Port B
4
4
DIGITAL I/O
DIGITAL I/O
UPDATE
GENERATOR
EXT.UPD
To RTSI Bus
Interface
OUT 2
+5V
1A
Figure 3-1. AT-AO-6/10 Block Diagram
© National Instruments Corporation
3-1
AT-AO-6/10 User Manual
Theory of Operation
Chapter 3
The following are the major components making up the AT-AO-6/10 board:
•
PC I/O channel interface circuitry
•
Analog output circuitry
•
Digital I/O circuitry
•
RTSI bus interface circuitry
The internal data and control buses interconnect the components. The theory of operation of each
of these components is explained in the remainder of this chapter.
PC I/O Channel Interface Circuitry
The AT-AO-6/10 board is a full-size 16-bit PC I/O channel adapter. The PC I/O channel consists
of a 24-bit address bus, a 16-bit data bus, a DMA arbitration bus, interrupt lines, and several
control and support signals. The components making up the AT-AO-6/10 PC I/O channel interface
circuitry are shown in Figure 3-2.
PC I/O Channel
Address
Bus
Address
Latches
I/O Channel
Control Lines
Data
Bus
16
/
DMA Request
DMA
Acknowledge
Address
Decoder
PC I/O
Channel
Timing
Interface
Read and Write
Signals
Data
Buffers
Internal
Data Bus
AT-AO-6/10
DMA Request
AT-AO-6/10
DMAAcknowledge
and Terminal Count
DMA
Control
Circuitry
Interrupt
Control
Circuitry
IRQ
Register
Selects
AT-AO-6/10
Interrupt
Request
Figure 3-2. PC I/O Channel Interface Circuitry Block Diagram
AT-AO-6/10 User Manual
3-2
© National Instruments Corporation
Chapter 3
Theory of Operation
The PC I/O channel interface circuitry consists of address latches, address decoder circuitry, data
buffers, PC I/O channel interface timing signals, interrupt circuitry, and DMA arbitration circuitry.
The PC I/O channel interface circuitry generates the signals necessary to control and monitor the
operation of the AT-AO-6/10 multiple function circuitry.
The PC I/O channel has 24 address lines; the AT-AO-6/10 uses 10 of these lines to decode the
board address. Therefore, the board address range is 000 to 3FF hex. SA5 through SA9 are used
to generate the board enable signal. SA0 through SA4 are used to select onboard registers. These
address lines are latched by the address latches at the beginning of an I/O transfer. The latched
address lines send the same address to the address-decoding circuitry during the entire I/O transfer
cycle. The address-decoding circuitry generates the register-select signals that identify which
AT-AO-6/10 register is being accessed. The data buffers control the direction of data transfer on
the bidirectional data lines based on whether the transfer is a read or write.
The PC I/O channel interface timing signals are used to generate read and write signals and to
define the transfer cycle. A transfer cycle can be either an 8-bit or a 16-bit data I/O operation. The
AT-AO-6/10 returns signals to the PC I/O channel to indicate when the board has been accessed,
when the board is ready for another transfer, and the data bit size of the current I/O transfer.
The interrupt control circuitry routes any enabled interrupt requests to the selected interrupt request
line. The AT-AO-6/10 board can share the interrupt line with other devices because the interrupt
requests are tri-state output signals. Eleven interrupt request lines are available for use by the
AT-AO-6/10–IRQ3, IRQ4, IRQ5, IRQ6, IRQ7, IRQ9, IRQ10, IRQ11, IRQ12, IRQ14, and
IRQ15. Interrupts can be generated by the AT-AO-6/10 in the following three situations:
•
When the D/A FIFO is half-full.
•
When a DMA terminal count pulse is received.
•
When a falling edge signal is detected on either the internal or the external DAC update signal.
Each one of these interrupts is individually enabled and cleared. See Chapter 4, Programming, for
more information about programming with interrupts.
The DMA control circuitry generates DMA requests whenever the D/A FIFO is not full, and the
DMA transfer is enabled. The DMA circuitry supports full PC I/O channel and EISA bus 16-bit
DMA transfers. DMA Channels 5, 6, and 7 of the PC I/O channel, and Channels 0, 1, 2, and 3 of
the EISA bus, are available for such transfers.
Analog Output Circuitry
The AT-AO-6 and AT-AO-10 have six and ten channels of 12-bit D/A output, respectively.
Unipolar or bipolar output, voltage or current output, and internal or external reference voltage
selections are available with each analog output channel. Figure 3-3 shows a block diagram of the
analog output circuitry.
© National Instruments Corporation
3-3
AT-AO-6/10 User Manual
Theory of Operation
Chapter 3
REF Selection
EXTREF
x2
+5 V INT REF
EXTREF<0..8>
DATA
REF
From AT Bus
Interface
WR, RD
DACK
To AT Bus
Interface
DRQ
IRQ
FIFO
I/O Connector
PC I/O Channel
Counters 1, 2,
and 3
OUT1, 2
VOUT0
IOUT0
Channel 0
RD/WR
FF*, HF*, EF*
D/A Control
Channel 9
AGND<0..8>
VOUT9
IOUT9
DACWR, UPDATE1, 2
EXTUPDATE*
Figure 3-3. Analog Output Circuitry Block Diagram
Each analog output channel contains a 12-bit D/A converter (DAC), output operational amplifiers
(op-amps), reference selection jumpers, unipolar/bipolar output selection jumpers, and a current
transmitter. Each two channels share an EXTREF input line on the I/O connector.
Voltage Output
The DAC in each analog output channel generates a current proportional to the input voltage
reference (Vref) multiplied by the digital code loaded into the DAC. Each DAC can be loaded with
a 12-bit digital code. The output op-amps convert the DAC current output to a voltage output on
the I/O connector VOUTX pins.
The DAC output op-amps can be jumper-configured to generate either a unipolar voltage output or
a bipolar voltage output range. A unipolar output has an output voltage range of 0 to +Vref - 1 LSB
V. A bipolar output has an output voltage range of -Vref to +Vref -1 LSB V. For unipolar output,
0 V output corresponds to a digital code word of 0. For bipolar output, the format of the digital
code input is software-selectable from Command Register 2. If straight binary format is selected,
0 V output corresponds to a digital code word of 2,048. If two's complement format is selected, 0
V output corresponds to a digital code word of 0. One LSB is the voltage increment corresponding
to an LSB change in the digital code word. For unipolar output, 1 LSB = (Vref)/4,096. For
bipolar output, 1 LSB = (Vref)/2,048.
AT-AO-6/10 User Manual
3-4
© National Instruments Corporation
Chapter 3
Theory of Operation
The voltage reference source for each DAC is jumper-selectable and can be supplied either
externally at the EXTREF input or internally. The external reference can be either a DC or an AC
signal. If an AC reference is applied, the analog output channel acts as a signal attenuator, and the
AC signal appears at the output attenuated by the digital code divided by 4096 (unipolar output) or
2048 (bipolar output). The internal reference is an amplified version of the internal 5 V signal
supplied in the input offset section. Using the internal reference supplies an output voltage range
of 0 V to 9.9976 V in steps of 2.44 mV for unipolar output and an output voltage range of -10 V to
+9.9951 V in steps of 4.88 mV for bipolar output. Gain calibration for the DACs applies only to
the internal reference, not the external reference. Offset calibration can be applied to both
references.
Note: Each DAC presents an impedance of 11 kΩ (unipolar mode) or 7 kΩ (bipolar mode) to
ground at the EXTREF input when the external reference option is selected.
Current Output
Each channel of the AT-AO-6/10 includes a 4 to 20 mA current transmitter for use with industrystandard 4 to 20 mA current loops. An external voltage supply between 7 and 40 V must be used
to power each current loop. This supply must be in series with the IOUTX connection and the
load. See Figure 3-5 for a typical current output connection. The current output is available on the
I/O connector between the IOUTX and AGNDX pin for each channel. Each transmitter consists of
an N-channel power MOSFET current sink to ground. The output sink current is related to the
output voltage by the following equation:
I sink =
(V out + 2.5)
625
where Isink is the output current in amperes, and Vout is the output voltage in volts. This equation
is correct as long as the result is non-negative. The AT-AO-6/10 current outputs do not source
current. For example, if the reference voltage is +10 V and the board is configured for unipolar
output, an input digital code of zero yields an output voltage of 0 V and an output current as shown
in the following equation:
(0 + 2.5)
625 A = 4 mA
With the same configuration, an input code of 4095 yields an output voltage of 9.9976 V and an
output current that is shown in the following equation:
(9.9976 + 2.5)
= 19.996 mA
625 A
The transfer function relating output current to output voltage is graphed in Figure 3-4.
© National Instruments Corporation
3-5
AT-AO-6/10 User Manual
Theory of Operation
Chapter 3
I out (mA)
-10
-5
0
5
10
V (volts)
out
Figure 3-4. Output Sink Current Versus Output Voltage
Maintaining the voltage at the output within the specified range of 7 to 40 V is important. If the
voltage is too low, the AT-AO-6/10 cannot sink the full 20 mA. If the voltage is too high,
overheating can occur and the board can be damaged. Figure 3-5 shows a possible current loop
connection.
IOUTX
Current
Output
-
+
250 Ω
Load
(Floating)
+
-
+
-
24 V
Power
Supply
Analog Ground
AT-AO-6/10
Back Panel
Connector
Figure 3-5. Possible Current Loop Connection
AT-AO-6/10 User Manual
3-6
© National Instruments Corporation
Chapter 3
Theory of Operation
The combination of power supply voltage and load impedance used in Figure 3-5 keeps the voltage
at the connector between 19 V (20 mA) and 23 V (4 mA). The voltage at the connector is always
as follows:
Vconn = Vext - Iout * RL
where
•
Vconn is the voltage at the connector in volts
•
Vext is the external power supply voltage in volts
•
Iout is the output sink current in mA
•
RL is the resistance of the load in kΩ
Loading, Updating, and Calibrating the DACs
There are three ways to load a new value to a DAC register:
1. Write a value to the DAC register directly by the software.
2. Use the onboard 1,024-word deep FIFO as a data buffer between the host computer and the
DACs. The software or the DMA transfer data to the FIFO, and concurrently, the data from
the FIFO is loaded to the desired DACs upon detecting the update signals. The transfer cycle
between FIFO and DAC is 500 nsec.
3. Use the FIFO retransmit feature to repeatedly load data stored in the FIFO to the desired DACs.
The data is loaded into the FIFO once before the loading of the DACs begins.
The AT-AO-6/10 uses dual DAC integrated circuits. Each integrated circuit can be software
configured for double-buffering mode. This feature is usually used for waveform generation. In
waveform generation mode, the new value loaded to a DAC does not change the channel's output
until an update signal is detected. The ten DACs on the AT-AO-10, and the six DACs on the
AT-AO-6, can be divided into two groups to use different update signal sources. The following
sources can be used to generate update signals:
•
The onboard counter–Counter 1 output is for Group 1 of the DAC, and Counter 2 output is for
Group 2 of the DAC.
•
The EXTUPDATE* signal on the I/O connector–This update source can be used by either
group.
•
The EXTUPDATE* signal derived from the RTSI bus.
•
Software controlled update.
The AT-AO-6/10 incorporates onboard calibration circuitry to individually adjust the gain and
offset for each analog output channel. The startup calibration process is accomplished by
retrieving constants stored in the AT-AO-6/10 EEPROM and writing them to the calibration DAC.
The board is calibrated at the factory and these calibration values are stored in unmodifiable
© National Instruments Corporation
3-7
AT-AO-6/10 User Manual
Theory of Operation
Chapter 3
locations in the EEPROM (see Figure 5-1). The board can also be recalibrated at the user's
discretion and these new calibration constants can be stored in one of four user slots in the
EEPROM. The EEPROM constants written to the calibration DAC can either be factory-calibrated
values, or user-defined values to accommodate differing testing situations. A map of the EEPROM
location can be found in Chapter 5, Calibration Procedures.
Digital I/O Circuitry
The AT-AO-6/10 has eight digital I/O lines. These lines are divided into two ports of four lines
each and are located at pins ADIO<3..0> and BDIO<3..0> on the I/O connector. Figure 3-6
shows a block diagram of the digital I/O circuitry.
DATA <3..0>
/
4
DOUTA ENABLE
DOUTA
Digital
Output
Register
/
4
ADIO <3..0>
/
4
BDIO <3..0>
DO REG WR
/
4
DOUTB ENABLE
DATA <7..0>
DIREG RD
/
8
DOUTB
Digital
Output
Register
DINA
Digital
Input
/
4
Register
DINB
/
4
I/O Connector
PC I/O Channel
DATA <7..4>
Figure 3-6. Digital I/O Circuitry Block Diagram
AT-AO-6/10 User Manual
3-8
© National Instruments Corporation
Chapter 3
Theory of Operation
The digital I/O lines are controlled by the DOUT Register and monitored by the DIN Register. The
DOUT Register is an 8-bit register that contains the digital output values for both Ports A and B.
When Port A is enabled, bits <3..0> in the DOUT Register are driven onto digital output lines
ADIO<3..0>. When Port B is enabled, bits <7..4> in the DOUT Register are driven onto digital
output lines BDIO<3..0>.
Reading the DIN Register returns the state of the digital I/O lines. Digital I/O lines ADIO<3..0>
are connected to bits <3..0> of the DIN Register. Digital I/O lines BDIO<3..0> are connected to
bits <7..4> of the DIN Register. When a port is enabled for output, the DIN Register serves as a
read-back register, returning the digital output value of the port. When a port is not enabled for
output, reading the DIN Register returns the state of the digital I/O lines driven by an external
device.
Both the DIN and DOUT Registers are TTL-compatible. The digital output ports, when enabled,
are capable of sinking 24 mA of current and sourcing 2.6 mA of current on each digital I/O line.
When the ports are not enabled for output, the digital I/O lines act as high-impedance inputs.
RTSI Bus Interface Circuitry
The AT-AO-6/10 is interfaced to the National Instrument RTSI bus. The RTSI bus has seven
trigger lines and a system clock line. All National Instruments AT Series boards with RTSI bus
connectors can be wired together inside the PC to share these signals. A block diagram of the
RTSI bus interface circuitry is shown in Figure 3-7.
OUT1*
GATE3
NC
EXTUPD*
OUT3*
OUT2*
EXTUPDATE*
RTSI SEL
Internal
Data Bus
MUX
1
RTSICLK
15
13
11
9
7
5
3
2
4
6
8
10
12
14
16
B0
B1
B2
B3
B4
B5
B6
A0
A1
A2
A3
A4
A5
A6
10-MHz
Oscillator
/SEL
DATA
RTSI Bus Connector
BRDCLK
RTSI
Switch
Figure 3-7. RTSI Bus Interface Circuitry Block Diagram
© National Instruments Corporation
3-9
AT-AO-6/10 User Manual
Theory of Operation
Chapter 3
The RTSICLK line can be used to source a 10-MHz signal across the RTSI bus or to receive
another clock signal from another AT board connected to the RTSI bus. BRDCLK is the system
clock used by the AT-AO-6/10. A multiplexer selects how these clock signals are routed.
The RTSI switch is a National Instruments custom-integrated circuit that acts as a 7x7 crossbar
switch. Pins B<6..0> are connected to the seven RTSI bus trigger lines. Pins A<6..0> are
connected to six signals on the board. The RTSI switch can drive any of the signals at
pins A<6..0> onto any one or more of the seven RTSI bus trigger lines and can drive any of the
seven trigger line signals onto any one or more of the pins A<6..0>. With this capability, a signal
interconnection scheme is completely flexible for any AT Series board sharing the RTSI bus. The
RTSI switch is programmed via its chip select and data inputs.
On the AT-AO-6/10 board, six signals are connected to six pins of A<6..0> of the RTSI switch.
The signal EXTUPDATE* is shared with the I/O connector, and is bidirectional on the RTSI
switch. EXTUPD* is an active low pulse triggered by the EXTUPDATE* falling edge on the
board, and can be driven to the RTSI bus. OUT1*, OUT2*, and OUT3* are onboard counter
output, and can be driven to the RTSI bus. GATE3 can be an input signal connected to the
Counter 3 gate. Because Counter 3 output can be selected as the source clock of Counters 1 and 2,
therefore, the GATE3 signal can be used not only to control Counter 3 but also Counters 1 and 2.
With these onboard interconnections, the DACs update timing can be controlled over the RTSI bus
as well as externally, and the AT-AO-6/10 can send timing signals to other AT boards connected to
the RTSI bus.
AT-AO-6/10 User Manual
3-10
© National Instruments Corporation
Chapter 4
Programming
This chapter describes in detail the address and function of each of the AT-AO-6/10 registers.
This chapter also includes important information about programming the AT-AO-6/10.
Note: If you plan to use a programming software package such as NI-DAQ DOS/Windows or
LabWindows with your AT-AO-6/10 board, you need not read this chapter.
Register Map
The register map for the AT-AO-6/10 is shown in Table 4-1. This table gives the register name,
the register address offset from the slot base address, the register type (read only, write only, or
read and write), and the size of the register in bits.
Some registers share the same address with others. The GRP2WR bit in the CFG1 Register
determines which registers are being accessed at the shared address. If the GRP2WR bit is set,
the registers in the parentheses are accessed. If GRP2WR is cleared, the other registers are
accessed.
Table 4-1. AT-AO-6/10 Register Map
Register Name
Offset Address
(Hex)
Size
Type
Configuration and Status
Register Group
CFG1 Register
Status Register
CFG2 Register
* (INT1CLR Register)
CFG3 Register
(INT2CLR Register)
(DMATCCLR Register)
0A
0A
02
02
04
04
00
16-bit
16-bit
16-bit
16-bit
16-bit
16-bit
16-bit
Write-only
Read-only
Write-only
Write-only
Write-only
Write-only
Write-only
MSM82C53 Counter/Timer
Register Group
CNTR1 Register
CNTR2 Register
CNTR3 Register
CNTRCMD Register
06
07
08
09
8-bit
8-bit
8-bit
8-bit
Read-and-Write
Read-and-Write
Read-and-Write
Read-and-Write
RTSI Bus Register Group
(RTSISHFT Register)
(RTSISTRB Register)
06
07
8-bit
8-bit
Write-only
Write-only
Digital I/O Register Group
DIN Register
DOUT Register
00
00
16-bit
16-bit
Read-only
Write-only
(continues)
© National Instruments Corporation
4-1
AT-AO-6/10 User Manual
Programming
Chapter 4
Table 4-1. AT-AO-6/10 Register Map (continued)
Register Name
Analog Output Register Group
FIFO WRITE Register
FIFO CLEAR Register
(DAC0 Register)
DAC1 Register
DAC2 Register
DAC3 Register
DAC4 Register
DAC5 Register
** DAC6 Register
** DAC7 Register
** DAC8 Register
** DAC9 Register
Offset Address
(Hex)
Size
0C
0C
0C
0E
10
12
14
16
18
1A
1C
1E
16-bit
16-bit
16-bit
16-bit
16-bit
16-bit
16-bit
16-bit
16-bit
16-bit
16-bit
16-bit
Type
Write-only
Read-only
Write-only
Write-only
Write-only
Write-only
Write-only
Write-only
Write-only
Write-only
Write-only
Write-only
*
The registers in the parentheses share the same address with other registers. If the
GRP2WR bit in the CFG1 Register is set, the registers in parentheses are accessed.
Otherwise the registers without parentheses are accessed when writing to these
addresses.
*
The DAC6 through DAC9 Registers are available on the 10-channel version of the
board only.
Register Sizes
Two different transfer sizes can be used for read and write operations with the PC: byte (8-bit)
and word (16-bit). Table 4-1 shows the size of each AT-AO-6/10 register. For example, reading
the Status Register requires a 16-bit (word) read operation at the selected address, whereas
writing to the RTSISHFT Register requires an 8-bit (byte) write operation at the selected
address.
Register Description
Table 4-1 divides the AT-AO-6/10 registers into five different register groups. A bit description
of each of the registers making up these groups is included later in this chapter.
The Configuration and Status Register Group controls the overall operation of the AT-AO-6/10
hardware. The configuration registers are used to program the DAC output mode, the DAC
channel selection, the DAC calibration, the digital mode, and to enable DMA or interrupt
requests. The status registers reflect the state of the FIFO, interrupt requests, and DMA requests.
The registers in the Analog Output Register Group access the DACs or FIFO. The registers in
the Digital I/O Port Group access the two 4-bit digital I/O ports. The MSM82C53
Counter/Timer Register Group selects the counting mode and initial count of the three counters.
The RTSI Bus Register Group configures the RTSI bus switch.
AT-AO-6/10 User Manual
4-2
© National Instruments Corporation
Programming
Bit
Chapter 4
Name
Description (continued)
2
DOUTEN1
Digital Output Enable 1 Bit.
When this bit is set, the low nibble (bits 0 through 3) of the 8-bit
digital port is enabled for output. Data written to an output port is
driven to the I/O connector. An output port can be read back, and
the value returned shows the current status of the I/O connector.
When this bit is cleared, bits 0 through 3 of the digital I/O port are
configured for input. Reading an input port returns the current
status of the I/O connector.
1
EN2.5V
2.5-V Output Enable Bit.
When EN2.5V is set, a 2.5V reference output is enabled on the
IOUT9 line. If EN2.5V is cleared, the IOUT9 line is the current
output of DAC Channel 9. To obtain the 2.5V output, Channel 9
current output must be shut off. To do this, the Channel 9 must be
configured in bipolar mode with two's complement format, and a
negative value -1000 (decimal) must be written to DAC9.
0
SCANEN
DAC Channel Scan Mode Enable Bit.
When SCANEN is set, DAC Channel 0 through Channel
(CH<3..0>) are scanned sequentially. In this mode, the FIFO
should be enabled. A rising edge of an update signal starts a scan
sequence. Data from the FIFO is written to DAC Channel 0
through Channel (CH<3..0>) sequentially. Then the next active
low update signal updates the output of these channels, and the
rising edge of the update signal starts another scan sequence. If the
SCANEN is cleared and FIFO is enabled, the data from the FIFO
is written to channel CH<3..0> only.
AT-AO-6/10 User Manual
4-14
© National Instruments Corporation
Chapter 4
Programming
INT2CLR Register
Writing to the INT2CLR Register clears the interrupt request asserted either by a rising edge on
the Counter 2 output or by a rising edge of the EXTUPD* signal that is triggered by the falling
edge of the EXTUPDATE* line.
Address:
Base address + 04 (with the GRP2WR bit in the CFG1 Register set)
Type:
Write-only
Word Size:
16-bit
Bit Map:
Not applicable, no bits used.
© National Instruments Corporation
4-15
AT-AO-6/10 User Manual
Programming
Chapter 4
DMATCCLR Register
Writing to the DMATCCLR Register clears the interrupt request caused by either the DMA TC
signal or the low-to-high transition of the Half-Full signal of the FIFO.
Address:
Base address + 00 (with the GRP2WR bit in the CFG1 Register set)
Type:
Write-only
Word Size:
16-bit
Bit Map:
Not applicable, no bits used.
AT-AO-6/10 User Manual
4-16
© National Instruments Corporation
Chapter 4
Programming
MSM82C53 Counter/Timer Register Group
The four registers making up the MSM82C53 Counter/Timer Register Group access the onboard
MSM82C53 Counter/Timer.
The MSM82C53 contains three counters. Counters 1 and 2 can be used to generate update
signals or interrupts for waveform generation. Counter 3 can be used to generate an alternative
clock source for Counters 1 and 2.
Bit descriptions of the four registers making up the MSM82C53 Counter/Timer Register Group
are given on the following pages.
© National Instruments Corporation
4-17
AT-AO-6/10 User Manual
Programming
Chapter 4
CNTR1 Register
The CNTR1 Register contains eight bits that are used to load a value into Counter 1 or to read
back the value of Counter 1. The CNTR1 Register can be used as an 8-bit register or as a 16-bit
register by two successive write/read operations.
Address:
Base address + 06 (hex) (with the GRP2WR bit cleared)
Type:
Read-and-write
Word Size:
8-bit
Bit Map:
7
6
5
4
3
2
1
0
CNTR1B7
CNTR1B6
CNTR1B5
CNTR1B4
CNTR1B3
CNTR1B2
CNTR1B1
CNTR1B0
Bit
Name
Description
7-0
CNTR1B<7..0>
Counter 1 Load/Read Bits.
Writing a data value to these bits loads the starting value into
Counter 1. Reading these bits returns the current count of Counter
1 or latched data for Counter 1. If the Counter Latch command or
the Read-Back command is used to latch the count or status of
Counter 1, reading these bits returns the latched information. The
latched data remains latched until it is read.
If multiple Latch commands or Read-Back commands are issued
before the latched data is read, only the data from the first Status
Latch command and the first Counter Latch command are latched;
all commands after the first are ignored. If 16-bit data is latched,
the first read from this register returns the least significant byte,
and the second read returns the most significant byte. If status and
count information are both latched, the first read from this register
returns the status byte, and the next one read for 8-bit mode, or two
reads for 16-bit mode, returns the count bytes, regardless of the
order in which the information was latched.
AT-AO-6/10 User Manual
4-18
© National Instruments Corporation
Chapter 4
Programming
CNTR2 Register
The CNTR2 Register contains eight bits that are used to load a value into Counter 2 or to read
back the value of Counter 2. The CNTR2 Register can be used as an 8-bit register or as a 16-bit
register by two successive write/read operations.
Address:
Base address + 07 (hex) (with the GRP2WR bit cleared)
Type:
Read-and-write
Word Size:
8-bit
Bit Map:
7
6
5
4
3
2
1
0
CNTR2B7
CNTR2B6
CNTR2B5
CNTR2B4
CNTR2B3
CNTR2B2
CNTR2B1
CNTR2B0
Bit
Name
Description
7-0
CNTR2B<7..0>
Counter 2 Load/Read Bits.
Writing a data value to these bits loads the starting value into
Counter 2. Reading these bits returns the current count of Counter
2 or latched data for Counter 2. If the Counter Latch command or
the Read-Back command is used to latch the count or status of
Counter 2, reading these bits returns the latched information. The
latched data remains latched until it is read.
If multiple Latch commands or Read-Back commands are issued
before the latched data is read, only the data from the first Status
Latch command and the first Counter Latch command are latched;
all commands after the first are ignored. If 16-bit data is latched,
the first read from this register returns the least significant byte,
and the second read returns the most significant byte. If status and
count information are both latched, the first read to this register
returns the status byte, and the next one read for 8-bit mode, or two
reads for 16-bit mode, returns the count bytes, regardless of the
order in which the information was latched.
© National Instruments Corporation
4-19
AT-AO-6/10 User Manual
Programming
Chapter 4
CNTR3 Register
The CNTR3 Register contains eight bits that are used to load a value into Counter 3 or to read
back the value of Counter 3. The CNTR3 Register can be used as an 8-bit register or as a 16-bit
register by two successive write/read operations.
Address:
Base address + 08 (hex)
Type:
Read-and-write
Word Size:
8-bit
Bit Map:
7
6
5
4
3
2
1
0
CNTR3B7
CNTR3B6
CNTR3B5
CNTR3B4
CNTR3B3
CNTR3B2
CNTR3B1
CNTR3B0
Bit
Name
Description
7-0
CNTR3B<7..0>
Counter 3 Load/Read Bits.
Writing a data value to these bits loads the starting value into
Counter 3. Reading these bits returns the current count of Counter
3 or latched data for Counter 3. If the Counter Latch command or
the Read-Back command is used to latch the count or status of
Counter 3, reading these bits returns the latched information. The
latched data remains latched until it is read.
If multiple Latch commands or Read-Back commands are issued
before the latched data is read, only the data from the first Status
Latch command and the first Counter Latch command are latched;
all commands after the first are ignored. If 16-bit data is latched,
the first read from this register returns the least significant byte,
and the second read returns the most significant byte. If status and
count information are both latched, the first read to this register
returns the status byte, and the next one read for 8-bit mode, or two
reads for 16-bit mode, return the count bytes, regardless of the
order in which the information was latched.
AT-AO-6/10 User Manual
4-20
© National Instruments Corporation
Chapter 4
Programming
CNTRCMD Register
The CNTRCMD Register contains eight bits that determine the counter selection, counter size,
counting format, and operation mode.
Address:
Base address + 09 (hex)
Type:
Write-only
Word Size:
8-bit
Bit Map:
7
6
5
CNTRSEL1 CNTRSEL0 RWSEL1
4
3
2
1
0
RWSEL0
MODESEL2
MODESEL1
MODESEL0
BCDSEL
Bit
Name
Description
7-6
CNTRSEL<1..0>
Counter Select Bits.
These bits select the counter on which the command operates.
5-4
RWSEL<1..0>
CNTRSEL1
CNTRSEL0
Operation
0
0
1
1
0
1
0
1
Select Counter 1
Select Counter 2
Select Counter 3
Read-Back command
Read/Write Select Bits.
These bits select data written to or read from a counter, or these
bits send a Counter Latch command.
© National Instruments Corporation
RWSEL1
RWSEL0
Operation
0
0
0
1
1
0
1
1
Counter Latch command
Read-and-write least
significant byte only
Read-and-write most
significant byte only
Read-and-write least
significant byte then
most significant byte
4-21
AT-AO-6/10 User Manual
Programming
Chapter 4
Bit
Name
Description (continued)
The Counter Latch command latches the current count of the
register selected by CNTRSEL1 and CNTRSEL0. The next read
from the selected counter returns the latched data.
3-1
MODESEL<2..0> Counter Mode Select Bits.
These bits select the counting mode of the selected counter. The
following table lists six available modes and the corresponding bit
settings. Refer to Appendix C, MSM82C53 Data Sheet, for
additional information.
MODESEL2 MODESEL1 MODESEL0
0
BCDSEL
AT-AO-6/10 User Manual
Mode
0
0
0
Mode 0 – Interrupt
on Terminal Count
0
0
1
Mode 1 –
Hardware
Retriggerable One
Shot
0
1
0
Mode 2 – Rate
Generator
0
1
1
Mode 3 – Square
Wave Mode
1
0
0
Mode 4 – Software
Retriggerable
Strobe
1
0
1
Mode 5 –
Hardware
Retriggerable
Strobe
Binary Coded Decimal Select Bit.
If BCDSEL is set, the selected counter keeps count in BCD. If
BCDSEL is cleared, the selected counter keeps count in 16-bit
binary.
4-22
© National Instruments Corporation
Chapter 4
Programming
Read-Back Command
When bits 7 and 6 (CNTRSEL1 and CNTRSEL0) are 1, the CNTRCMD Register can be used to
execute the Read-Back command. With the Read-Back command, the current totals of multiple
counters can be latched in one command. The Read-Back command also can latch the status of
selected counters. The control word format used for the Read-Back command is as follows:
7
6
5
4
3
2
1
0
CNTRSEL1
CNTRSEL0
COUNT*
STATUS*
CNTR3
CNTR2
CNTR1
0
Bit
Name
Description
7-6
CNTRSEL<1..0>
Counter Select Bits.
Both bits must be one for the Read-Back command to be used.
5
COUNT*
Read-Back Count Command.
If COUNT* is cleared, the current count in each of the selected
counters is latched. The next read from the selected counter
returns the latched data.
4
STATUS*
Read-Back Status Command.
If STATUS* is cleared, the current status in each of the selected
counters is latched. The next read from the selected counter
returns the latched data.
3-1
CNTR<3..1>
Counter Select Bits for Read-Back Command.
These bits select the counters for the Read-Back command; that is,
if CNTR3 and CNTR1 are set, the Read-Back command latches
data for Counter 3 and Counter 1.
0
0
Reserved Bit.
This bit must be set to zero for proper operation of the AT-AO6/10.
© National Instruments Corporation
4-23
AT-AO-6/10 User Manual
Programming
Chapter 4
Status Byte
If the STATUS* bit is zero in the Read-Back command, status information for the selected
counters is latched. The status byte format is as follows:
7
6
5
4
3
2
1
0
OUT
NULL
RW1
RW0
MODE2
MODE1
MODE0
BCD
Bit
Name
Description
7
OUT
Counter Output.
The OUT bit reflects the current status of the counter output.
6
NULL
Last Count Written Status.
If NULL is zero, the last count written to the selected counter has
been loaded into the counter. If NULL is set, the last count written
to the counter has not been loaded.
5-4
RW<1..0>
RWSEL1 and RWSEL0 Status.
The RW1 and RW0 bits reflect the status of the RWSEL1 and
RWSEL0 bits of the selected counter.
3-1
MODE<2..0>
MODE2, MODE1, and MODE0 Status.
The MODE2, MODE1, and MODE0 bits reflect the state of the
MODESEL2, MODESEL1, and MODESEL0 bits of the selected
counter.
0
BCD
Binary Coded Decimal Select (BCDSEL) Status.
The BCD bit reflects the status of the BCDSEL bit of the selected
counter.
Refer to Appendix C, MSM82C53 Data Sheet, for more information on programming the
counters.
AT-AO-6/10 User Manual
4-24
© National Instruments Corporation
Chapter 4
Programming
RTSI Bus Register Group
The two registers making up the RTSI Bus Register Group program the AT-AO-6/10 RTSI
switch for routing of signals on the RTSI bus trigger lines to and from several AT-AO-6/10
signal lines.
Bit descriptions of the two registers making up the RTSI Bus Register Group are given on the
following pages.
© National Instruments Corporation
4-25
AT-AO-6/10 User Manual
Programming
Chapter 4
RTSISHFT Register
The RTSISHFT Register contains one bit, RSI, that is a serial input to the RTSI switch. RSI
must be written to 56 times to load the internal 56-bit RTSI control register.
Address:
Base address + 06 (hex) (with the GRP2WR bit set)
Type:
Write-only
Word Size:
8-bit
Bit Map:
7
6
5
4
3
2
1
0
X
X
X
X
X
X
X
RSI
Bit
Name
Description
7-1
X
Don't care bits.
0
RSI
RTSI Switch Serial Input.
This bit is the serial input to the RTSI switch. Each time the RSI
bit is written to, the value written is shifted into the RTSI switch
internal 56-bit control register. The data in the control register
routes information for switching signals to and from the RTSI bus
trigger lines. The RSI bit must be written to 56 times to shift the
56 bits of routing data into the internal control register. See
Programming the RTSI Switch later in this chapter for more
information.
AT-AO-6/10 User Manual
4-26
© National Instruments Corporation
Chapter 4
Programming
RTSISTRB Register
Writing to the RTSISTRB Register loads the contents of the RTSI Shift Register into the RTSI
Switch Control Register, thereby updating the RTSI switch routing pattern. The RTSISTRB
Register is written to after shifting the 56-bit routing pattern into the RTSISHFT Register.
Address:
Base address + 07 (hex) (with the GRP2WR bit set)
Type:
Write-only
Word Size:
8-bit
Bit Map:
Not applicable, no bits used.
© National Instruments Corporation
4-27
AT-AO-6/10 User Manual
Programming
Chapter 4
Digital I/O Register Group
The two registers making up the Digital I/O Register Group monitor and control the AT-AO6/10 digital I/O lines. The DIN Register returns the digital state of the eight digital I/O lines. A
pattern written to the DOUT Register is driven onto the digital I/O lines when the digital output
drivers are enabled (see the description for the CFG3 Register).
Bit descriptions for the registers making up the Digital I/O Register Group are given on the
following pages.
AT-AO-6/10 User Manual
4-28
© National Instruments Corporation
Chapter 4
Programming
DIN Register
Reading the DIN Register returns the logic state of the eight AT-AO-6/10 digital I/O lines.
Address:
Base address + 00 (hex) (with the GRP2WR bit in the CFG1 Register cleared)
Type:
Read-only
Word Size:
16-bit
Bit Map:
15
14
13
12
11
10
9
8
X
X
X
X
X
X
X
X
7
6
5
4
3
2
1
0
BDI3
BDI2
BDI1
BDI0
ADI3
ADI2
ADI1
ADI0
Bit
Name
Description
15-8
X
Don't care bits.
7-4
BDI<3..0>
These four bits represent the logic state of the digital lines
BDIO<3..0>.
3-0
ADI<3..0>
These four bits represent the logic state of the digital lines
ADIO<3..0>.
© National Instruments Corporation
4-29
AT-AO-6/10 User Manual
Programming
Chapter 4
DOUT Register
Writing to the DOUT Register controls the eight AT-AO-6/10 digital I/O lines. The DOUT
Register controls both Ports A and B. When either digital port is enabled, the pattern contained
in the DOUT Register is driven onto the lines of the digital port.
Address:
Base address + 00 (hex) (with the GRP2WR bit in the CFG1 Register cleared)
Type:
Write-only
Word Size:
16-bit
Bit Map:
15
14
13
12
11
10
9
8
X
X
X
X
X
X
X
X
7
6
5
4
3
2
1
0
BDO3
BDO2
BDO1
BDO0
ADO3
ADO2
ADO1
ADO0
Bit
Name
Description
15-8
X
Don't care bits.
7-4
BDO<3..0>
These four bits control the digital lines BDIO<3..0>. The bit
DOUTEN2 in the CFG3 Register must be set for BDO<3..0> to be
driven onto the digital lines BDIO<3..0>.
3-0
ADO<3..0>
These four bits control the digital lines ADIO<3..0>. The bit
DOUTEN1 in the CFG3 Register must be set for ADO<3..0> to be
driven onto the digital lines ADIO<3..0>.
AT-AO-6/10 User Manual
4-30
© National Instruments Corporation
Chapter 4
Programming
Analog Output Register Group
Ten of the twelve registers making up the Analog Output Register Group load the ten analog
output channels. DAC0 through DAC9 control analog output Channel 0 through Channel 9,
respectively. These registers can be written to individually or scanned automatically. The
analog output can be updated immediately or each time an update pulse is detected on either the
EXTUPDATE* line or on the output of one of the two onboard counters. The update method is
selected with the LDAC bit in the CFG2 Register.
The other two registers in this group are the FIFO WRITE Register and the FIFO CLEAR
Register. The FIFO WRITE Register is a write-only register. It can be written to by the
programmed I/O or by the DMA transfer. The FIFO CLEAR Register is a read-only register.
Reading this register clears the whole FIFO memory. The result of the reading should be
ignored. Descriptions of the registers making up the Analog Output Register Group are given on
the following pages.
© National Instruments Corporation
4-31
AT-AO-6/10 User Manual
Programming
Chapter 4
FIFO WRITE Register
Writing to the FIFO WRITE Register loads a 16-bit value to the FIFO memory.
Address:
Base address + 0C (hex) (with the GRP2WR bit in CFG1 Register cleared)
Type:
Write-only
Word Size:
16-bit
Bit Map:
15
14
13
12
Sign Extension Bits
11
10
9
8
D11
D10
D9
D8
7
6
5
4
3
2
1
0
D7
D6
D5
D4
D3
D2
D1
D0
Bit
Name
Description
15-12
Sign Bits
Sign Extension Bits.
If the two's complement format of analog output is selected, these
bits are sign extension bits equal to D11. If the straight binary
format is selected, these bits are zero.
11-0
D<11..0>
Data Bits
The 12-bit data ranges from 0 to 4095 decimal (0000 to 0FFF hex)
if straight binary format is selected, or from -2048 to +2047
decimal (F800 to 07FF hex) if two's complement format is
selected. The data written to this register is loaded into the 1,024word deep FIFO memory. This register can be accessed by either
program I/O or by DMA transfer. The data stored in the FIFO
memory can only be loaded to DAC Group 1. When the FIFO
memory is full, the data written to the FIFO WRITE Register is
lost. The status of the FIFO can be obtained by reading the
STATUS Register. With DMA transfers, when the FIFO is full,
the DMA request is automatically masked to stop the writing to
this register.
AT-AO-6/10 User Manual
4-32
© National Instruments Corporation
Chapter 4
Programming
FIFO CLEAR Register
Reading the FIFO CLEAR Register clears the entire FIFO memory.
Address:
Base address + 0C (with the GRP2WR bit in the CFG1 Register cleared)
Type:
Read-only
Word Size:
16-bit
Bit Map:
Not applicable, no bits used.
© National Instruments Corporation
4-33
AT-AO-6/10 User Manual
Programming
Chapter 4
DAC0 through DAC9 Registers
Writing to any of the DAC Registers loads the corresponding analog output channel DAC. The
voltages generated by the analog output channels are updated either immediately or when an
update pulse is detected. The update method is selected by the LDAC bit in the CFG2 Register.
These registers are further divided into two groups by 4 bits, CH<3..0> of the CFG1 Register.
The registers that have channels numbers higher than CH<3..0> make up DAC Group 2. The
registers of DAC Group 2 are written by programmed I/O individually, and they are updated
together if the corresponding LDAC bits are set upon the detecting of an update pulse. The
source of the update pulse for this group is either OUT2 or the EXTUPDATE* signal. The rest
of the DAC registers make up DAC Group 1. The data written to the DAC Group 1 registers can
be either from I/O writing or from onboard FIFO directly, depending on the status of the
FIFOEN bit in the CFG1 Register. If the SCANEN bit of the CFG3 Register is set, the DAC
Group 1 registers are scanned sequentially from DAC0 through DAC (CH<3..0>). The data
written to these registers is from the FIFO (the FIFOEN bit must be set). Between two
successive update pulses each DAC is written once, and the update pulse updates them together.
The update source can be either the OUT1 or the EXTUPDATE* signal. If the SCANEN bit of
the CFG3 Register is cleared, only the DAC (CH<3..0>) register uses the FIFO data and is
updated by the update pulse. The other registers are written individually by programmed I/O.
Address:
Base Address + 0C (with GRPWR2 set)
Base Address + 0E (hex)
Base Address + 10 (hex)
Base Address + 12 (hex)
Base Address + 14 (hex)
Base Address + 16 (hex)
Base Address + 18 (hex)
Base Address + 1A (hex)
Base Address + 1C (hex)
Base Address + 1E (hex)
Type:
Write-only
Word Size:
16-bit
DAC0 Register
DAC1 Register
DAC2 Register
DAC3 Register
DAC4 Register
DAC5 Register
DAC6 Register
DAC7 Register
DAC8 Register
DAC9 Register
Bit Map:
15
14
13
12
11
Sign Extension Bits
10
9
8
D10
D9
D8
7
6
5
4
3
2
1
0
D7
D6
D5
D4
D3
D2
D1
D0
Bit
15-12
Name
Sign Bits
AT-AO-6/10 User Manual
Description
Sign Extension Bits.
If the two's complement format of analog output is selected, these
bits are sign extension bits equal to D11. If the straight binary
format is selected, these bits are zero.
4-34
© National Instruments Corporation
Chapter 4
Programming
Bit
Name
Description (continued)
11-0
D<11..0>
The digital code to be loaded into the DAC.
This 12-bit data ranges from 0 to 4095 decimal if straight binary
format is selected, or from -2048 to +2047 decimal if two's
complement format is selected.
© National Instruments Corporation
4-35
AT-AO-6/10 User Manual
Programming
Chapter 4
The formula for the voltage output versus digital code for a unipolar analog output configuration
is as follows:
Vout = V ref *
(digital code)
4,096
where Vref is the reference voltage applied to the analog output channel. The digital code in the
above formula is a decimal value ranging from 0 to 4,095.
Table 4-2. Analog Output Voltage Versus Digital Code (Unipolar Mode)
Digital Code
Voltage Output
Decimal
Hex
Vout
Vref = 10 V
0
0
0
0V
1
1
V ref
4,096
2.44 mV
1,024
0400
Vref
4
2.5 V
2,048
0800
Vref
2
5V
3,072
0C00
Vref * 3
4
7.5 V
4,095
0FFF
V ref * 4,095
4,096
9.9976 V
The formula for the voltage output versus digital code for a bipolar, straight binary analog output
configuration is
Vout = V ref *
(digital code - 2,048)
2,048
where Vref is the reference voltage applied to the analog output channel. The digital code in the
preceding formula is a decimal value ranging from 0 to 4,095.
AT-AO-6/10 User Manual
4-36
© National Instruments Corporation
Chapter 4
Programming
Table 4-3. Analog Output Voltage Versus Digital Code (Bipolar, Straight Binary Mode)
Digital Code
Voltage Output
Decimal
Hex
Vref
Vref = 10 V
0
0
- Vref
- 10 V
1
1
V ref * (−2,047)
2,048
-9.9951 V
1,024
0400
-Vref
2
-5V
2,047
07FF
V ref
2,048
- 4.88 m V
2,048
0800
0
0V
2,049
0801
V ref
2,048
4.88 m V
3,072
0C00
Vref
2
5V
4,095
0FFF
V ref * (2,047)
2,048
9.9951 V
The formula for the voltage output versus digital code for a bipolar, two's complement analog
output configuration is as follows:
Vout = Vref * V ref *
digital code
2,048
where Vref is the reference voltage applied to the analog output channel. The digital code in the
preceding formula is a decimal value ranging from -2,048 to 2,047.
© National Instruments Corporation
4-37
AT-AO-6/10 User Manual
Programming
Chapter 4
Table 4-4. Analog Output Voltage Versus Digital Code (Bipolar, Two's Complement Mode)
Digital Code
Voltage Output
Decimal
Hex
Vref
Vref = 10 V
-2,048
(F) 800
-Vref
- 10 V
-2,047
(F) 801
V ref * −2,047
2,048
-9.9951 V
1,024
(F) C00
-Vref
2
-5V
-1
(F) FFF
V ref
2,048
- 4.88 m V
0
0
0
0V
1
1
V ref
2,048
4.88 m V
1,024
(0) 400
Vref
2
5V
2,047
(0) 7FF
AT-AO-6/10 User Manual
V ref *
4-38
2,047
2,048
9.9951 V
© National Instruments Corporation
Chapter 4
Programming
Programming Considerations
This section contains programming instructions for operating the circuitry on the AT-AO-6/10
board. Programming the AT-AO-6/10 involves writing and reading from the various registers on
the board. The programming instructions list the sequence of steps to take. The instructions are
language-independent; that is, they instruct you to write a value to a given register, to set or clear
a bit in a given register, or to detect whether a given bit is set or cleared without presenting the
actual code.
Register Programming Considerations
Several write-only registers on the AT-AO-6/10 contain bits that control a number of
independent pieces of the onboard circuitry. In the instructions for setting or clearing these bits,
specific register bits should be set or cleared without changing the current state of the remaining
bits in the register. However, writing to these registers affects all register bits simultaneously.
You cannot read these registers to determine which bits have been set or cleared in the past;
therefore, you should maintain a software copy of the write-only registers. This software copy
can then be read to determine the status of the write-only registers. To change the state of a
single bit without disturbing the remaining bits, set or clear the bit in the software copy and write
the software copy to the register.
Initializing the AT-AO-6/10 Board
Upon startup the AT-AO-6/10 hardware is auto-initialized. All bits in the three CFG Registers
are cleared. The voltage output of each analog output channel is set to 0 V in the bipolar mode,
or 5 V in the unipolar mode if the internal 10 Vref is selected, or it is set to the medium value of
the external reference voltage. The hardware can be also initialized by the software. To
initialize the
AT-AO-6/10 hardware, complete these steps:
1. Write 0 to the CFG1 Register.
2. Write 18 to the CNTRCMD Register.
3. Write 3 to the CNTR1 Register.
4. Write 58 to the CNTRCMD Register.
5. Write 0 to the CFG2 Register.
6. Write 0 to the CFG3 Register.
7. Read the FIFO CLEAR Register. Ignore the result.
8. Write 80 to the CFG1 Register.
9. Write 0 to the INT1CLR Register.
10.
Write 0 to the INT2CLR Register.
11.
Write 0 to the DMATCCLR Register.
© National Instruments Corporation
4-39
AT-AO-6/10 User Manual
Programming
Chapter 4
12. Write 0 to the CFG1 Register.
This sequence leaves the AT-AO-6/10 circuitry in the following state:
•
FIFO is cleared.
•
All interrupts are disabled.
•
DMA is disabled.
•
Digital I/O lines are in high-impedance state (in other words, in input mode).
•
Calibration is disabled.
•
Both outputs of Counter 1 and Counter 2 are in high state (Logic One).
Programming the Analog Output Circuitry
The voltage at the analog output circuitry output pins is controlled by writing to the
corresponding DAC Registers and updating the analog output. The analog output can be updated
in one of two ways–immediately when the DAC Register is written, or when an active low
update pulse is detected.
Immediately Updating the Analog Output
The bits LDAC0 through LDAC8 in the CFG2 Register control the update method. Each LDAC
bit controls two analog output channels: LDAC0 controls Channels 0 and 1, LDAC2 controls
Channels 2 and 3, etc. If the LDACx bit (where x refers to 0 through 8) is cleared, writing to the
corresponding DAC Register(s) updates the channel's analog output immediately. If the LDACx
bit is set, writing to the DAC Register does not change the analog output until the LDACx bit is
cleared or an update signal is received.
Using the Update Signal for Waveform Generation
When the LDAC bit for the corresponding two DACs is set, the DACs are configured in doublebuffered mode. In this mode, when a new value is written to a DAC, the output of the DAC is
not changed until an update signal is received. The following sections describe how to program
the analog output circuitry for waveform generation using the update signal.
Analog Output Channel Group
The analog output channels on the AT-AO-6/10 can be programmed into two groups. Writing a
channel number n to the CH<0..3> bit field of the CFG1 Register selects Channels 0 through n to
include in Group 1. The rest of the channels make up Group 2. Different update sources can be
used for Group 1 and Group 2.
Select Update Source Signal for a Group
The available update sources for Group 1 are Counter 1 output OUT1* and EXTUPDATE*.
AT-AO-6/10 User Manual
4-40
© National Instruments Corporation
Chapter 4
•
•
Programming
Writing one to the EXTUPDEN bit of the CFG1 Register selects the EXTUPDATE*
signal as the update source for Group 1.
Writing zero to the EXTUPDEN bit of the CFG1 Register selects the OUT1* signal as the
update source for Group 1.
The update sources for Group 2 are Counter 2 output OUT2* and EXTUPDATE*.
•
Writing one to the EXTINT2EN bit of the CFG1 Register selects the EXTUPDATE*
signal as the update source for Group 2.
•
Writing one to the CNTINT2EN bit of the CFG1 Register selects the OUT2* signal as the
update source for Group 2.
•
The EXTINT2EN bit and the CNTINT2EN bit should not be set at the same time.
Group 1 Scan Mode Using DMA
In waveform generation operations using DMA transfers, Group 1 always uses onboard FIFO
memory as a data buffer. The FIFO is 1,024 words deep. The data is read from the system
memory to the FIFO by DMA operation. Then the data is written to the Group 1 DACs. In the
scan mode, after detecting the update pulse, each channel in Group 1 is written once sequentially
from Channel 0 to Channel n. The next update pulse updates the output of the channels and
initializes another writing cycle. Each writing of a channel lasts 500 nsec. Therefore, a scan
cycle (or update interval) must last longer than (500 nsec * number of channels in Group 1). The
DMA continuously transfers data to the FIFO unless the FIFO is full. In addition, data is
continuously written to the DACs unless the FIFO is empty. These two operations are
independent and concurrent. To set up this mode, use the following programing steps:
1. Write a pattern to the CFG1 Register. The pattern should include:
• setting the following bits–FIFOEN, DMAEN, and TCINTEN (if DMA TC interrupt is
desired).
• a proper value in the CH<0..3> bit field to select channels to be scanned clearing the
EXTUPDEN bit at this time
2. Write a pattern to the CFG2 Register. The pattern should include:
•
setting the corresponding LDACx bits for the channels to be scanned.
• setting or clearing corresponding DAC2Sx* bits (where x refers to 0 through 8) for
selecting straight binary or two's complement format.
3. Set the SCANEN bit in the CFG3 Register.
4. Program the system DMA controller; enable the corresponding DMA channel.
5. Read the FIFO Clear Register and ignore the result.
6. Set the DMARQ bit in the CFG1 Register to enable the DMA transfer.
7. Initialize the output channels by using Counter 1 to generate a single pulse to write the
desired first data to the DACs. Thus the next update pulse will dump the proper output to
the channels. To initialize the output channels, you must do the following:
© National Instruments Corporation
4-41
AT-AO-6/10 User Manual
Programming
Chapter 4
•
write 0x18 to the CNTRCMD Register.
•
write 2 to the CNTR1 Register.
8. Wait for about 5 µsec.
9. Set or clear the EXTUPDEN bit in the CFG1 Register to select the update source signal.
10. If OUT1* is selected as the update signal:
•
write 0x34 to the CNTRCMD Register.
• write the scan cycle period (low byte first, then high byte) in µsec to the CNTR1
Register.
After writing the high byte the counter starts counting.
The DMA transfer operation may terminate on terminal count. You can also terminate it by
clearing either the DMAEN bit or the DMARQ bit. After the termination of the DMA transfer,
the remaining data in the FIFO is continually written to the DACs until the FIFO is empty or the
FIFOEN bit is cleared.
Group 1 Scan Mode Using Interrupt
Three interrupts can be used with the Group 1 waveform generation operation–the Counter 1
Interrupt, the External Update Interrupt 1, and the FIFO Half-Full Interrupt. The FIFO Half-Full
Interrupt should be used when the FIFO is used as a data buffer. The program sequence is
similar to the DMA program sequence, except the DMA is disabled:
1. Write a pattern to the CFG1 Register. The pattern should include:
•
setting the FIFOEN bit.
•
a proper value in the CH<0..3> bit field to select channels to be scanned.
•
clearing the EXTUPDEN bit at this time.
2. Write a pattern to the CFG2 Register. The pattern should include:
•
setting the corresponding LDACx bits for the channels to be scanned.
• setting or clearing corresponding DAC2Sx* bits for selecting straight binary or two's
complement format, respectively.
3. Set the SCANEN bit in the CFG3 Register.
4. Read the FIFO Clear Register and ignore the result.
5. Write the data to the FIFO until it is full.
6. Initialize the output channels by using Counter 1 to generate a single pulse to write the
desired first data to the DACs. Thus the next update pulse will dump the proper output to
the channels. To initialize the output channels, you must do the following:
AT-AO-6/10 User Manual
4-42
© National Instruments Corporation
Chapter 4
Programming
•
write 0x18 to the CNTRCMD Register.
•
write 2 to the CNTR1 Register.
7. Set the TCINTEN bit in CFG1 Register.
8. Program the system interrupt controller and enable the proper interrupt level.
9. Set or clear the EXTUPDEN bit to select the update source signal.
10. If OUT1* is selected as the update signal:
•
write 0x34 to the CNTRCMD Register.
• write the scan cycle period (low byte first, then high byte) in µsec to the CNTR1
Register.
After writing the high byte the counter starts counting.
Whenever a half space or more is free in the FIFO, an interrupt is generated. The interrupt
handler should write 512 words to the FIFO if there is data to be written. Each update pulse
updates the DACs' output and loads the new value to each DAC. The minimum update cycle
must be longer or equal to (0.5 µsec* the number of channels in Group 1).
If the FIFO is not used either the Counter 1 Interrupt or the External Update Interrupt can be
used, depending on which update source is selected. The program steps are listed as follows:
1.
Write a pattern to the CFG1 Register. The pattern should include:
• a proper value in the CH<0..3> bit field to select channels to be written.
• clearing or setting the EXTUPDEN bit to select the desired update source.
2.
Write a pattern to the CFG2 Register. The pattern should include:
• setting the corresponding LDACx bits for the channels to be scanned.
• setting or clearing corresponding DAC2Sx* bits for straight binary or two's complement
format.
3.
Set the SCANEN bit in the CFG3 Register.
4.
Write the first data to the DACs.
5.
Set the CNTINT1EN or the EXTUPDEN bit in the CFG1 Register depending on the update
source signal selected.
6.
Program the system interrupt controller and enable proper interrupt level.
7.
If OUT1* is selected as the update signal:
• write 0x34 to the CNTRCMD Register.
• write the scan cycle period (low byte first, then high byte) in µsec to the CNTR1
Register.
After writing the high byte the counter starts counting.
© National Instruments Corporation
4-43
AT-AO-6/10 User Manual
Programming
Chapter 4
Each time an update signal updates the channels' output and causes an interrupt. The interrupt
handler should write the new value to each DAC. To write a value to the DAC0, the GRP2WT
bit in the CFG1 Register must be set.
Group 1 Scan Mode Using Retransmission Feature of FIFO
If the total number of words to be written to the DACs for waveform generation is less than the
size of the FIFO (which is 1,024 words), the retransmission feature of the FIFO can be used to
improve the performance. In this mode the data in the FIFO is written to the DACs repeatedly.
In other words, when the last data in the FIFO is written out the writing pointer points to the
beginning of the FIFO and the writing sequence continues. Therefore the FIFO has to load only
once before the process starts. The Update signal works in the same way as other scan modes.
The programming steps are listed as follows.
1.
Write a pattern to the CFG1 Register. The pattern should include:
• setting the FIFOEN bit
• a proper value in the CH<0..3> bit field to select channels to be scanned
• clearing the EXTUPDEN bit at this time
2.
Write a pattern to the CFG2 Register. The pattern should include:
• setting the corresponding LDACx bits for the channels to be scanned.
• setting or clearing corresponding DAC2Sx* bits for selecting straight binary or two's
complement format.
3.
Set the SCANEN bit in the CFG3 Register.
4.
Read the FIFO Clear Register and ignore the result.
5.
Write the data to the FIFO until all of the data is loaded into the FIFO.
6.
Initialize the output channels by using Counter 1 to generate a single pulse to write the
desired first data to the DACs. Thus the next update pulse will dump the proper output to
the channels. To initialize the output channels, you must do the following:
• write 0x18 to the CNTRCMD Register.
• write 2 to the CNTR1 Register.
7.
Set the FFRTEN bit in the CFG2 Register.
8.
Set or clear the EXTUPDEN bit to select the update source signal.
9.
If OUT1* is selected as the update signal:
• write 0x34 to the CNTRCMD Register.
• write the scan cycle period (low byte first, then high byte) in µsec to the CNTR1
Register.
AT-AO-6/10 User Manual
4-44
© National Instruments Corporation
Chapter 4
Programming
After writing the high byte the counter starts counting.
Each update pulse updates the DACs' output and loads the new value to each DAC. The
minimum update cycle is equal to (0.5 µsec * number of channels in Group 1). The process can
be terminated by stopping the update signal or by clearing the FFRTEN or the FIFOEN bits.
Group 1 Single-Channel Mode Using DMA or Interrupt
If the SCANEN bit in the CFG3 Register is cleared, Group 1 is in the single-channel mode. In
this mode only Channel (CH<3..0>) is used for waveform generation. If the FIFO is used, the
data in the FIFO is only sent to channel (CH<3..0>), and the update signal only updates this
channel (and the channel controlled by the same LDACx bit). The rest of the channels in Group 1
are in the immediate update mode; that is, they are written by software and immediately updated.
The programming steps are the same as those in the Scan Mode except the SCANEN bit in the
CFG3 Register is cleared (that is, step 3 in the preceding programming sequence is not needed).
Group 2 Using Interrupt
The channels beyond CH<3..0>, if there are any left, make up Group 2. Group 2 does not use
the FIFO and DMA operation. It can use either the Counter 2 Interrupt or the External Update
Interrupt 2 to write values to the DACs and update the output channels. The Group 2 output
channels are always updated together. The program steps are as follows:
1.
Write a proper value to the CH<0..3> bit field of the CFG1 Register to group the DACs.
2.
Write a pattern to the CFG2 Register. The pattern should include:
• setting the corresponding LDACx bits for the channels in Group 2 for waveform
generation.
• setting or clearing corresponding DAC2Sx* bits for straight binary or two's complement
format.
3.
Write the first data to the DACs.
4.
Set the CNTINT2EN or the EXTINT2EN bit in the CFG1 Register depending on the update
source signal selected.
5.
Program the system interrupt controller, and enable the proper interrupt level.
6.
If OUT2* is selected as the update signal:
• write 0x74 to the CNTRCMD Register.
• write the scan cycle period (low byte first, then high byte) in µsec to the CNTR2
Register.
After writing the high byte the counter starts counting.
Each time an update signal updates the channel output and causes an interrupt. The interrupt
handler should write the new value to each DAC.
© National Instruments Corporation
4-45
AT-AO-6/10 User Manual
Programming
Chapter 4
Application Hints
If you want to use the external DAC update pin to generate an interrupt without updating the
DACs, clear the EXTUPDEN bit in the CFG1 Register and set EXTINT1EN bit in the CFG1
Register. Now a falling edge at the EXTUPDATE* line will not update the DACs in Group 1,
but an active low output signal from Counter 1 will. This interrupt procedure is possible only
with Group 1.
Programming the Digital I/O Circuitry
The digital I/O circuitry is controlled and monitored using the DIN Register, the DOUT Register,
and the two bits DOUTEN1 and DOUTEN2 in CFG3 Register. See the register bit descriptions
earlier in this chapter for more information.
To enable digital output Port A, set the DOUTEN1 bit in the CFG3 Register. To enable digital
output Port B, set the DOUTEN2 bit in the CFG3 Register. When a digital output port is
enabled, the contents of the DOUT Register are driven onto the digital lines corresponding to
that port. The digital output for both Port A and Port B is updated by writing the desired pattern
to the DOUT Register.
For an external device to drive the digital I/O lines, the input ports must be enabled. Clear the
DOUTEN1 bit in the CFG3 Register if an external device is driving digital I/O lines
ADIO<3..0>. Clear the DOUTEN2 bit in the CFG3 Register if an external device is driving
digital lines BDIO<3..0>. The DIN Register can then be read to monitor the state of the digital
I/O lines as driven by the external device.
The logic state of all eight digital I/O lines can be read from the DIN Register. If the digital
output ports are enabled, the DIN Register serves as a read-back register; that is, you can
determine how the AT-AO-6/10 is driving the digital I/O lines by reading the DIN Register.
If any digital I/O line is not driven, it floats to an indeterminate value. If more than one device is
driving any digital I/O line, the voltage at that line can also be indeterminate. In these cases, the
digital line has no meaningful logic value, and reading the DIN Register can return either 1 or 0
for the state of the digital line. Upon start up both ports are enabled for input.
RTSI Bus Trigger Line Programming Considerations
The RTSI switch connects signals on the AT-AO-6/10 to the seven RTSI bus trigger lines. The
RTSI switch has seven pins labeled A<6..0> connected to the AT-AO-6/10 signals and seven
pins labeled B<6..0> connected to the seven RTSI bus trigger lines. Table 4-8 shows the signals
connected to each pin.
AT-AO-6/10 User Manual
4-46
© National Instruments Corporation
Chapter 4
Programming
Table 4-5. RTSI Switch Signal Connections
RTSI Switch Pin
Signal Name
Signal Direction Connection on the
RTSI Bus
A Side
A0
A1
A2
A3
A4
A5
A6
OUT1*
GATE3
N/C
EXTUPD*
OUT3*
OUT2*
EXTUPDATE*
Output
Input
––
Output
Output
Output
Bidirectional
B Side
B0
B1
B2
B3
B4
B5
B6
TRIGGER0
TRIGGER1
TRIGGER2
TRIGGER3
TRIGGER4
TRIGGER5
TRIGGER6
Bidirectional
Bidirectional
Bidirectional
Bidirectional
Bidirectional
Bidirectional
Bidirectional
Pin 15
Pin 13
Pin 11
Pin 9
Pin 7
Pin 5
Pin 3
Programming the RTSI Switch
The RTSI switch can be programmed to connect any of the signals on the A side to any of the
signals on the B side and vice versa. To make this connection, a 56-bit pattern is shifted into the
RTSI switch by writing one bit at a time to the RTSI Switch Shift Register and then writing to
the RTSI Switch Strobe Register to load the pattern into the RTSI switch.
The 56-bit pattern is made up of two 28-bit patterns, one for side A and one for side B of the
RTSI switch. The low-order 28 bits select the signal sources for the B-side pins. The high-order
28 bits select the signal sources for the A-side pins. Each of the 28-bit patterns are made up of
seven 4-bit fields, one for each pin. The 4-bit field selects the signal source and the output
enable for the pin. Figure 4-1 shows the bit map of the RTSI switch 56-bit pattern.
© National Instruments Corporation
4-47
AT-AO-6/10 User Manual
Programming
Chapter 4
Bit Number
55
51 47
43
39
35 31
27
23
19 15
11
7
3 0
A6 A5 A4 A3 A2 A1 A0 B6 B5 B4 B3 B2 B1 B0
MSB
LSB
A0 Control
S0 OUT
EN
31 30 29 28
S2 S1
Bit Number
Figure 4-1. RTSI Switch Control Pattern
In Figure 4-1, the fields labeled A6 through A0 and B6 through B0 are the 4-bit control fields for
each RTSI switch pin of the same name. The 4-bit control field for pin A0 is shown in Figure 41.
The bits labeled S2 through S0 are the signal source selection bits for the pin. One of seven
source signals can be selected. Pins A6 through A0 can select any of the pins B6 through B0 as
signal sources. Pins B6 through B0 select any of the pins A6 through A0 as signal sources. For
example, the pattern 011 for S2 through S0 in the A1 control field selects the signal connected to
pin B3 as the signal source for pin A1.
The bit labeled OUTEN is the output enable bit for that pin. If the OUTEN bit is set, the pin is
driven by the selected source signal (the pin acts as an output pin). If the OUTEN bit is cleared,
the pin is not driven regardless of the source signal selected; instead, the pin can be used as an
input pin.
If the preceding A1 control field contains the pattern 0111, the signal connected to pin B3
(Trigger Line 3) appears at pin A1. On the AT-AO-6/10 board, this arrangement allows the
GATE2* signal to be driven by Trigger Line 3. Conversely, if the B4 control field contains the
pattern 1011, the signal connected to pin A5 appears at pin B4. With this arrangement, Trigger
Line 4 can be driven by the AT-AO-6/10 OUT1* signal. In this way, boards connected via the
RTSI bus can send signals to each other over the RTSI bus trigger lines.
To program the RTSI switch, complete these steps:
1. Calculate the 56-bit pattern based on the desired signal routing.
a. Clear the OUTEN bit for all input pins and for all unused pins.
b. Select the signal source pin for all output pins by setting bits S2 through S0 to the source
pin number.
c. Set the OUTEN bit for all output pins.
AT-AO-6/10 User Manual
4-48
© National Instruments Corporation
Chapter 4
Programming
2. For i = 0 to 55, follow these steps:
a. Copy bit i of the 56-bit pattern to bit 0 of an 8-bit temporary variable.
b. Write the temporary variable to the RTSI Switch Shift Register (8-bit write).
3. Write 0 to the RTSI Switch Strobe Register (8-bit write). This operation loads the 56-bit
pattern into the RTSI switch. At this point, the new signal routing goes into effect.
Step 2 can be completed by simply writing the low-order 8 bits of the 56-bit pattern to the RTSI
Switch Shift Register, then shifting the 56-bit pattern right once, and repeating this two-step
operation a total of 56 times. Only bit 0 of the word written to the RTSI Switch Shift Register is
used. The higher-order bits are ignored.
© National Instruments Corporation
4-49
AT-AO-6/10 User Manual
Chapter 5
Calibration Procedures
This chapter discusses the calibration procedures for the AT-AO-6/10 analog output circuitry.
The AT-AO-6/10 is calibrated at the factory before shipment. An onboard EEPROM stores the
calibration constants, which must be written to the 21 calibration DACs on the AT-AO-10, or 13
calibration DACs on the AT-AO-6, to be properly calibrated. To maintain the 12-bit accuracy of the
AT-AO-6/10 analog output circuitry, periodic self-calibration is recommended. This selfcalibration is performed under software control. Calibration constants are stored in an onboard
EEPROM (see Figure 5-1). Calibration software is included with the board package as part of the
utility application and utility library. Using the self-calibration feature eliminates most errors due to
drift of offset and gain with time and temperature.
© National Instruments Corporation
5-1
AT-AO-6/10 User Manual
Calibration Procedures
Chapter 5
23
22
Reserved
21
127
Factory
96
95
User 4
72
71
User 3
48
47
User 2
24
23
User 1
0
Base
(decimal)
Offset
20
Channel 9 Gain
19
Channel 9 Offset
18
Channel 8 Gain
17
Channel 8 Offset
16
Channel 7 Gain
15
Channel 7 Offset
14
Channel 6 Gain
13
Channel 6 Offset
12
2.5 V Offset
11
Channel 5 Gain
10
Channel 5 Offset
9
Channel 4 Gain
8
Channel 4 Offset
7
Channel 3 Gain
6
Channel 3 Offset
5
Channel 2 Gain
4
Channel 2 Offset
3
Channel 1 Gain
2
Channel 1 Offset
1
Channel 0 Gain
0
Channel 0 Offset
AT-AO-10
AT-AO-6
Figure 5-1. EEPROM Map
Factory calibration is valid with the analog outputs set up for a bipolar output range with the
internal reference. If you want to use a different analog output configuration, it may be necessary
to recalibrate the analog output offsets and gains.
Calibration DACs
There are 21 8-bit DACs on the AT-AO-10 and 13 8-bit DACs on the AT-AO-6 that are used for
calibration. The AT-AO-6/10 is shipped fully calibrated. The factory-determined calibration
values are stored in the location byte 96 through byte 116 of the EEPROM (see Figure 5-1), and a
copy is stored the location word 0 through 20. Upon startup, the copied values are read and
written to the corresponding calibration DAC by software. The user-determined calibration value
can be stored in any portion of User 2 through User 4 of the EEPROM. The offset adjustment
range for each channel is 200 mV in bipolar mode, and 100 mV in unipolar mode. The resolution
is 8-bit, that is, the adjustment range divided by 128. The gain adjustment range is 0.5% of full
AT-AO-6/10 User Manual
5-2
© National Instruments Corporation
Chapter 5
Calibration Procedures
output scale for each channel. The resolution is 8-bit. Recalibration is seldom necessary. Making
a recalibration every year or so is sufficient. The following sections describe the recommended
calibration procedure, which requires a voltmeter with 0.005% resolution and accuracy.
Reference Calibration
The AT-AO-6/10 has built-in 5 V, 10 V, and 2.5 V references for the DACs. These references are
stable with respect to time and temperature. The 5 V and 10 V references do not need to be
calibrated and they are not available on the I/O connector. The 2.5 V reference is available on pin
38 when the 2.5 V OUT bit of the CFG3 Register is set. It is seldom necessary to calibrate the 2.5
V reference. Every one or two years should be sufficient.
To calibrate the 2.5 V reference signal:
1. If you have an AT-AO-10, ensure that channel 9 is in the bipolar mode.
2. Connect the positive probe of the voltmeter to the 2.5 V output on the connector (pin 38).
Connect the negative probe of the voltmeter to the corresponding analog ground pin (pin 39).
3. Run the interactive calibration software for 2.5 V reference calibration. Follow the software
prompt until the finishing of the calibration.
Analog Output Calibration
To null out error sources that affect the accuracy of the output voltages generated, the output
calibration routine calibrates the analog output circuitry by adjusting the following potential sources
of error:
• Analog output offset error
• Analog output gain error
Offset error in the analog output circuitry is the total of the voltage offsets contributed by each
component in the circuitry. This error, which is independent of the DAC output voltage, appears
as a voltage difference between the desired voltage and the actual output voltage generated. To
correct this offset error, the routine writes a value of 0 to the 12-bit DAC under calibration and
adjusts the value written to the corresponding 8-bit calibration DAC until the reading of the
voltmeter is 0 volts. Then the result is stored in the proper location of the EEPROM.
Gain error in the analog output circuitry is the sum of the gain errors contributed by each
component in the circuitry. This error also appears as a voltage difference between the desired
voltage and the actual output voltage generated, but it is proportional to the DAC output voltage.
To correct this gain error, the routine writes a full-scale positive value to the 12-bit DAC under
calibration, and adjusts the value written to the corresponding 8-bit calibration DAC until the
reading of full-scale voltage is reached on the voltmeter. The result is stored in the EEPROM by
the routine. To perform the output calibration:
1. Connect the voltmeter to the desired DAC output between the VOUT pin and AGND pin.
2. Run the interactive calibration software. Follow the software prompt until the operation is
finished.
3. Repeat steps 1 and 2 for each desired channel.
© National Instruments Corporation
5-3
AT-AO-6/10 User Manual
Appendix A
Specifications
This appendix lists the specifications of the AT-AO-6/10. These are typical at 25° C unless
otherwise stated. The operating temperature range is 0° to 70° C.
Analog Output
Number of output channels
6 for the AT-AO-6
10 for the AT-AO-10
Type of DAC
12-bit, multiplying
Relative accuracy (nonlinearity)
0.015% of FSR maximum
(±1.5 mV Unipolar, ±3 mV Bipolar)
±0.006% of FSR typical
(±.6 mV Unipolar, ±1.2 mV Bipolar)
Differential nonlinearity
±1 LSB maximum (monotonic over temperature)
±0.2 LSB typical
Gain error
Internal reference (includes
adjustment range)
Temperature coefficient
External reference
Temperature coefficient
±10 ppm/° C
±0.1%, not adjustable
±5 ppm/° C
Voltage offset
(includes adjustment range)
±100 mV bipolar mode, adjustable to < ±0.5 mV
±50 mV unipolar mode, adjustable to < ±0.3 mV
Voltage Output
Ranges
*Current drive
Output impedance
Capacitive drive
Protection
Settling time to 0.5 LSB
20 V step
10 V step
1 V step
Slew rate
Noise
Current Output
Type
Output resistance
Excitation voltage
Accuracy
© National Instruments Corporation
±1.0%, adjustable to < 0.005%
0 to 10 V, ±10 V
0 to Vref, ±Vref
±5 mA/ each Vout maximum
0.1 Ω maximum
500 pF maximum
Short circuit to ground
10 µsec
5 µsec
4 µsec
20 V/µsec minimum
1 mV rms, DC to 1 MHz
4 to 20 mA sink to ground
1 GΩ minimum
+7 to +40 VDC (at connector pins)
±0.1% FSR
A-1
AT-AO-6/10 User Manual
Specifications
Slew rate
Protection
External reference input impedance
Transfer rate
System memory to onboard FIFO
FIFO to output channel(s)
Appendix A
7.5 mA/µsec
Short circuit and open circuit
11 kΩ unipolar mode, 7 kΩ bipolar mode for each
output channel
300 kwords to 500 kwords/sec maximum
(system and software dependent)
1.6 Mwords/sec maximum
* Each channel can drive ±5 mA current maximum. But the total output power consumption is
200 mW. Thus, if all 10 channel outputs are 10 V, the maximum current output is 2 mA per
channel.
Explanation of Analog Output Specifications
Relative accuracy in a D/A system is the same as nonlinearity because no uncertainty is added due
to code width. Unlike an ADC, every digital code in a D/A system represents a specific analog
value rather than a range of values. The relative accuracy of the system is therefore limited to the
worst-case deviation from the ideal correspondence (a straight line), excepting noise. If a D/A
system has been calibrated perfectly, then the relative accuracy specification reflects its worst-case
absolute error.
Differential nonlinearity in a D/A system is a measure of deviation of code width from 1 LSB. In
this case, code width is the difference between the analog values produced by consecutive digital
codes. A specification of ±1 LSB differential nonlinearity ensures that the code width is always
greater than 0 LSB (guaranteeing monotonicity) and is always less than 2 LSBs.
Digital I/O
Compatibility
TTL-compatible
Output current source capability
Can source 2.6 mA and maintain VOH at 2.4 V
Output current sink capability
Can sink 24 mA and maintain VOL at 0.5 V
Power Requirements (from PC AT I/O Channel)
AT-AO-6
+5 VDC
+12 VDC
-12 VDC
0.6 A typical
60 mA typical + load
60 mA typical + load
AT-AO-10
+5 VDC
1.6 A typical
AT-AO-6/10 User Manual
A-2
© National Instruments Corporation
Appendix A
Specifications
Physical
Board dimensions
13.3 in. by 4.5 in.
I/O connector
50-pin male ribbon-cable connector
Operating Environment
Component temperature
0° to 70° C
Relative humidity
5% to 90% noncondensing
Storage Environment
Temperature
-55° to 150° C
Relative humidity
5% to 90% noncondensing
© National Instruments Corporation
A-3
AT-AO-6/10 User Manual
Appendix B
I/O Connector
This appendix shows the pinout and signal names for the AT-AO-6/10 50-pin I/O connector,
including a description of each connection.
Figure B-1 shows the AT-AO-6/10 I/O connector.
VOUT0
EXTREF0
1
2
IOUT0
3
4
RGND0
VOUT1
5
6
IOUT1
AGND0
7
8
VOUT2
9 10
AGND1
IOUT2
EXTREF2
11 12
RGND2
VOUT3
13 14
IOUT3
AGND2
VOUT4
EXTREF4
15 16
AGND3
17 18
IOUT4
19 20
RGND4
VOUT5
AGND4
21 22
IOUT5
23 24
AGND5
VOUT6
25 26
IOUT6
EXTREF6
27 28
VOUT7
29 30
RGND6
IOUT7
AGND6
31 32
VOUT8
33 34
AGND7
IOUT8
EXTREF8
VOUT9
35 36
RGND8
37 38
IOUT9†
AGND8
39 40
DIO1
DIO3
41 42
DIO0
DIO2
43 44
DIO4
DIO5
45 46
DIO6
DIO7
47 48
49 50
EXTUPDATE*
DGND
+5 V
†IOUT9 is used as the internal reference voltage
(2.5 V) output in the reference calibration mode.
Figure B-1. AT-AO-6/10 I/O Connector
© National Instruments Corporation
B-1
AT-AO-6/10 User Manual
I/O Connector
Appendix B
Signal Connection Descriptions
Pin
Signal Name
Description
1, 5, 9, 13,
17,21, 25,
29, 33, 37
VOUT0 through VOUT9
Analog voltage outputs of Channel 0 through
Channel 9.
2, 6, 10, 14, IOUT0 through IOUT9†
18, 22, 26,
30,34, 38
Analog current outputs of Channel 0 through
Channel 9.
3, 11, 19,
27,35
EXTREF0 through
EXTREF8
Analog external reference inputs for Channel 0
through Channel 9. Each external reference input
signal is shared by two channels. Channel 0 and
Channel 1 share EXTREF0, Channel 2 and
Channel 3 share EXTREF2, etc.
4, 12, 20,
28, 36
RGND0 through
RGND8
Analog external reference ground. Each of these five
ground pins is the ground reference to the
corresponding EXTREFx signal, where x refers to 0
through 8.
7, 8, 15, 16, AGND0 through
23, 24, 31,
AGND8
32, 39
Analog output ground for each channel. Channel 8
and Channel 9 share one ground pin, AGND8.
40, 41, 42,
43
ADIO0 through
ADIO3
Digital I/O Port A signals.
44-47
BDIO0 through
BDIO3
Digital I/O Port B signals.
48
EXTUPDATE*
External DAC Update. If selected, a high-to-low
edge on EXTUPDATE* results in the selected
outputs of DACs being updated with the value
written to them.
49
DGND
Digital Ground. This pin supplies the reference for
the digital signals at the I/O connector as well as the
+5 VDC supply.
50
+5 V
AT-AO-6/10 User Manual
+5 VDC Source. This pin is fused for up to 1 A of
+5 V supply.
B-2
© National Instruments Corporation
Appendix C
MSM82C53 Data Sheet*
This appendix contains the MSM82C53 Programmable Interval Timer (Oki Semiconductor) data sheet.
This counter/timer is used on the AT-AO-6/10.
*
Copyright © Oki Semiconductor. l990. Reprinted with permission of copyright owner.
All rights reserved.
Oki Semiconductor. Microprocessor Data Book 1990/1991.
© National Instruments Corporation
C-1
AT-AO-6/10 User Manual
Appendix D
Customer Communication
For your convenience, this appendix contains forms to help you gather the information necessary
to help us solve technical problems you might have as well as a form you can use to comment on
the product documentation. Filling out a copy of the Technical Support Form before contacting
National Instruments helps us help you better and faster.
National Instruments provides comprehensive technical assistance around the world. In the U.S.
and Canada, applications engineers are available Monday through Friday from 8:00 a.m. to
6:00 p.m. (central time). In other countries, contact the nearest branch office. You may fax
questions to us at any time.
Corporate Headquarters
(512) 795-8248
Technical support fax: (800) 328-2203
(512) 794-5678
Branch Offices
Australia
Austria
Belgium
Denmark
Finland
France
Germany
Italy
Japan
Netherlands
Norway
Spain
Sweden
Switzerland
U.K.
Phone Number
(03) 879 9422
(0662) 435986
02/757.00.20
45 76 26 00
(90) 527 2321
(1) 48 14 24 00
089/741 31 30
02/48301892
(03) 3788-1921
03480-33466
32-848400
(91) 640 0085
08-730 49 70
056/20 51 51
0635 523545
© National Instruments Corporation
Fax Number
(03) 879 9179
(0662) 437010-19
02/757.03.11
45 76 71 11
(90) 502 2930
(1) 48 14 24 14
089/714 60 35
02/48301915
(03) 3788-1923
03480-30673
32-848600
(91) 640 0533
08-730 43 70
056/20 51 55
0635 523154
D-1
AT-AO-6/10 User Manual
Technical Support Form
____________________________________________________
Photocopy this form and update it each time you make changes to your software or hardware, and use the completed
copy of this form as a reference for your current configuration. Completing this form accurately before contacting
National Instruments for technical support helps our applications engineers answer your questions more efficiently.
If you are using any National Instruments hardware or software products related to this problem, include the
configuration forms from their user manuals. Include additional pages if necessary.
Name
Company
Address
Fax (
)
Phone (
Computer brand
)
Model
Processor
Operating system
Speed
Mouse
MHz
yes
Hard disk capacity
RAM
no
M
M
Display adapter
Other adapters installed
Brand
Instruments used
National Instruments hardware product model
Revision
Configuration
National Instruments software product
Configuration
The problem is
List any error messages
The following steps will reproduce the problem
Version
AT-AO-6/10 Hardware and Software
Configuration Form
____________________________________________________
Record the settings and revisions of your hardware and software on the line to the right of each item. Complete a
new copy of this form each time you revise your software or hardware configuration, and use this form as a
reference for your current configuration. Completing this form accurately before contacting National Instruments
for technical support helps our applications engineers answer your questions more efficiently.
National Instruments Products
•
AT-AO-6/10 Revision
____________________________________________________
•
Base I/O Address of AT-AO-6/10
(Factory Setting: Hex 0220)
____________________________________________________
DMA Channels of AT-AO-6/10
(Factory Setting: 6 and 7)
____________________________________________________
Interrupt Level of AT-AO-6/10
(Factory Setting: 10)
____________________________________________________
NI-DAQ or LabWindows Version
____________________________________________________
•
•
•
Other Products
•
Computer Make and Model
____________________________________________________
•
Microprocessor
____________________________________________________
•
Clock Frequency
____________________________________________________
•
Type of Video Board Installed
____________________________________________________
•
DOS Version
____________________________________________________
•
Programming Language
____________________________________________________
•
Programming Language Version
____________________________________________________
•
Other Boards in System
____________________________________________________
•
Base I/O Address of Other Boards
____________________________________________________
•
DMA Channels of Other Boards
____________________________________________________
•
Interrupt Level of Other Boards
____________________________________________________
Documentation Comment Form
____________________________________________________
National Instruments encourages you to comment on the documentation supplied with our products. This
information helps us provide quality products to meet your needs.
Title:
AT-AO-6/10 Manual
Edition Date:
September 1994
Part Number:
320379-01
Please comment on the completeness, clarity, and organization of the manual.
If you find errors in the manual, please record the page numbers and describe the errors.
Thank you for your help.
Name
Title
Company
Address
Phone
Mail to:
(
)
Technical Publications
National Instruments Corporation
6504 Bridge Point Parkway, MS 53-02
Austin, TX 78730-5039
Fax to:
Technical Publications
National Instruments Corporation
MS 53-02
(512) 794-5678
Glossary
____________________________________________________
Prefix
Meaning
Value
pnµmkMG-
piconanomicromillikilomegagiga-
10-12
10-9
10-6
10-3
103
106
109
°
Ω
%
A
AWG
C
CMOS
D/A
DAC
DIP
DMA
EISA
F
FIFO
FSR
hex
Hz
I/O
in.
ksamples
LSB
M
ppm
rms
RTSI
SCXI
sec
TTL
V
VOH
VOL
Vref
VDC
degrees
ohms
percent
amperes
American Wire Gauge
Celsius
complementary metallic oxide semiconductor
digital-to-analog
digital-to-analog converter
dual inline package
direct memory access
Extended Industry Standard Architecture
farads
first-in-first-out
Full-Scale Range
hexadecimal
hertz
input/output
inches
1,000 samples
least significant bit
megabytes of memory
parts per million
root mean square
Real-Time System Integration
signal conditioning eXtensions for instrumentation
seconds
transistor-transistor logic
volts
volts, output high
volts, output low
reference voltage
volts direct current
© National Instruments Corporation
Glossary-1
AT-AO-6/10 User Manual
Index
A
abbreviations used in the manual, vi
acronyms used in the manual, vii
analog output
calibration, 5-3
circuitry, 3-3 to 3-4
programming, 4-40 to 4-46
application hints, 4-46
configuration, 2-8
jumper settings, 2-8
external reference selection, 2-10
internal reference selection, 2-11
jumper settings, 2-8
polarity selection, 2-11 to 2-14
bipolar output selection, 2-12 to 2-13
unipolar output selection, 2-13 to 2-14
signal connections, 2-16 to 2-17
specifications, A-1 to A-2
voltage versus digital code
bipolar, straight binary mode, 4-37
bipolar, two's complement mode, 4-39
unipolar mode, 4-36
Analog Output Register Group, 4-2, 4-31 to 4-36
analog voltage output connections, 2-17
AT bus interface, 2-1
factory settings, 2-1
AT-AO-6/10
block diagram, 3-1
configuration, 2-1 to 2-8
contents of kit, 1-1 to 1-2
introduction, 1-1 to 1-3
optional equipment, 1-3
optional software, 1-2 to 1-3
registers, 4-1 to 4-49
specifications, A-1 to A-3
AWG, vii
B
base I/O address, 2-5
selection, 2-3
switch setting examples, 2-4
bipolar output selection, 2-12 to 2-13
board configuration, 2-1 to 2-8
© National Instruments Corporation
Index-1
AT-AO-6/10 User Manual
Index
C
cabling, 2-21
calibration
analog output, 5-3
DACs, 5-2 to 5-3
EEPROM map, 5-2
reference, 5-3
CFG1 Register, 4-5 to 4-7
CFG2 Register, 4-10 to 4-11
CFG3 Register, 4-13 to 4-14
CMOS, vii
CNTR1 Register, 4-18
CNTR2 Register, 4-19
CNTR3 Register, 4-20
CNTRCMD Register, 4-21 to 4-25
configuration
analog output, 2-8
of AT-AO-6/10, 2-1 to 2-8
Configuration and Status Register Group, 4-1, 4-4 to 4-17
contents of AT-AO-6/10 kit, 1-1 to 1-2
current loop connection, 3-6
current output, 3-5 to 3-7
D
D/A, vii
DAC, vii
calibration, 5-2 to 5-3
registers, 3-7 to 3-8
calibrating, 3-7 to 3-8
loading, 3-7
updating, 3-7
DAC0 through DAC9 registers, 4-34 to 4-36
default settings, 2-3
digital I/O
circuitry, 3-8 to 3-9
programming, 4-46
signal connections, 2-18 to 2-19
specifications, A-2
Digital I/O Register Group, 4-1, 4-28 to 4-31
DIN Register, 4-29
DIP, vii
DMA, vii
channels, 2-6
selection, 2-6
jumper settings for DMA channel 5, 2-6
DMATCCLR Register, 4-16
DOUT Register, 4-30
AT-AO-6/10 User Manual
Index-2
© National Instruments Corporation
Index
E
EEPROM map, 5-2
EISA, vii
environment
operating, A-3
storage, A-3
external reference, 2-9 to 2-11
selection, 2-10
F
field wiring, 2-20 to 2-21
FIFO, vii
FIFO CLEAR Register, 4-33
FIFO WRITE Register, 4-32
FSR, vii
H
hardware installation, 2-14
hex, vi
I
I/O, vii
I/O channel interface circuitry, 3-2 to 3-3
I/O connector, B-1 to B-2
pin assignments, 2-15
initializing the board, 4-39 to 4-40
input signal connections. See signal connections.
installation, 2-14
INT1CLR Register, 4-12
INT2CLR Register, 4-15
internal reference, 2-9
selection, 2-11
interrupt jumper setting IRQ11 and IRQ12, 2-7
interrupt selection, 2-7
J
jumper configuration, 2-1 to 2-8
K
ksamples, vi
© National Instruments Corporation
Index-3
AT-AO-6/10 User Manual
Index
L
LabVIEW for Windows software, 1-2 to 1-3
LabWindows for DOS software, 1-2 to 1-3
LSB, vii
M
MSM82C53 Counter/Timer Register Group, 4-1, 4-17 to 4-25
MSM82C53 data sheet, C-1 to C-3
N
NI-DAQ software for DOS/Windows/LabWindows, 1-2
O
operating environment, A-3
operation of AT-AO-6/10, 3-1 to 3-10
optional equipment for AT-AO-6/10, 1-3
optional software for AT-AO-6/10, 1-2 to 1-3
output signal connections. See signal connections.
output sink current versus output voltage, 3-6
P
parts locator diagram, 2-2
PC I/O channel interface circuitry, 3-2 to 3-3
physical specifications, A-3
polarity selection, analog output, 2-11 to 2-14
bipolar output selection, 2-12 to 2-13
unipolar output selection, 2-13 to 2-14
power connections, 2-19
power requirements, A-2
programming, 4-1 to 4-49
analog output circuitry, 4-40 to 4-46
digital I/O circuitry, 4-46
initializing the board, 4-39 to 4-40
register programming, 4-39
RTSI
bus trigger line, 4-47
switch, 4-48 to 4-49
R
reference calibration, 5-3
register map, 4-1 to 4-2
register programming, 4-39
AT-AO-6/10 User Manual
Index-4
© National Instruments Corporation
Index
register sizes, 4-2
registers, 4-1 to 4-49
Analog Output Register Group, 4-2, 4-31 to 4-36
DAC0 through DAC9 registers, 4-34 to 4-36
FIFO CLEAR Register, 4-33
FIFO WRITE Register, 4-32
Configuration and Status Register Group, 4-1, 4-4 to 4-17
CFG1 Register, 4-5 to 4-7
STATUS Register, 4-8 to 4-9
Configuration and Status Registers
CFG2 Register, 4-10 to 4-11
CFG3 Register, 4-13 to 4-14
DMATCCLR Register, 4-16
INT1CLR Register, 4-12
INT2CLR Register, 4-15
Digital I/O Register Group, 4-1, 4-28 to 4-31
DIN Register, 4-29
DOUT Register, 4-30
MSM82C53 Counter/Timer Register Group, 4-1, 4-17 to 4-25
CNTR1 Register, 4-18
CNTR2 Register, 4-19
CNTR3 Register, 4-20
CNTRCMD Register, 4-21 to 4-25
RTSI Bus Register Group, 4-1, 4-25 to 4-28
RTSISHFT Register, 4-26
RTSISTRB Register, 4-27
rms, vi
RTSI, vii
bus interface circuitry, 3-9 to 3-10
bus trigger line programming, 4-47
switch programming, 4-48 to 4-49
RTSI Bus Register Group, 4-1, 4-25 to 4-28
RTSISHFT Register, 4-26
RTSISTRB Register, 4-27
S
signal connections, 2-14 to 2-20, B-2
analog output, 2-16 to 2-17
descriptions, 2-16
digital I/O, 2-18 to 2-19
power connections, 2-19
update timing signal, 2-20
specifications, A-1 to A-3
analog output, A-1 to A-2
digital I/O, A-2
operating environment, A-3
physical, A-3
power requirements, A-2
storage environment, A-3
STATUS Register, 4-8 to 4-9
storage environment, A-3
© National Instruments Corporation
Index-5
AT-AO-6/10 User Manual
Index
switch settings
base I/O address examples, 2-4
corresponding base I/O address and space, 2-5
T
TTL, vii
U
unipolar output selection, 2-13 to 2-14
unpacking AT-AO-6/10 board, 1-3
update timing signal, 2-20
V
VDC, vii
VOH, vi
VOL, vi
voltage output, 3-4 to 3-5
Vref, vi
AT-AO-6/10 User Manual
Index-6
© National Instruments Corporation