Syntax
INT is_SetExternalTrigger (HIDS hf, INT nTriggerMode)
Beschreibung für EAGLE
is_SetExternalTrigger() aktiviert den Trigger-Eingang. Mit dem Funktionsaufruf wird die Flanke, auf die ein "Vorgang" (TTL-Signal) ausgelöst werden soll, angegeben:
•Aktivität auf Flanke High-Low (TTL): IS_SET_TRIG_HI_LO
•Aktivität auf Flanke Low-High (TTL): IS_SET_TRIG_LO_HI
Die Trigger-Pulsbreite muss größer als 20 ms sein, da diese sonst nicht sicher detektiert werden kann.
Es werden zwei Trigger-Modis unterschieden:
1.Ist der Trigger-Eingang aktiv geschaltet, wird nach Aufruf der Funktion is_FreezeVideo() bei Eintreffen eines Trigger-Signales das darauf folgende (Halb-) Bild aufgenommen (nächster folgender VSYNC). Ob ein Bild oder Halbbild aufgenommen wird, ist von den Einstellungen mit is_SetCaptureMode() abhängig.
2.Ist der Trigger-Eingang aktiv geschaltet, wird nach Aufruf der Funktion is_StopLiveVideo() bei Eintreffen eines Trigger-Signales die aktuelle Digitalisierung gestoppt. Es wird das (Halb-)Bild aufgenommen, welches soeben digitalisiert wird/wurde. Ob Halbbildverarbeitung erfolgen soll, ist auch hier abhängig von den Einstellungen der Funktion is_SetCaptureMode(). Voraussetzung für diesen Vorgang ist eine vorige Live-Bilderfassung (is_CaptureVideo()).
3.Ist der Trigger-Eingang aktiv geschaltet, wird nach Aufruf der Funktion is_CaptureVideo() bei Eintreffen eines Trigger-Signals die Digitalisierung gestartet.
Eine Unterscheidung der Modis findet durch Aufruf der entsprechenden Funktionen statt (is_FreezeVideo(), is_StopLiveVideo(), is_CaptureVideo()). Hierzu ist in diesen Funktionen der Parameter WAIT eingeführt (Timeout-Kriterium).
Beschreibung für FALCONquattro/FALCONquattro Express
is_SetExternalTrigger() aktiviert den Trigger-Port und die Interruptverarbeitung beim Erkennen eines Trigger-Ereignisses (Event-Verarbeitung). Wird ein Trigger-Ereignis erkannt, so wird ein anwenderdefiniertes Event signalisiert. Das Event muss mit is_InitEvent() und is_EnableEvent() (Parameter IS_SET_EVENT_EXTTRIG) initialisiert werden. Mit is_SetExternalTrigger() können folgende Funktionsarten eingestellt werden:
•Event-Signalisierung bei positiver Trigger-Flanke. Nur die Trigger-Eingänge, bei denen eine positive Flanke erkannt wurde, werden gemeldet.
•Event-Signalisierung bei negativer Trigger-Flanke. Nur die Trigger-Eingänge, bei denen eine negative Flanke erkannt wurde, werden gemeldet.
•Event-Signalisierung bei positiver und negativer Trigger-Flanke. Nur die Trigger-Eingänge, bei denen eine positive oder negative Flanke erkannt wurde, werden gemeldet.
•Event-Signalisierung bei Zustandsänderung der Trigger-Eingänge. Der aktuelle Zustand aller Trigger-Eingänge wird gemeldet.
•Pollingbetrieb. Die aktuellen Zustände aller Trigger-Eingänge können manuell ausgelesen werden.
|
Bei der FALCONquattro/FALCONquattro Express-Karte kann nur das Device 2 die Trigger-Eingänge und die digitalen I/Os ansteuern. Das Device 2 muss daher mit is_InitBoard() geöffnet sein und bei is_SetExternalTrigger() muss dessen Board-Handle verwendet werden. |
Beispiel FALCONquattro/FALCONquattro Express
Event-Signalisierung für die Trigger-Eingänge 1 bis 4 bei positiver Flanke aktivieren (siehe auch Beispielprogramm TriggerIO):
// Initialisierung des 2. Device (nur dieses Kontrolliert die I/O)
hi = (HIDS)2;
is_InitBoard(&hi, hwnd);
…
is_InitEvent(hi, hEv, IS_SET_EVENT_EXTTRIG);
is_EnableEvent(hi, IS_SET_EVENT_EXTTRIG);
is_SetExternalTrigger(hi, IS_SET_TRIG_MASK | 0x0F);
is_SetExternalTrigger(hi, IS_SET_TRIG_EVENT_ONLY | IS_SET_TRIG_LO_HI);
//Nach Event-Signalisierung
Status = is_SetExternalTrigger(hi, IS_GET_TRIGGER_STATUS);
Übergabeparameter
hf |
Handle auf Frame Grabber |
nTriggerMode |
|
IS_SET_TRIG_OFF |
Ausschalten der Trigger-Verarbeitung |
IS_SET_TRIG_HI_LO |
Aktive Trigger-Flanke auf negative Signalflanke setzen |
IS_SET_TRIG_LO_HI |
Aktive Trigger-Flanke auf positive Signalflanke setzen |
IS_SET_TRIG_EVENT_ONLY |
Beim Erkennen einer Trigger-Flanke ein Event signalisieren. Ohne Event-Verarbeitung kann beim FALCONquattro keine aktive Flanke angegeben werden. |
IS_GET_EXTERNALTRIGGER |
Trigger-Modus-Einstellung zurücklesen |
IS_SET_TRIG_MASK (nur FALCONquattro/FALCONquattro Express) |
Freigabemaske für die einzelnen Trigger-Eingänge setzen. Die Maske muss mit dem Parameter logisch ODER Verknüpft werden. Bit 0: Trigger-Eingang 1 … Bit 7: Trigger-Eingang 8 |
IS_GET_TRIGGER_MASK (nur FALCONquattro Express) |
Freigabemaske auslesen. |
IS_GET_TRIGGER_STATUS (nur FALCONquattro/FALCONquattro Express) |
Trigger-Status lesen. Dies muss nach Signalisierung eines Events durchgeführt werden. Ohne Event-Verarbeitung wird hiermit der aktuelle Zustand aller Trigger-Eingänge ausgelesen (Polling-Betrieb) |
Rückgabewert
IS_SUCCESS, IS_NO_SUCCESS oder aktuelle Einstellung in Verbindung mit IS_GET_EXTERNALTRIGGER