На ум приходит такая вещь:
1. Необходим генератор импульсов (на таймере МК с выходом наружу или внешний)
2. Логическая единица замеряемого сигнала через вентиль пропускается на счетный вход таймера (счетчика) импульсы генератора из п.1.
3. Сам сигнал заведен также на ногу внешнего прерывания, которое (прерывание) настроено на срабатывание по перепаду из 1 в 0.
4. При возникновении внешнего прерывания считываем значение счетного регистра счетчика из п.2, число в нем - пророрционально длительности замеряемого сигнала. После считывания (и вначале программы) - не забыть бы обнулить счетчик.
Цитата(MrYuran @ Jun 26 2008, 19:27)

Разница значений в защёлках и будет равна длительности импульса (в тактах таймера)
При таком подходе возникает задача синхронизации значений счетных регистров двух таймеров. Правда, большая точность автору вопроса не нужна, поэтому, наверное, это - тоже решение.