Не работает Input Capture на Atmega8
Добрый всем день!
Сделал цифровой термостат для инкубатора на Atmega8. Ко входу ICP1 подключил цифровой датчик Холла. При протекании тока через нагрузку датчик срабатывает как надо, т.к. коммутируемое напряжение 220 В/50 Гц, то от датчика идут импульсы с частотой 50Гц. Обработку сигнала от датчика хотел сделать аппаратной по прерыванию (задний фронт), с помощью входного захвата. Atmega8 позволяет такие сигналы обрабатывать аппаратно, измерять характеристики захваченного сигнала, но это в теории :) На практике получается, что все время висит флаг прерывания от ICP1, независимо от того сработал датчик или нет и микроконтроллер все время висит в процедуре ISR от ICP1.
Если у кого есть поделитесь пожалуйста примерами программ на Си по работе с Input Capture.
Читал пдфку, вроде все регистры сконфигурировал правильно, но по фронту прерывание не срабатывает. В пдф написано, что для обработки этого прерывания достаточно его просто разрешить :) Проще конечно было подключить этот датчик к INT0 или INT1, но эти входы уже заняты. Параметры этого сигнала мне измерять не нужно, просто наличие его или отстутствие. На данный момент сигнал от датчика опрашивается программно и это работает.
Уровень сигнала
Уровень сигнала достаточный?
Пробовал замерять?