В процедуре прерывания с периодом T мастерим реверсивный двоичный счётчик без переполнения. Досчитали до максимума - это ВКЛ. , до минимума (0) это ВЫКЛ. Фактически получим цифровой интегратор. В зависимости от характеристик конкретного дивайса и скорости CPU надо правильно выбрать T и число состояний счётчика.