EBRU
Die zweite Möglichkeit die Ausgänge zu bedienen ist das Setzen aller Ausgangskanäle mit
einem bestimmten Muster.
Beginn
Ausgangsmuster
setzen
Ist ein Fehler aufgetreten ?
Ausgänge
zurücklesen
Ist ein Fehler aufgetreten ?
Fehlerbehandlung
Ende
G Hinweis
Die Funktion Sleep() kann durch eine Delay-Funktion ersetzt werden
die im Minimum 250µs nebst ggf. lastabhängiger Verzögerung wartet.
®
PCIDIO – PCI Karte mit 32/64 optoisolierten digitalen I/Os
pcidio-de-um-3v5b.doc
...
PCIDIOALLCHANNELS l_OutputStates;
PCIDIOALLCHANNELS l_NewOutputState; /* Status der gesetzten Ausgangs */
...
/* Übernehmen der Adresse der zu bedienenden Karte aus den Kartendaten */
l_ucActIndex = l_SummeryBuffer[0].BoardNumber;
/* Setzen des Musters */
l_OutputState.Basis = 0xAAAAAAAA;
l_OutputState.Extension = 0x55555555;
/* Setzen der Ausgänge */
l_bReturnValue = pcidioDOSetState(l_ucActIndex, /* Kartenadresse */
/* Funktion erfolgreich abgeschlossen ? */
if(l_bReturnValue == TRUE)
{
/* Warte min 250µs Schaltdelay nebst ggf. lastabhängiger Verzögerung (hier 1ms)*/
Sleep(1);
/* Lese Zustand zurück */
l_bReturnValue = pcidioDIGetState(l_ucActIndex, /* Kartenadresse */
}
/* Sind Fehler aufgetreten */
if(l_bReturn == FALSE)
{
/* Fehlertext auslesen */
pcidioGetErrorMsg(l_strErrorTxt);
}
...
®
EBRU
GmbH • Am Lämpertsbach 23 • D-99826 Nazza
Tel:+49 36924 30 800 • Fax:+49 36924 42 204
www.ebru.de • info@ebru.de
Benutzerhandbuch
01.12.2014
Rev. 3.5b
/* Zusetzende Ausgänge */
l_OutputState);/*Sollzustand */
&l_NewOutputState);/* akt. Zustand */
Seite 16