Счетчик импульсов

areex
Offline
Зарегистрирован: 14.12.2013

Всем привет. Задача простая: есть небольшой блок, который формирует импульсы (типа как в мышке) и мне нужно посчитать их количество. Я думал повесить все это дело на прерывание и считать программно. Проблема в том, что таких счетчиков мне нужно 3 штуки, а на моем Uno 2 выхода для прерываний. Кроме того, если два блока работают одновременно, и частота достаточно большая, я так подозреваю, что возможны потери(пропуски) импульсов, хотя тут не уверен...

Возникла идея сделать аппаратный счетчик на каждый блок и генерировать одно прерывание, по которому просто считывать данные со всех счетчиков.

Я новичок в Arduino и электронике, поэтом возможно, что пишу ересь. В правильную ли сторону я думаю или есть какие-то более простые/элегантные решения?

vdk
Offline
Зарегистрирован: 14.04.2013

areex пишет:

Возникла идея сделать аппаратный счетчик на каждый блок и генерировать одно прерывание, по которому просто считывать данные со всех счетчиков.

Можно и аппаратный.

Материал для изучения: один, два

 

areex
Offline
Зарегистрирован: 14.12.2013

Да, спасибо. Два я уже читал. Может целесообразнее мегу использовать? Там вроде 6 прерываний.

vdk
Offline
Зарегистрирован: 14.04.2013

areex пишет:

 Может целесообразнее мегу использовать? Там вроде 6 прерываний.

Ну дык! Естественно, целесообразнее

maksim
Offline
Зарегистрирован: 12.02.2012

vdk пишет:

areex пишет:

 Может целесообразнее мегу использовать? Там вроде 6 прерываний.

Ну дык! Естественно, целесообразнее

Ничего естественного, уны будет более чем предостаточно. Погуглите PCINT.