Прерывания.

Добавление пинов с прерыванием.

На этом форуме Вы можете задать вопросы знатокам программы и автору.
Ответить
f18
Рядовой
Сообщения: 4
Зарегистрирован: 21.12.2016{, 22:06}
Репутация: 0

Прерывания.

#1

Сообщение f18 » 23.07.2018{, 12:32}

Приветствую сторожил и гостей форума. На Uno и Nano контроллерах всего два пина с функцией прерывания. Для некоторых проектов этого бывает недостаточно. Возможно ли, и целесообразно, создание блока для увеличения количества таких пинов ? Например, когда нужно использовать два энкодера. Один, для управления меню, а другой например оптический, для отслеживания вращения вала электродвигателя. Вот, что нарыл в сети: https://arduinonsk.ru/blog/87-all-pins-interrupts . Вот видео: .Пробовал создать блок, но на Си знаний маловато. С большим уважением. Спасибо за возможный ответ.

Аватара пользователя
Kotafey
Лейтенант
Сообщения: 311
Зарегистрирован: 18.07.2018{, 15:03}
Репутация: 21
Откуда: Геленджик
Имя: Константин

Прерывания.

#2

Сообщение Kotafey » 23.07.2018{, 19:10}

f18 писал(а):
23.07.2018{, 12:32}
Приветствую сторожил и гостей форума. На Uno и Nano контроллерах всего два пина с функцией прерывания. Для некоторых проектов этого бывает недостаточно. Возможно ли, и целесообразно, создание блока для увеличения количества таких пинов ? Например, когда нужно использовать два энкодера. Один, для управления меню, а другой например оптический, для отслеживания вращения вала электродвигателя. Вот, что нарыл в сети: https://arduinonsk.ru/blog/87-all-pins-interrupts . Вот видео: .Пробовал создать блок, но на Си знаний маловато. С большим уважением. Спасибо за возможный ответ.
Очень интересно.

leaner
Сержант
Сообщения: 104
Зарегистрирован: 08.11.2017{, 13:13}
Репутация: 4

Прерывания.

#3

Сообщение leaner » 23.07.2018{, 20:46}

Я тоже интересовался этим моментом, даже делал расширитель из диодов и сопротивлений по принципу "или" оставалось запрограммировать. Суть расширителя в том что все свободные цифровые пины которые надо контролировать через диоды соединяются с ножкой прерывания ардуино видит что есть сигнал на ножке аппаратного прерывания и читает состояние пинов и определяет на какой ноге возникло прерывание ну и реагирует соответственно на него.

golowa70
Сержант
Сообщения: 195
Зарегистрирован: 20.02.2016{, 00:05}
Репутация: 6

Прерывания.

#4

Сообщение golowa70 » 23.07.2018{, 21:30}

leaner писал(а):
23.07.2018{, 20:46}
Я тоже интересовался этим моментом, даже делал расширитель из диодов и сопротивлений по принципу "или" оставалось запрограммировать. Суть расширителя в том что все свободные цифровые пины которые надо контролировать через диоды соединяются с ножкой прерывания ардуино видит что есть сигнал на ножке аппаратного прерывания и читает состояние пинов и определяет на какой ноге возникло прерывание ну и реагирует соответственно на него.
А если сигнал прерывания появится одновременно на нескольких пинах?

leaner
Сержант
Сообщения: 104
Зарегистрирован: 08.11.2017{, 13:13}
Репутация: 4

Прерывания.

#5

Сообщение leaner » 24.07.2018{, 05:43}

Появится сигнал, ардуина считает на каких пинах есть прерывания. Если сигнал от нескольких пинов пришел одновременно то в зависимости от приоритета отработает эти прерывания. Для 3-4 доп пинов прерываний должно работать.

Ответить

Вернуться в «Спросить у знатоков»