Meinframe » 10 июл 2014, 14:08
День добрый форумчане! Хотел спросить, знает ли кто, как посчитать длительность импульсов с оптопары? Если сигнал подсоединён к ногам PB3, PB4. Т.е. вариант с ICP сразу отпадает, остаётся вариант с таймером или PCINT, но тут проблемка, частота проца 3.6864 МГц, частота прерывания таймера 1000,1 ГЦ в лучшем случае с предделителем 1. Просто время отсчёта нужно в секундах. А проблемка в том что я пробовал считать по PCINT и таймеру одновременно, но время получалосьь всегда в реале меньше чем секунда ...
RootAdmin » 10 июл 2014, 17:23
А кто мешает в обработчике переполнения таймера инкрементировать счетчик переполнений? Отдельную переменную.
А когда нужен результат - плюсуем произведения счетчика переполнений на время таймера и значение таймера по прерыванию.
Meinframe » 10 июл 2014, 20:45
А когда нужен результат - плюсуем произведения счетчика переполнений на время таймера и значение таймера по прерыванию.
Time = OverFlowCounter * 0.001(для тысячи прерываний в секунду)*61849(для тысячи прерываний в секунду, предделителя 1, и проца 3.6864МГц)
Хорошо, а как узнать время окончания сигнала? с началом более менее понятно, но вот с окончанием беда.
dccharacter » 18 июл 2014, 04:09
Не так: OverFlowCounter * 0.001(для тысячи прерываний в секунду)*61849
А вот так: OverFlowCounter * 61849 / 1000 (для тысячи прерываний в секунду)