Команда триггер (Trigger) используется, когда необходимо синхронизировать время начала HT с HT 0 в режимах вывода. Пример ниже показывает, как синхронизировать HT 1 с HT 0 при помощи триггера.
$pid0 = pid_open("/mmap/ht0"); // open HT 0
pid_ioctl($pid0, "set div us"); // set unit: microsecond
pid_ioctl($pid0, "set mode output pulse"); // set mode: pulse
pid_ioctl($pid0, "set count 10 10"); // set count values: 10 and 10
pid_ioctl($pid0, "set repc 2"); // set repeat count: 2
$pid1 = pid_open("/mmap/ht1"); // open HT 1
pid_ioctl($pid1, "set div us"); // set unit: microsecond
pid_ioctl($pid1, "set mode output pulse"); // set mode: pulse
pid_ioctl($pid1, "set trigger from ht0"); // set a target of trigger: ht0
pid_ioctl($pid1, "set count 10 10"); // set count values: 10 and 10
pid_ioctl($pid1, "set repc 1"); // set repeat count: 1
pid_ioctl($pid1, "start"); // start HT 1
pid_ioctl($pid0, "start"); // start HT 0
while(pid_ioctl($pid1, "get state"));
pid_close($pid0);
pid_close($pid1);
Как показано в вышеприведенном примере, HT, который вы хотите синхронизировать с выходным временем, должен стартовать до запуска цели триггера (HT 0).
Выходной сигнал выглядит следующим образом: