Можно ли настроить прерывания на каждом выводе Arduino Mega? - PullRequest
0 голосов
/ 28 марта 2011

Мы хотели бы контролировать 35 входов.20 в направлении х и 15 в направлении у.Мы думаем о наличии прерывания для каждого входа, чтобы при каждом изменении мы могли предпринять какое-либо действие, но как нам настроить прерывание на каждом выводе?

Или есть другой способ сделать это без прерываний?

1 Ответ

1 голос
/ 28 марта 2011

Как я знаю, Ардуино не может этого сделать. Но вы можете использовать бесконечный цикл и опрашивать каждую строку. Вы можете сохранить старое значение для каждого входа и сравнить его с текущим значением. Кажется, что бесконечный цикл в Arduino довольно дешев. Этот метод несколько сложнее, если вы выполняете вычисления между изменениями сигнала.

Другой способ - использовать только одну линию прерывания, которая запускает ту же процедуру опроса, которая будет сравнивать старые и текущие значения на входах.

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

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

...