El problema es que el código del programa está mezclado, puesto que la misma interrupción se usa para leer los pulsos infrarrojos y para evaluar el momento del encendido de la bombilla.
De todas formas, si lo que necesitas es determinar el periodo adecuado para interpretar la información de cualquier mando, te cuento que la mayoría de mandos están agrupados en dos tipos:
- mandos RC5 con un periodo de señal de 1778 us

- mandos con protocolo Sony, con una unidad de tiempos de 600us. No es periodo porque la señal no tiene un periodo fijo, sino que cambia para los "0" y para los "1"

Te recomiendo que mires esta página, que me sirvió de gran ayuda cuando hice el dimmer:
http://users.pandora.be/davshomepage/Como ves, hay más protocolos, pero esos dos que te digo arriba son los más frecuentes.