Spectrum PCI.208 User manual

SPECTRUM SYSTEMENTWICKLUNG MICROELECTRONIC GMBH xAHRENSFELDER WEG 13-17 x22927 GROSSHANSDORF xGERMANY
TEL.: +49 (0)4102-6956-0 xFAX: +49 (0)4102-6956-66 xEMAIL: info@spec.de xINTERNET: http://www.spec.de
31.03.2004
PCI.208
100/200 MHz 8 bit transient recorder
for PCI bus
Hardware Manual
Driver Manual

© Spectrum Systementwicklung Microelectronic GmbH - 2004
Ahrensfelder Weg 13-17, 22927 Grosshansdorf, Germany
SBench is a registered trademark of Spectrum Systementwicklung Microelectronic GmbH.
MS-DOS, Windows and Windows NT are trademarks or registered trademarks of Microsoft Corporation.
LabVIEW is a trademark of National Instruments Corporation.
MATLAB is a registered trademark of The MathWorks Inc.
Agilent VEE is a trademark of Agilent.
FlexPro is a registered trademark of Weisang & Co.
DASYLab is a registered trademark of DATALOG GmbH.
Spectrum reserves the right to make improvements and/or changes to the products and/or programs at any time in order to improve
design and to supply the best product possible.

Table of Contents
Table of Contents ................................................................................................................................................. 3
Preface ................................................................................................................................................................5
Product Introduction............................................................................................................................................. 6
General Information................................ ................................ ................................ ................................ .......................... 6
Software ................................ ................................ ................................ ................................ ................................ .........6
Additional information ................................ ................................ ................................ ................................ ...................... 6
Order information ................................ ................................ ................................ ................................ ............................ 6
Installation .......................................................................................................................................................... 7
System Requirements ................................ ................................ ................................ ................................ ............................ 7
Hardware Installation ................................ ................................ ................................ ................................ ........................... 7
Driver Installation ................................ ................................ ................................ ................................ ................................ .7
DOS ................................ ................................ ................................ ................................ ................................ .................. 8
Win 98/ME/2000/XP (WDM) ................................ ................................ ................................ ................................ ..............8
Windows 95 (VXD) ................................ ................................ ................................ ................................ .............................. 8
Windows NT (Legacy) ................................ ................................ ................................ ................................ .......................... 9
Windows NT ................................ ................................ ................................ ................................ ................................ ...9
Installation for Linux................................ ................................ ................................ ................................ ............................ 10
Login ................................ ................................ ................................ ................................ ................................ ............ 10
Select the right driver ................................ ................................ ................................ ................................ ...................... 10
Load Driver ................................ ................................ ................................ ................................ ................................ ...10
Major Number................................ ................................ ................................ ................................ ............................... 10
Installing the Device ................................ ................................ ................................ ................................ ........................ 10
End ................................ ................................ ................................ ................................ ................................ ..............10
Info ................................ ................................ ................................ ................................ ................................ ..............11
Utilities ................................ ................................ ................................ ................................ ................................ .............11
SBench 5.x................................ ................................ ................................ ................................ ................................ ....11
DRVCONFG.EXE ................................ ................................ ................................ ................................ ........................... 11
PCITEST.EXE ................................ ................................ ................................ ................................ ................................ ..11
Hardware Description........................................................................................................................................ 12
Trigger Information................................ ................................ ................................ ................................ ............................. 12
Option Gated Sampling ................................ ................................ ................................ ................................ ...................... 12
Option Multiple Recording ................................ ................................ ................................ ................................ .................. 13
Option Synchronisation ................................ ................................ ................................ ................................ ...................... 14
Block diagram PCI.208 ................................ ................................ ................................ ................................ ...................... 15
Block diagram CPCI.208 ................................ ................................ ................................ ................................ .................... 16
Technical data................................ ................................ ................................ ................................ ................................ ...16
Placement PCI.208................................ ................................ ................................ ................................ ............................. 17
Placement CPCI.208 ................................ ................................ ................................ ................................ .......................... 17
Connectors ................................ ................................ ................................ ................................ ................................ ....18
AC/DC jumper ................................ ................................ ................................ ................................ .............................. 18
Digital inputs PCI.208 ................................ ................................ ................................ ................................ ..................... 18
Digital inputs CPCI.208 ................................ ................................ ................................ ................................ ................... 18
Sync Bus ................................ ................................ ................................ ................................ ................................ .......18
Software Description.......................................................................................................................................... 19
General Information ................................ ................................ ................................ ................................ ........................... 19
Header files on CD ................................ ................................ ................................ ................................ ............................ 19
DLLTYP.H................................ ................................ ................................ ................................ ................................ .......19
SPECTRUM.H ................................ ................................ ................................ ................................ ................................ 19
REGS.H ................................ ................................ ................................ ................................ ................................ ........19
ERRORS.H ................................ ................................ ................................ ................................ ................................ .....19
Driver functions................................ ................................ ................................ ................................ ................................ ..19
int16 SpcInitPCIBoards (int16* count, int16* PCIVersion) ................................ ................................ ................................ .....20
int16 SpcInitBoard (int16 nr, int16 typ) ................................ ................................ ................................ .............................. 20
int16 SpcSetParam (int16 nr, int32 reg, int32 value) ................................ ................................ ................................ ...........20
int16 SpcGetParam (int16 nr, int32 reg, int32* value) ................................ ................................ ................................ ......... 20
int16 SpcSetData (int16 nr, int16 ch, int32 start, int32 len, dataptr data) ................................ ................................ ............... 20
int16 SpcGetData (int16 nr, int16 ch, int32 start, int32 len, dataptr data) ................................ ................................ .............. 21
Error Codes ................................ ................................ ................................ ................................ ................................ ...21
Valid Board Types ................................ ................................ ................................ ................................ .......................... 21
Hints for programming the boards ................................ ................................ ................................ ................................ .....22
Software - Register ................................ ................................ ................................ ................................ ............................. 23
PCI register................................ ................................ ................................ ................................ ................................ ....23

PCI-208 / CPCI.208 manual 31.03.2004
Page 4of 30
PCI Features register ................................ ................................ ................................ ................................ ....................... 23
Error registers ................................ ................................ ................................ ................................ ................................ 23
Status register ................................ ................................ ................................ ................................ ................................ 23
Command register ................................ ................................ ................................ ................................ .......................... 24
Synchronisation (Option) ................................ ................................ ................................ ................................ ................. 24
Memory register ................................ ................................ ................................ ................................ ............................. 24
Posttrigger register ................................ ................................ ................................ ................................ .......................... 24
Features register ................................ ................................ ................................ ................................ ............................. 25
Additional feature register of CPCI.208 ................................ ................................ ................................ ............................. 25
Triggermode register ................................ ................................ ................................ ................................ ....................... 25
Triggerlevel register ................................ ................................ ................................ ................................ ........................ 25
Samplerate register................................ ................................ ................................ ................................ ......................... 26
Double Mem (Option) ................................ ................................ ................................ ................................ ..................... 26
Multiple Recording (Option) ................................ ................................ ................................ ................................ ............. 26
Gated Sampling (option) ................................ ................................ ................................ ................................ ................. 27
Input range register................................ ................................ ................................ ................................ ......................... 28
Data (Read) ................................ ................................ ................................ ................................ ................................ ......28
Example of Driver use ................................ ................................ ................................ ................................ ......................... 29
Transfer speed ................................ ................................ ................................ ................................ ................................ ...30

PCI-208 / CPCI.208 manual 31.03.2004
Page 5of 30
Vorwort
Diese Anleitung enthält detailierte Informationen über die
Hardware Möglichkeiten der PCI.208 und der CPCI.208 von
Spectrum Systementwicklung. Diese Informationen enthalten die
technischen Daten, die Spezifikationen, die Beschreibung der
Schnittstellen.
Außerdem führt diese Beschreibung durch den
Installationsprozess sowohl der Karte als auch der Treiber für
das jeweilige Betriebssystem.
Zuletzt enthält dieses Handbuch die komplette Software
Beschreibung der Karte und des zugehörigen Treibers. Der Leser
wird in die Lage versetzt diese Karte in einem beliebigen PC
System unter einem der unterstützten Betrienbssysteme
einzusetzen.
Achtung, in diesem Handbuch ist keine Beschreibung der
speziellen Treiber für die Produkte von Drittherstellern wie
LabVIEW oder MatLab enthalten. Diese Treiber sind nicht im
normalen Lieferumfang enthalten.
Neuerungen der Karte, zusätzliche Optionen oder Speicher-
aufrüstungen werden auf der Homepage http://www.spec.de
bekannt gegeben. Hier kann ebenfalls die neueste Treiberverison
mit den letzten Fehlerbereinigungen gefunden werden.
Preface
This manual provides detailed information on the hardware
features of the PCI.208 and the CPCI.208 from Spectrum
Systementwicklung. This information includes specifications,
block diagram, connector description.
In addition, this guide takes you through the process of installing
your board and also describes the installation of the delivered
driver package for each operating system.
Finally this manual provides you with the complete software
information of the board and the related driver. The reader of
this manual is able to integrate the board in any PC system with
one of the supported operating systems.
Please note that in this manual there is no description for specific
driver parts like LabVIEW or MatLab software that are not
normally enclosed in the hardware.
For any new information on the board as well as new available
options or memory upgrades please contact our website
http://www.spec.de. You will also find the actual driver
package with the latest bug fixes on our site.
Spectrum reserves the right to make changes at any time in order to improve design and to supply the best
product possible.

PCI-208 / CPCI.208 manual 31.03.2004
Page 6of 30
Product Introduction
Allgemeine Information
Mit der PCI.208 ist eine schnelle Karte für den PCI Bus mit zwei
separaten A/D Wandlern verfügbar. Jeder Kanal kann
wahlweise als Analogeingang oder als 8 Bit Digitaleingang
benutzt werden.
Aufgrund des großen Speichers von bis zu 256 MSample (über
1 Sekunde Aufzeichnung bei voller Geschwindigkeit!) ist auch
die Aufzeichnung extrem breitbandiger Signale möglich. Um
mehrere schnell aufeinander folgende Ereignisse auf zuzeichnen,
kann der Speicher optional segmentiert werden (multiple
recording).
Die vielfältigen Synchronisationsmöglichkeiten, wie Trigger- und
Taktein-/ausgang, machen die PCI.208 zu einen universell
einsetzbaren Werkzeug. Mit Hilfe des internen Sync-Busses ist
der Aufbau von Mehrkanalmeßsystemen sowie die Verbindung
mit anderen Spectrum Karten möglich.
Anwendungsbeispiele: Radar, Qualitätssicherung,
Spektroskopie, Ultraschall, LDA/PDA
General Information
The PCI.208 is a fast board for the PCI bus with two separate
A/D-Converters. Each channel may be switched to analogue or
8 bit digital recording.
Due to the large memory of up to 256 MSamples (more than 1
second recording with full speed) the recording of signals with
extremely wide bandwidth is possible. As an option this large
memory may be segmented (multiple recording) to record several
events with a very small pause between them.
The various synchronisation possibilities like trigger and clock
input and output are forming the PCI.208 to an universal tool.
With the help of the internal sync-bus, it is possible to build up
multichannel-systems as well as to connect Spectrum boards of
different types with each other.
Application examples: Radar, Quality management,
Spectroscopie, Supersonics, LDA/PDA
Software
Kostenlos mitgeliefert werden Treiber für Linux, DOS und
Windows 9x/ME/NT/2000/XP. Für die einfache Program-
mierung sind Beispiele in C/C++, Delphi und Visual Basic
enthalten. Darüber hinaus steht zur komfortablen Steuerung die
Signalverarbeitungssoftware SBench 5.2 kostenlos zur Ver-
fügung. Außerdem sind Treiber für LabVIEW, DASY Lab,
MATLAB und VEE erhältlich.
Software
Drivers for Linux, DOS and Windows 9x/ME/NT/2000/XP as
well as programming examples for C/C++, Delphi and Visual
Basic are delivered with the board. Comfortable programming,
initialising and data display are performed by the free-of-charge
Windows program SBench 5.2. Software drivers for LabVIEW,
DASYLab, MATLAB and VEE are available.
Additional information
To minimise noise keep the PCI.208/CPCI.208 away from the power supply-
The PCI.208/CPCI.208 operates with components having very high power consumption. Therefore it is highly recommended to place the
board near the cooling fan. Do not use the PCI.208/CPCI.208 in hermetic closed systems.
Order information
PCI.208 standard PCI.208 with 16 MSamples memory including drivers PCI208
Option 32 M Memory upgrading to 32 MSamples PCI208-32
Option 64 M Memory upgrading to 64 MSamples PCI208-64
Option 256 M Memory upgrading to 256 MSamples PCI208-256
Multiple recording Memory segmentation for fast repetition rates PCI208-mr
Gate Gated sampling with an external control signal PCI208-gs
Cascading Synchronisation of several PCI.208 for multi-channel-systems PCI208-ks
Double mem Channel 0 uses memory of both channels for all samplerates PCI208-dm
Input range 3 user specific input ranges between r200 mV and r3 V, bipolar or unipolar PCI208-ir
DASYLab driver Drivers for DASYLab 5.0 for Win 95/98, Win 2000 and Win NT PCI208-dl
Agilent VEE driver Drivers for Agilent VEE 5.0 for Win 95/98, Win 2000 and Win NT PCI208-hp
LabVIEW driver Drivers for LabVIEW 4.0 for Win 3.11, Win 95/98, Win 2000 and Win NT PCI208-lv
MatLab driver Drivers for MatLab 5.0 for Win 95/98, Win 2000 and Win NT MATLAB

PCI-208 / CPCI.208 manual 31.03.2004
Page 7of 30
Installation
System Anforderungen
PCI basierter IBM kompatibler PC mit mindestens einem freien
PCI Steckplatz in voller Länge. Der PCI-Bus muß mindestens der
Revision 2.1. genügen. Die Karte arbeitet nicht in einem PCI-Bus
Revision 2.0 oder früher. Wenn mehr als eine Karte im System
installiert werden soll, so empfehlen wir einen zusätzlichen Lüfter
für die Karten einzusetzen.
System Requirements
PCI based IBM PC compatible PC with at least one free full-
length PCI slot. The PCI bus version must be at least revision 2.1.
The boards will not work with older PCI busses of revision 2.0. If
you are installing more than one board in your PC, an additional
cooling fan is strongly recommended.
Hardware Installation
(1) Schalten Sie den PC aus.
(2) Öffnen Sie das Gehäuse.
(3) Wählen Sie einen freien PCI Steckplatz der benötigten
Länge aus. Wenn in Ihrem System kein zusätzlicher Lüfter
installiert ist, so ist die beste Wahl ein Steckplatz, in dem
die Karte nicht direkt neben einer anderen Karte plaziert
ist. Wenn Ihr System einen oder mehrere zusätzliche Lüfter
besitzt, so plazieren Sie die Karte direkt in deren Luftstrom.
(4) Installieren Sie die Karte in dem ausgewählten Steckplatz.
Achten Sie dabei besonders auf den korrekten Sitz des PCI
Steckers im Steckplatz.
(5) Schrauben Sie die Karte an der Frontblende am Gehäuse
fest.
(6) Wenn Sie eine PCI Karte in voller Baulänge erstanden
haben, so liegt Ihrer Karte ein Kartenhalter bei (bei Karten
mit SMB Steckern ist dieser bereits montiert). Es wird
empfohlen diesen Kartenhalter zu installieren, um die Karte
fest im System zu fixieren. Wenn Sie eine Karte mit 9 mm
BNC Steckern haben, so ist nur die nachträgliche Montage
des Bügels an der bereits installierten Karte mit einem
kurzen Schraubendreher möglich.
(7) Starten Sie das System.
(8) Wenn Ihr System nicht bootet, überprüfen Sie bitte den
korrekten Sitz der Karte in ihrem Steckplatz. Starten Sie
danach das System neu.
(9) Wenn Ihr System immer noch nicht bootet kann es jetzt ein
Problem in der Zusammenarbeit mit anderen PCI Karten
geben. Deinstallieren Sie bitte alle anderen PCI Karten bis
auf die Grafikkarte und versuchen Sie das System in dieser
Konfiguration zu starten. Wenn diese Maßnahme zum
Erfolg führt, so muß vermutlich die Reihenfolge der PCI
Karten in Ihrem System geändert werden.
Hardware Installation
(1) Power off your PC.
(2) Open the cover.
(3) Select a free PCI slot of the required length. If you are using
a system with no additional cooling fans, it is the best
decision to put the board in a slot not adjacent to any other
board. If you have a system with additional cooling fans,
place the PCI board in front of a cooling fan.
(4) Install the board in this slot. Make sure that the PCI
connector is right struck into the slot.
(5) Use a screw to fix the bracket to the PC.
(6) If your board has full PCI length a retainer is delivered with
the board (on boards with SMB connectors this retainer is
already installed). It is recommended to use this retainer to
fix the board in the system. If you have a board with 9 mm
BNC connectors, it is not possible to install the retainer
before inserting the board in the system. You need to install
the retainer with a short screwdriver to the already installed
board.
(7) Reboot the system.
(8) If your system will not boot, please check whether the
board is struck correctly into the PCI connector and reboot
again.
(9) If your system will not boot after this, there may be a
problem with other PCI boards. Please de-install all other
PCI boards and try to boot the system without them. If this
works, you may have to change the order of the PCI boards
in the system.
Treiber Installation
Spectrum liefert einen Kartentreiber aus, der alle Karten
unterstützt. Dieser Treiber hat auf allen Betriebssystemen ein
einheitliches Interface. Mit Vorstellung der Treiberversion 3.00,
die jetzt einen WDM kompatiblen Treiber enthält, mußte eine
Unterteilung in PCI und ISA Karten gemacht werden. Bitte
wählen Sie den passenden Treiber anhand der Tabelle aus.
Wenn Sie ISA und PCI Karten von Spectrum gemischt in einem
System benutzen, so nutzen Sie bitte den ISA Treiber.
Driver Installation
Spectrum supplies one driver that supports all boards with an
unique interface for all operating systems. With introduction of
the new version 3.00 which includes a WDM style driver there
has been a separation made between PCI and ISA boards.
Please use the matching driver that is listed in the table. If you
mix ISA and PCI boards from Spectrum in your system you need
to use the ISA driver.
Operating System PCI boards only PCI and ISA mixed ISA boards only
Windows XP WDM driver (Windows 98/ME/2000/XP) Legacy driver (Windows NT) Legacy driver (Windows NT)
Windows 2000 WDM driver (Windows 98/ME/2000/XP) Legacy driver (Windows NT) Legacy driver (Windows NT)
Windows ME WDM driver (Windows 98/ME/2000/XP) VXD driver (Windows 95) VXD driver (Windows 95)
Windows 98 WDM driver (Windows 98/ME/2000/XP) VXD driver (Windows 95) VXD driver (Windows 95)
Windows NT Legacy driver (Windows NT) Legacy driver (Windows NT) Legacy driver (Windows NT)
Windows 95 VXD driver (Windows 95) VXD driver (Windows 95) VXD driver (Windows 95)

PCI-208 / CPCI.208 manual 31.03.2004
Page 8of 30
DOS OBJ files (DOS driver) OBJ files (DOS driver) OBJ files (DOS driver)
Linux Linux Kernel Module Linux Kernel Module Linux Kernel Module
DOS
Der Treiber für DOS besteht aus einem Satz Objektdateien zum
Linken in ein DOS Programm. Die Treiber Dateien können auf
der CD im Verzeichnis \DRIVER\DOS auf der Diskette gefunden
werden. Beispiele zur Nutzung von Borland C++ 3.1 sind
ebenfalls vorhanden. Zur Benutzung der Treiber müssen nur die
Objekt Dateien *.OBJ und die Header Dateien *.H ins
Arbeitsverzeichnis kopiert werden.
Wenn die Beispielprogramme bei der Arbeit mit DOS nicht
laufen, so kann es hier zu einem Problem mit den im System
installierten Software Treibern gekommen sein. Starten Sie das
System erneut ohne irgendwelche installierten Treiber. Wenn das
Programm so läuft, fügen Sie Schritt für Schritt Ihre Treiber
wieder in das System ein, um den problematischen Treiber
herauszufinden.
Auf einigen Motherboards kann es zu Problemen mit älteren
Versionen der Datei EMM386.EXE kommen. Die Version 6.22
läuft hier korrekt. Es kann daher nötig sein, diese Datei gegen
eine neuere Version auszutauschen.
DOS
The driver consists of a set of object files ready to link to a DOS
program. The driver files are found on CD in the directory
\DRIVER\DOS on the driver disk. Examples for the use with
Borland C++ 3.1 are included. To use the driver files, just copy
the object *.OBJ and header *.H files to your working directory.
If the example files are not working when using DOS operating
system, there may be problems with the installed software
drivers. Start the system once again without any software drivers
installed. After this install the drivers step by step to find out the
problematic software driver. On some motherboards, there may
be problems when using older versions of EMM386.EXE. The
version 6.22 works correctly. It may be necessary to update this
driver to a higher version.
Win 98/ME/2000/XP (WDM)
Wenn das Betriebssystem Windows 98, Windows ME,
Windows 2000 oder Windows XP installiert ist, wird die PCI
Karte nach dem nächsten Start automatisch erkannt. Das System
bietet die direkte Installation eines Treibers für die Karte an.
Wählen Sie hier als Installationsquelle die mitgelieferte CD. Die
Treiberdateien befinden sich im Verzeichnis
\Driver\Win98_2k_XP. Die Treiber stehen sofort nach der
Installation ohne Neustart des Systems zur Verfügung.
Die Treiber bestehen aus einer 32 Bit DLL, die alle Funktionen
des Treibers enthält, und einem WDM-Kernel-Treiber (SYS). Die
DLL kann mit allen Systemen benutzt werden, die eine
Schnittstelle zu 32 Bit Windows DLLs anbieten. Beispiele für
Microsoft Visual C++, Borland Delphi und Microsoft Visual Basic
sind ebenfalls enthalten.
Falls Sie Visual C++ benutzen, so ist es möglich, die Library
Datei SPECTRUM.LIB mit in ein Projekt zu integrieren, um die
Funktionen des Treibers auf einfache Weise in das Programm
einzubinden. Die Library Datei arbeitet nicht mit Borland
Compilern zusammen.
Die beiden DLLs unterscheiden sich nur im Aufruf der
Funktionen. Die Datei SPECTRUM.DLL exportiert die Funktionen
als _cdecl (für C, C++, Delphi), die Datei SPCSTD95.DLL als
_stdcall (für Visual Basic). Je nach benutztem Compiler kann eine
der beiden DLLs benutzt werden.
Win 98/ME/2000/XP (WDM)
When the operating system Windows 98, Windows ME,
Windows 2000 or Windows XP is installed, the PCI board will
be automatically recognised after the rebooting. The system will
ask for a driver to be installed. Select the install directory from
the Spectrum driver CD. The driver files are placed in the
directory \Driver\Win98_2k_XP. The driver is ready to use
directly after installing, no reboot is necessary.
The driver consists of a 32 bit windows DLL which includes all
functions of the driver and a WDM kernel driver (SYS). The DLL
can be used with all systems which accept 32 bit windows DLLs.
Examples for Microsoft Visual C++ 4.x, Borland Delphi and
Microsoft Visual Basic are included.
If you are using Microsoft Visual C++, you may use the delivered
library file SPECTRUM.LIB to access the driver functions easily.
The library file will not work with Borland compilers.
The only difference between the both DLLs is the calling
convention. The file SPECTRUM.DLL uses _cdecl definition (for C,
C++, Delphi), the file SPCSTD95.DLL uses _stdcall definition (for
Visual Basic). Depending on the used programming language,
one of the two DLLs may be used.
Windows 95 (VXD)
Die Treiber für Windows 95 bestehen aus einer 32 Bit DLL, die
alle Funktionen des Treibers enthält, und einem Virtual Device
Driver (VXD). Die DLL kann mit allen Systemen benutzt werden,
die eine Schnittstelle zu 32 Bit Windows DLLs anbieten. Beispiele
für Microsoft Visual C++, für Borland Delphi und für Visual Basic
sind ebenfalls enthalten.
Zur Installation des Treibers benutzen Sie bitte die auf der CD
enthaltene Installationsversion im Verzeichnis /Install/Win95Drv.
Hiermit werden alle Treiberdateien in die vorgesehenen
Verzeichnisse installiert.
Falls Sie Visual C++ benutzen, so ist es möglich, die Library
Datei SPECTRUM.LIB mit in ein Projekt zu integrieren, um die
Funktionen des Treibers auf einfache Weise in das Programm
Windows 95 (VXD)
The driver consists of a 32 bit windows DLL which includes all
functions of the driver and a virtual device driver (VXD). The DLL
can be used with all systems which accept 32 bit windows DLLs.
Examples for Microsoft Visual C++ 4.x, Borland Delphi and
Microsoft Visual Basic are included.
You need to use the install program for driver installtion. The
program is located on CD in the directory /Install/Win95Drv.
The program installs all driver files in the correct directory.
If you are using Microsoft Visual C++, you may use the delivered
library file SPECTRUM.LIB to access the driver functions easily.
The library file will not work with Borland compilers.
The only difference between the both DLLs is the calling
convention. The file SPECTRUM.DLL uses _cdecl definition (for C,

PCI-208 / CPCI.208 manual 31.03.2004
Page 9of 30
einzubinden. Die Library Datei arbeitet nicht mit Borland
Compilern zusammen.
Die beiden DLLs unterscheiden sich nur im Aufruf der
Funktionen. Die Datei SPECTRUM.DLL exportiert die Funktionen
als _cdecl (für C, C++, Delphi), die Datei SPCSTD95.DLL als
_stdcall (für Visual Basic). Je nach benutztem Compiler kann eine
der beiden DLLs benutzt werden.
C++, Delphi), the file SPCSTD95.DLL uses _stdcall definition (for
Visual Basic). Depending on the used programming language,
one of the two DLLs may be used.
Windows NT (Legacy)
Der Treiber besteht aus einem Kernel Mode Treiber für Windows
NT und einer 32 Bit DLL, die die Funktionen des Kernel Mode
Treibers benutzt. Beispiele für Microsoft Visual C++, Borland
Delphi und Microsoft Visual C++ werden ebenfalls mitgeliefert.
Windows NT (Legacy)
The driver consists of a kernel mode driver for Windows NT and
a 32 bit windows DLL which uses the functions of the kernel
mode driver. Examples for Microsoft Visual C++, Borland Delphi
and Microsoft Visual Basic are included.
Windows NT
(1) Loggen Sie sich als ADMINISTRATOR oder als ein Benutzer
mit dem Recht Treiber zu installieren und die Registry zu
ändern in Ihr System ein.
(2) Starten Sie das Setup Programm auf der Treiber CD. Sie
finden das Installationsprogramm im Verzeichnis
\Install\WinNTDrv.
(3) Das Installationsprogramm installiert den Kernel Mode
Treiber und die 32 Bit Windows DLL, sowie einige
Hilfsprogramme im Verzeichnis Spectrum GmbH. Die
Registry wird ebenfalls angepaßt.
(4) Starten Sie den Computer neu.
(5) Die PCI Karten werden automatisch vom Kernel erkannt und
eingetragen.
(6) Falls der Geräte Treiber nicht korrekt startet (Eine Nachricht
im Event Log von der Datei SPCDRV.SYS), ist der Treiber
nicht korrekt konfiguriert. Bitte überprüfen Sie, ob mit dem
Programm DRVCONFG.EXE, ob die Standard Karte PCI
Board eingetragen ist.
Windows NT
(1) Login as ADMINISTRATOR or with another account having
the right to install drivers and to change the registry.
(2) Start the setup program on the driver CD. The installation
program is found in the directory \Install\WinNTDrv.
(3) The installation routine will install the kernel mode driver,
the 32 bit windows DLL and some utilities in the program
folder Spectrum GmbH. It will also update the registry.
(4) Restart the computer
(5) The PCI boards are automatically detected by the kernel
driver.
(6) If the service does not start correct (A message in the event
log from the service SpcDrv.SYS), the driver is not setup
correctly. Please run DRVCONFG.EXE and check weather
the standard board is correctly set to PCI Board
Falls Sie Visual C++ benutzen, so ist es möglich, die Library
Datei SPECTRUM.LIB mit in ein Projekt zu integrieren, um die
Funktionen des Treibers auf einfache Weise in das Programm
einzubinden. Die Library Datei arbeitet nicht mit Borland
Compilern zusammen.
Es werden die beiden DLLs SPECTRUM.DLL und SPCSTDNT.DLL
installiert. Die beiden DLLs unterscheiden sich nur im Aufruf der
Funktionen. Die Datei SPECTRUM.DLL exportiert die Funktionen
als _cdecl (für C, C++, Delphi), die Datei SPCSTDNT.DLL als
_stdcall (für Visual Basic). Je nach benutztem Compiler kann eine
der beiden DLLs benutzt werden.
If you are using Microsoft Visual C++, you may use the delivered
library file SPECTRUM.LIB to access the driver functions easily.
The library file will not work with Borland compilers.
The both DLLs SPECTRUM.DLL and SPCSTDNT.DLL are installed.
The only difference between the both DLLs is the calling
convention. The file SPECTRUM.DLL uses _cdecl definition (for C,
C++, Delphi), the file SPCSTD95.DLL uses _stdcall definition (for
Visual Basic). Depending on the used programming language,
one of the two DLLs may be used.

PCI-208 / CPCI.208 manual 31.03.2004
Page 10 of 30
Installation für Linux
Der Treiber besteht aus einem ladbaren Kernel Modul für alle
Karten. Beispiele für Gnu C werden ebenfalls mitgeliefert.
Installation for Linux
The driver consists of a loadable kernel module for all boards.
Examples for Gnu C are also delivered.
Login
Loggen Sie sich als root ein oder als Benutzer mit dem Recht
Module zu laden und Devices anzulegen.
Auswahl des richtigen Treibers
Die Verwendung von Linux-Kernel-Modulen hängt stark von der
Kernelversion sowie der verwendeten Distribution ab. Diesem
Umstand Rechnung tragend werden die Spectrum Treiber in
verschiedenen Versionen ausgeliefert. Bitte wählen Sie das am
besten passende Archiv für Ihre Installation aus.
Treiber laden
Der Linux Treiber wird als ladbares Kernel Modul spc.o
ausgeliefert. Der Treiber enthält alle Spectrum PCI, CompactPCI
und ISA Karten. Die PCI und CompactPCI Karten werden
automatisch erkannt.
Laden Sie das Modul mit insmod f spc.o.
Der insmod Befehl kann die Warnung generieren, daß das
Kernel Modul für eine andere Kernel Version kompiliert wurde.
Dies Meldung können Sie ignorieren.
Wenn das Kernel-Modul nicht in Ihrere Linux Installation geladen
werden kann, so ist es notwendig den Treiber auf Ihrem System
neu zu kompilieren. Bitte setzen Sie sich mit Spectrum in
Verbindung, um die benötigten Sourcedateien zu bekommen.
Major Number
Für den Zugriff auf den Treiber benötigen Sie die zugeteilte
Major number. Sie finden diese Zahl in /proc/devices. Der
Treiber trägt den Namen spec. Normalerweise ist diese
Nummer 254, kann aber auch je nach vorher installierten
Treibern davon abweichen.
Device anlegen
Als letzten Schritt muß ein Device mit dem Treiber verknüpft
werden. Dieses geschieht über den Befehl mknod. Als Major
number wird die in /proc/devices gefunden Zahl eingetragen.
Als Minor Number der Index der Karte die angesprochen wird.
Die Indexzählung beginnt bei 0.
mknod /dev/spc0 c 254 0 für die erste Karte
mknod /dev/spc1 c 254 1 für die zweite Karte
Stellen Sie sicher, daß alle Benutzer, die mit dem Treiber
arbeiten müssen Schreibrechte für das neu angelegte Device
haben. Dafür können Sie allen Personen Schreibrechte für das
Device erteilen: chmod a+w /dev/spc0.
Ende
Die Karte kann jetzt über das angelegte Device angesprochen
werden. Das genaue Vorgehen kann aus den Beispielen
entnommen werden.
Nach einem Neustart von Linux ist es nur nötig das Treiber
Modul zu laden. Das Device muß nur geändert werden, falls die
Major Number nicht mehr stimmt.
Login
Login as root or login as a user who has the right to load
modules and to install devices.
Select the right driver
Linux kernel modules are heavily depending on the kernel
version and distribution. Therefore the kernel driver for the
Spectrum boards is shipped in different versions. Please select
the archieve that is best matching your installed version.
Load Driver
The linux driver is shipped as the loadable kernel module spc.o.
The driver includes all Spectrum PCI, CompactPCI and ISA
boards. All PCI and CompactPCI boards are recognised
automatically.
Load the module with insmod f spc.o
The insmod command could generate a warning that the driver
module was compiled for an other kernel version. You could
ignore this warning.
It is not possible to use the driver module with linux versions prior
to kernel version 2.0.
If the kernel module could not be loaded in your linux installation
it is necessary to compile the driver directly on your system.
Please contact Spectrum to get the needed source files.
Major Number
For accessing the device driver it is necessary to know the major
number of the driver. This number is listed in /proc/devices. The
device driver is called spec in this list. Normally this number is
254 but this depends on the already installed device drivers.
Installing the Device
You connect a device to the driver with the mknod command.
The major number is the number found in /proc/devices. The
minor number is the index of the board starting with 0.
mknod /dev/spc0 c 254 0 for the first board
mknod /dev/spc1 c 254 1 for the second board
Make sure that the users that should work with the driver has
write rights to access the device. Therefore you should give all
persons all rights to the device: chmod a+w /dev/spc0
End
The board could now be accessed using the device. See the
example files for more information.
After restarting linux it is only necessary to load the driver again.
The device must only be changed if the major number has
changed.

PCI-208 / CPCI.208 manual 31.03.2004
Page 11 of 30
Der Zugriff auf das Linux Device erfolgt mit Read und Write
Befehlen sowie ioctl Befehlen. Eine Umsetzung dieser Befehle in
die Standard Treiber Schnittstelle von Spectrum kann über die
Datei spcioctl.inc realisiert werden. Das genaue Vorgehen ist
aus den Beispielen ersichtlich.
Accessing the linux device is done with read and write
commands and ioctl commands. These commands could be
converted to the standard Spectrum driver interface with the file
spcioctl.inc. See the examples for this.
Info
Informationen über die installierte Spectrum Karten können unter
/proc/spectrum abgefragt werden. Für ISA Karten ist hier der
Typ und die Basisadresse sichtbar. Für PCI Karten sind alle
grundlegenden Informationen aus dem onboard EEProm
aufgelistet.
Info
Information about the installed boards could be found in the
/proc/spectrum file. For ISA boards the board type and the
base address are listed. For PCI boards the basic information
from the onboard EEProm is listed.
Hilfsprogramme Utilities
SBench 5.x
Auf der CD wird eine Vollversion von SBench 5.x mitgeliefert.
Das Programm unterstützt alle aktuellen Erfassungs-, Ausgabe-
und Digital I/O Karten von Spectrum. Je nach verwendeter Karte
und nach Konfiguration des Programms kann SBench als
Digitales Speicheroszilloskop, als Spectrumanalyser, als
Logikanalyser oder einfach als Datenerfassungssystem benutzt
werden. Verschiedenen Import- und Exportfunktionen erlauben
die einfache Nutzung von SBench mit diversen anderen
Programmen.
Eine Installationsversion ist im Verzeichnis /Install/SBench5 auf
der CD zu finden. Im Verzeichnis /Manuals auf der CD ist eine
kurze Anleitung zur Bedienung von SBench in Deutsch und
Englisch zu finden. Eine aktuelle Version ist jederzeit aus dem
Internet unter www.spec.de zu bekommen.
SBench 5.x
A full version of SBench 5.x is delivered with the board on CD.
The program supports all actual acquisition, generator and
digital I/O boards from Spectrum. Depending on the used board
and the software setup, one could use SBench as a digital
storage oscilloscope, a spectrum analyser, a logic analyser or
simply as a data recording front end. Different export and import
formats allow the use of SBench together with a variety of other
programs.
An install version of the program is found in the directory
/Install/SBench5 on CD. There is also a short program
description in german and english in the /Manuals directory.
A current version could be downloaded from the internet at
www.spec.de at any time.
DRVCONFG.EXE
Automatisch installiert im Ordner Spectrum GmbH bei der
Installation des Windows NT Treibers. Dieses Programm erlaubt
die Änderung der Treiber Konfiguration der Spectrum ISA Karten
unter Windows NT. Für PCI Karten braucht das Programm nicht
benutzt werden. Das Programm ändert die Eintragungen in der
Registry. Die neue Konfiguration wird beim nächsten Start des
Systems benutzt.
DRVCONFG.EXE
Installed in the folder Spectrum GmbH when installing the
Windows NT driver. This utility manages the driver configuration
of the Spectrum ISA boards for Windows NT. The program need
not to be used for PCI boards. The utility changes the registry.
The new configuration will only be used after the next reboot of
the system.
PCITEST.EXE
Zu finden auf der Treiber CD im Verzeichnis \UTILS. Dieses
Hilfsprogramm sammelt alle verfügbaren Informationen über alle
im System installierten Spectrum PCI Karten. Die Informationen
werden aus dem on-board EEProm ausgelesen und angezeigt.
Das Programm läuft nur unter DOS oder in der DOS-Box von
Windows 3.11 oder Windows 9x/ME. Das Programm läuft
nicht unter Windows NT/2000/XP.
PCITEST.EXE
Found on the driver CD in the directory \UTILS. This utility will
collect some information about all installed Spectrum PCI boards.
The information of the onboard EEPROM will be read out and
shown. The utility will only work with DOS, Windows 3.1x,
Windows 9x and Windows ME. It will not work with Windows
NT/2000/XP.

PCI-208 / CPCI.208 manual 31.03.2004
Page 12 of 30
Hardware Description
Trigger Informationen
Nach dem Start der PCI.208/CPCI.208 werden die Eingänge
abgetastet und die konvertierten Daten im Speicher abgelegt
(Der Speicher arbeitet als Ringbuffer, die Daten werden
kontinuierlich in den Speicher geschrieben). Wenn für die
Aufnahme Pretrigger programmiert ist, werden die Trigger-
ereignisse ignoriert bis der programmierte Speicher einmal
komplett mit Daten gefüllt ist. Danach wird die
Triggerverarbeitung freigeschaltet. Dieses Verhalten kann über
die Option SPC_NOPRETRIGGER abgeschaltet werden.
Wenn der Software Trigger ausgewählt wurde, wird sofort ein
Triggerereignis erkannt. Wird der TTL Trigger benutzt, so wird
ein Triggerereignis erkannt, wenn das TTL Signal am Eingang
(Connector 2) von LOW Pegel zu HIGH Pegel wechselt
(steigende Flanke) oder von HIGH Pegel zu LOW Pegel wechselt
(fallende Flanke).
Ist der Kanaltrigger (Kanal 0 oder Kanal 1) selektiert, so werden
die vier höchstwertigen Bits des AD-Wandlers mit dem im
Triggerlevel Register programmierten Wert verglichen. Wird der
Wert vom anliegenden Signal gekreuzt (Von kleiner zu größer
bei steigender Flanke, oder von größer zu kleiner bei fallender
Flanke), wird ein Triggerereigniss erkannt.
Der Status ändert sich zu Trigger found und der Postcounter
fängt an den programmierten Posttrigger Wert herunter zu
zählen. Wenn dieser Wert Null erreicht, stoppt die
PCI.208/CPCI.208 und der Status ändert sich auf Ready.
Trigger Information
After the PCI.208/CPCI.208 has been started it samples the
input signals and stores the converted data to the memory. (The
memory operates as a circular buffer, so data are written
continuously to the RAM). If pretrigger is programmed, no
triggerevents are processed until the programmed memory is
filled one time completely with data. Afterwards the trigger
sequencer will be enabled. This functionality may be disabled
with the option SPC_NOPRETRIGGER.
If Software trigger is used a triggerevent is detected immediately.
Using the TTL trigger will cause a triggerevent if the external TTL
input will go from low to high (rising edge) or from high to low
(falling edge).
When the triggermode is set to channel-trigger (channel 0/1) the
4 MSBs of the ADC are compared to the programmed value in
the trigger-level-register. If the value is crossed by the signal (less
to greater when rising edge, or greater to less when falling
edge) a triggerevent is detected.
The status will be change to trigger found and the postcounter
starts counting down the posttrigger value. After the postcounter
reaches zero the PCI.208/CPCI.208 stops and signals ready
in the status register,
Option Gated Sampling
Die Option Gated Sampling erlaubt die Aufnahme/Wieder gabe
eines Signals gesteuert über ein Gatesignal. Es werden nur
Daten aufgenommen, wenn das Gatesignal einem
programmierten Pegel (TTL HIGH oder TTL LOW) entspricht.
Option Gated Sampling
The option Gated Sampling allows recording/replay of a signal
controlled by an gate signal. Data is only recorded if the gate
signal is equal to a programmed level (TTL HIGH or TTL LOW).
N
*DWHVLJ Q D O
6LJQDO
'DWDLQPHPRU\
GHOD\
GHOD\
GHOD\
0HPVL]H N
GHOD\
GHOD\
SURJUDPPHG
PHPVL]HUHDFKHG

PCI-208 / CPCI.208 manual 31.03.2004
Page 13 of 30
Option Multiple Recording
Die Option Multiple Recording erlaubt die Aufnahme/Ausgabe
mehrerer Triggerereignisse, ohne die Hardware dazwischen neu
zu starten. Der Speicher der Karte wird in mehrere gleich große
Segmente unterteilt. Jedes Segment wird bei Auftreten eines
Triggerereignisses mit Daten gefüllt. Im Multiple Recording
Modus ist kein Pretrigger möglich.
Option Multiple Recording
The option Multiple Recording allows the recording/replay of
several trigger events without restarting the hardware. The
memory of the board will be divided into several segments of the
same size. Each segment will be filled with data when a trigger
event occurs. Pretrigger is not available when using Multiple
Recording
N
N
N
N
7ULJJ HUHYHQW
6LJQDO
'DWDLQPHPRU\
GHOD\
GHOD\
GHOD\
6HJPHQWVL]H3R VWWULJ J HU N
0HPVL]H N

PCI-208 / CPCI.208 manual 31.03.2004
Page 14 of 30
Option Synchronisierung
Diese Option erlaubt es, mehrere Karten von Spectrum
miteinander intern zu synchronisieren, um auf einfache Art und
Weise Mehrkanalsystem aufzubauen. Es ist ebenso möglich,
synchrone Systeme aufzubauen, die in einem Rechner sowohl
analoge Kanäle als auch digitale Kanäle zusammen
aufzeichnen.
Die Karten können innerhalb eines Kartentyps synchronisiert
werden. Genauso ist es möglich verschiedene Spectrum Karten,
die alle den SPC100-SyncBus unterstützen, miteinander frei zu
kombinieren.
Eine Karte wird als Master konfiguriert und generiert den Takt
und die Triggerinformation für die anderen (Slave) Karten. Alle
Karten laufen synchron mit exakt dem gleichen Abtasttakt.
Option Synchronisation
This option allows it to connect several boards from Spectrum to
generate a multi-channel system. It is also possible to build up
synchronously mixed mode systems to record analogue channels
and digital channels together.
The boards may be connected in one type of board with each
other. Also it is possible to connect Spectrum boards of different
types that uses the SPC100-SyncBus together.
One board is dedicated as the master board and generates
clock and trigger signals for the other (slave) boards. All boards
are running synchronously.
Example configuration for Multi-Channel Systems :
x3 boards PCI.248 32MSample memory
x1 board PCI.DIO32 32MSample memory
xSynchronisation cable
forming a synchronously system with
x6 analogue channels 8 bit resolution
x32 digital channels
xsamplerate 1.5 MHz to 400 MHz
x96 MByte on-board memory
x16 MSample memory per channel

PCI-208 / CPCI.208 manual 31.03.2004
Page 15 of 30
Block diagram PCI.208

PCI-208 / CPCI.208 manual 31.03.2004
Page 16 of 30
Block diagram CPCI.208
Technical data
Resolution 8 bit Input range r200 mV r500 mV r1 V
Samplerate 781 kHz up to 200 MHz Offset error (100 MHz) d3 LSB d2 LSB d2 LSB
Bandwidth DC 3 dB 0 Hz to 90 MHz Offset error (200 MHz) d4 LSB d3 LSB d3 LSB
Bandwidth AC 3 dB 40 Hz to 90 MHz Gain error (100 MHz) d4 % d3 % d2 %
Differential linearity error d r0.5 LSB Gain error (200 MHz) d4 % d3 % d2 %
Integral linearity error d r0.5 LSB Noise (100 MHz) d1 LSB d1 LSB d1 LSB
ENOB fs = 1 MHz, fck=100 MHz 7.5 bit typ. (ADC) Noise (200 MHz) d2 LSB d2 LSB d2 LSB
ENOB fs = 31 MHz, fck=100 MHz 6.5 bit typ. (ADC) Crosstalk d-48 dB d-48 dB d-48 dB
Aperture jitter 10 ps typ. (ADC)
Input impedance 50 Ohm or 1 MOhm || 25 pF Dimension 312 mm x 107 mm
TTL Input impedance 110 Ohm || 15 pF Connector 9 mm BNC female
Multi/Gate: Trig to 1st sample delay 8 to 42 samples (fix) Overvoltage protection r20 V
Multi/Gate: recovery (d100 MHz) < 20 samples Warm up time 10 minutes
Trigger output delay 6 samples Operating temperature 0qC - 50qC
Trigger accuracy (d100 MHz) 1 sample Storage temperature -10qC - 70qC
Trigger accuracy (200 MHz) 2 samples Humidity 10% to 90% non condensing
Digital input to analogue input delay 2 samples
Ext. clock: output delay ca. - 6 ns
Ext. clock: delay to internal clock ca. 10 ns +3.3 V +5 V +12 V -12 V
Sync: board to board trigger jitter 0 samples Power consumption (A) 0 mA 3800 mA 0 mA 0 mA
Sync: board to board clock delay d1 ns Power consumption (W) 0.0 W 19.0 W 0.0 W 0.0 W

PCI-208 / CPCI.208 manual 31.03.2004
Page 17 of 30
Placement PCI.208
-
'&FKDQQHO
-
'&FKDQQHO
'LJLWDO,QSXWV
FKDQQHO
'LJLWDO,QSXWV
FKDQQHO
6\QF%XV
Placement CPCI.208
-
'&FKDQQHO
'LJLWDO,QSXWV
6\QF%XV
-
'&FKDQQHO

PCI-208 / CPCI.208 manual 31.03.2004
Page 18 of 30
Connectors
The PCI.208/CPCI.208 has four 9 mm BNC connectors.
Connector 0: analogue channel 0.
Connector 1: analogue channel 1.
Connector 2: triggermode = TTLPOS or TTLNEG: external trigger input
triggermode = GATELOW or GATEHIGH external gate input
TRIGGEROUT = 1 trigger output
TRIGGEROUT = 0 not used
Connector 3: EXTERNALCLOCK = 1 clock input
EXTERNOUT = 1 clock output
EXTERNOUT = 0 not used
AC/DC jumper
DC coupling channel 0 DC coupling channel 1
J10 set channel 0 DC coupled J12 set channel 1DC coupled
J10 clear channel 0 AC coupled J12 clear channel 1 AC coupled
Digital inputs PCI.208
Digital Inputs channel 0 Digital Inputs channel 1
Pin 1 D7 (marked D7) Pin 1 D7 (marked D15)
Pin 3 D6 Pin 3 D6
Pin 5 D5 Pin 5 D5
Pin 7 D4 Pin 7 D4
Pin 9 D3 Pin 9 D3
Pin 11 D2 Pin 11 D2
Pin 13 D1 Pin 13 D1
Pin 15 D0 (marked D0) Pin 15 D0 (marked D8)
Pin 2, 4, 6, 8, 10, 12, 14, 16 GND Pin 2, 4, 6, 8, 10, 12, 14, 16 GND
Digital inputs CPCI.208
Pin A1 Ch0 D7 Pin B1 Ch1 D7
Pin A3 Ch0 D6 Pin B3 Ch1 D6
Pin A5 Ch0 D5 Pin B5 Ch1 D5
Pin A7 Ch0 D4 Pin B7 Ch1 D4
Pin A9 Ch0 D3 Pin B9 Ch1 D3
Pin A11 Ch0 D2 Pin B11 Ch1 D2
Pin A13 Ch0 D1 Pin B13 Ch1 D1
Pin A15 Ch0 D0 Pin B15 Ch1 D0
Pin A2, A4, A6, ..., A16 GND Pin B2, B4, B6,..., B16 GND
Sync Bus
Carries the signals for synchronisation of multiple PCI.208/CPCI.208
Pin 1 Sync Clock
Pin 3 Sync Trigger
Pin 5, 7, 9 not used
Pin 2, 4, 6, 8 GND

PCI-208 / CPCI.208 manual 31.03.2004
Page 19 of 30
Software Description
Allgemeine Information
Der Spectrum Treiber besteht aus einem Satz Funktionen zur
Manipulation der Register auf der Karte und zum Daten Transfer
in beide Richtungen. Es gibt nur einen Treiber für alle Karten von
Spectrum. Abhängig von der Funktionalität der Karte und dem
benutzten Bus werden nicht alle Funktionen des Treibers von
allen Karten unterstützt. Die unterschiedliche Funktionalität der
Karten ist mit Hilfe von kartenspezifischen Registern realisiert.
Der Treiber ist für verschiedene Betriebssysteme erhältlich und
wird unter allen Betriebssystemen auf die gleiche Art und Weise
programmiert.
General Information
The SPECTRUM driver consists of a set of functions to manipulate
registers on the board and to transfer data from or to the board.
There is only one driver for all the SPECTRUM boards.
Depending on the functionality of the board and the used bus
not all functions will be implemented for all boards. The different
functionality of the boards is implemented with the help of board
specific registers. The driver is available for different operating
systems but will be programmed the same way on all operating
systems.
Header Dateien auf CD
DLLTYP.H
Enthält alle Plattform spezifischen Definitionen der Datentypen
und der Funktionsdeklarationen. Alle Datentypen basieren auf
diesen Definitionen.
SPECTRUM.H
Definiert die sechs Funktionen des Treibers. Alle Definitionen sind
aus der Datei DLLTYP.H entnommen. Die Funktionen selbst
werden weiter unten beschrieben.
REGS.H
Definiert alle Register und Kommandos, die im Spectrum Treiber
für die verschiedenen Karten benutzt werden. Die Register, die
von einer Karte benutzt werden sind weiter unten im
kartenspezifischen Teil beschrieben.
ERRORS.H
Listet alle möglichen Errorcodes der Funktionen auf.
Header files on CD
DLLTYP.H
Includes the platform specific definitions for data types and
function declarations. All data types are based on this
definitions.
SPECTRUM.H
Defines the six functions of the driver. All definitions are taken
from the file DLLTYP.H. The functions itself are described below.
REGS.H
Defines all registers and commands which are used in the
SPECTRUM driver for the different boards. The registers a board
uses are described in the board specific part of the
documentation.
ERRORS.H
Lists all possible error codes of the functions.
Funktionen des Treibers
Der Spectrum Treiber besteht aus den folgenden sechs
Funktionen. Die Funktionen sind in der Header-Datei
SPECTRUM.H definiert. Abhängig von dem Funktionsumfang der
Karte und dem verwendeten Bussystem sind nur einige der
Funktionen für die spezielle Karte notwendig. Bei einigen Karten
werden nicht alle Parameter der Funktion unterstützt.
Driver functions
The SPECTRUM driver consists of the following six functions. The
functions are declared in the header file SPECTRUM.H.
Depending on the functionality of the board and the used bus
only some of the functions are used for the specific board. Not
all board specific drivers will interpret all parameters of a
function.
PAD52
PAD82a/b
PAD242
PCI.412
PCI.212
PCI.208
CPCI.208
PCI.-248
PCI.-258
PCI.DIO32
PAD1232
PAD1616
PAD164
DAP116
PCK400
TRS582
PADCO-06
MI.30xx
MI.31xx
MI.40xx
MI.45xx
MI.60xx
MI.70xx
SpcInitPCIBoards ---+++++++-------+++++
+
SpcInitBoard +++-------+++++++------
SpcSetParam ++++++++++++++++++++++
+
SpcGetParam +++++++++++++-++++++++
+
SpcSetData ---------+---+-+-----+
+
SpcGetData +++++++++++++----++++-
+

PCI-208 / CPCI.208 manual 31.03.2004
Page 20 of 30
int16 SpcInitPCIBoards (int16* count, int16* PCIVersion)
count adr of 16 bit integer number of found PCI boards
PCIVersion adr of 16 bit integer found PCI version
return 16 bit integer error code of function like listed below
Initialises all installed PCI boards. The board numbers will start with zero. The number of PCI boards will be given back in the value
Count. All installation parameters will be read from the hardware.
Using Windows NT the boards are already installed in the registry. This function just gives back the values of the
kernel driver.
Linux initialises the boards while loading the kernel module. This function is not available under Linux.
int16 SpcInitBoard (int16 nr, int16 typ)
nr 16 bit integer number of the board to be defined in range 0-15
typ 16 bit integer type of the defined board listed in REGS.H
return 16 bit integer error code of function like listed below
Defines a board for the driver. The driver supports up to 16 boards at the same time. For all ISA boards the type of installed board
must be defined before using the driver the first time. All other functions just use the board number to access the board. After
initialising the board all parameters will be set to default values.
Using Windows NT the board is already installed in the registry. This function will then just compare the board type with the already
installed one.
Linux initialises the boards while loading the kernel module. This function is not available under Linux.
int16 SpcSetParam (int16 nr, int32 reg, int32 value)
nr 16 bit integer number of the board as defined by SpcInit...
reg 32 bit integer register to be changed
value 32 bit integer value for the register
return 16 bit integer error code of function like listed below
Sets a register to a defined value or executes a command. The board must be initialised before. When using ISA boards, all installation
parameters must be set before (address, installed memory, ...). The allowed registers for the driver are listed in the board specific part of
the documentation.
When using Windows NT the installation parameters may not be changed, they are set in the registry using the
driver configuration utility.
int16 SpcGetParam (int16 nr, int32 reg, int32* value)
nr 16 bit integer number of the board as defined by SpcInit...
reg 32 bit integer register to be read
value adr of 32 bit integer value from the register
return 16 bit integer error code of function like listed below
Reads a register or a status information of the board. The board must be initialised before. When using ISA boards, the installation
address must be set before. The allowed registers for the driver are listed in the board specific part of the documentation.
int16 SpcSetData (int16 nr, int16 ch, int32 start, int32 len, dataptr data)
nr 16 bit integer number of the board as defined by SpcInit...
ch 16 bit integer channel to be written to
start 32 bit integer startvalue to be written
len 32 bit integer number of values to be written
data huge ptr to datadata to be written
return 16 bit integer error code of function like listed below
Writes data to the board for a specific channel. The board must be initialised before. When using ISA boards, all installation parameters
must be set before (address, installed memory, ...). The Start and Len parameter are implemented on all PCI boards. On ISA boards the
whole data will be written in one turn. The data must be in twos complement format (standard integer format).
Table of contents
Other Spectrum Voice Recorder manuals