PCITTL32IO / PCITTL64IO / PCI-EXP-TTL128
5.4.1
Ansteuerung der PCITTL62IO – PCITTL32IO unter C/C++
Beispiel zur Programmierung der PCITTL64/32 IO mit der QLIB.
/*
+--------------------------------------------------------------+
| (C) QUANCOM Informationssyteme
+--------------------------------------------------------------+
| Tel : +49 2236 8992-12
| Fax : +49 2236 8992-49
| mail: support@quancom.de
+--------------------------------------------------------------+
| Project
: -
| Compiler
: MICROSOFT Visual C++
| Modulname : PCITTL32IO
+--------------------------------------------------------------+
| Author : Siebert, Jürgen
+------------------------------------+-------------------------+
Bezeichnung:
Qlibtestprogramm für das PCITTL32IO Modul
Beschreibung:
Die Kanäle 0-23 werden auf Eingang gesetzt
+--------------------------------------------------------------+
|
+--------------------------------------------------------------+
|
Date
|
Author
|
+----------+-----------+---------------------------------------+
*/
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
#include<windows.h>
//
Einbinden der QLIB Bibliothek
#include "qlib.h"
void main()
{
int i;
ULONG nHandle;
ULONG nResult;
//
Öffnen der Karte und gleichzeitig überprüfung ob Karte vorhanden
if((nHandle = QAPIExtOpenCard(PCITTL32IO,0L)) == 0L)
{
cout<<"\nKarte konnte nicht geoeffnet werden\n";
return;
}
//
Endlosschleife
do {
//Ein- und Ausgang definieren, hier Kanal 0-23 Eingang und Kanal 24-47 Ausgang
//nResult=QUAPIExtSpecial(handle, JOB_PCITTL32IO_IOMODE"kanal"0-7 ,EIN=0 AUS=1,0
nResult=QAPIExtSpecial(nHandle, JOB_PCITTL32IO_IOMODE0_7 ,0,0);
nResult=QAPIExtSpecial(nHandle, JOB_PCITTL32IO_IOMODE8_15 ,0,0);
nResult=QAPIExtSpecial(nHandle, JOB_PCITTL32IO_IOMODE16_23 ,0,0);
nResult=QAPIExtSpecial(nHandle, JOB_PCITTL32IO_IOMODE24_31 ,1,0);
//Eingänge 0-23 Lesen und auf Bildschirm ausgeben
for(i=0;i<=23;i++) {
nResult=QAPIExtReadDI1(nHandle,i,0);
printf("Eingang %i = %i\n", i, nResult );
}
//Ausgänge 24-31 mit 0 Beschreiben
for(i=24;i<=31;i++) {
QAPIExtWriteDO1(nHandle,i,0,0);
}
//Eine Sekunde warten
Sleep(1000);
//Ausgänge 24-31 mit 1 Beschreiben
for(i=24;i<=31;i++) {
QAPIExtWriteDO1(nHandle,i,1,0);
}
//Abbruchbedingung der Endlosschleife = Tastendruck
} while(!kbhit());
//Schliessen der Karte
QAPIExtCloseCard(nHandle);
}
}
© QUANCOM Informationssysteme GmbH
In Der Flecht 14
|
Version
: 6.
|
Date :25/11/2002
und auf dem Bildschirm ausgegeben.
Die Kanäle
24-31 auf werden auf Ausgang gesetzt und dann
erst mit 0 und dann mit 1 Beschrieben.
UPDATE'S
Description of updates
D-50389 Wesseling
|
|
|
|
|
|
|
|
|
59