Si tienes un detector de fotodiodos que puede emitir un 1 o 0 digital en cada pulso, crear un disparador que salga en cada tercer pulso no es tan difícil.
Haz una máquina de estados que cuente esencialmente con 3 y luego se reinicie.
Deje que haya una señal de reloj que sea la salida de su detector de fotodiodo.
Sea una variable de estado de 2 bits que cuenta los pulsos (llamémosla C).
Que haya una salida de disparo. Llamémoslo T.
Una descripción de HDL para la máquina de estado se vería como ...
if rising_edge(clock) then
if C = "00" then C <= "01";
elsif C = "01" then C <= "10";
else C <= "00";
end if;
T <= C = 00;
Por supuesto, podría sintetizar ese código HDL directamente en un CPLD. Alternativamente, podría usar algunos chips lógicos de la serie 74 para implementar la lógica.
C (0) < = C (0) NOR C (1)
C (1) < = (C (0) NOR C (0)) NOR C (1)
T = C (0) NOR C (1)
Así que necesitarías una puerta NOR cuádruple y dos D-Flip-Flops.
Además, como algunos han sugerido, puede utilizar el detector de impulsos para sincronizar un registro de desplazamiento de 3 etapas dispuesto en un círculo. Su activador sería la salida de una de las tres etapas de registro.
El registro de desplazamiento deberá precargarse con el valor "100". Después del primer impulso, el valor cambiaría a "010", después del segundo "001", y luego, después del tercero, volvería a "100". Por lo tanto, tendría un 1 en su disparo cada tercer pulso.