Показать сообщение отдельно
Старый 12.01.2018, 23:04   #73
O.L.D.
Member
Новый Уазовод
 
Аватар для O.L.D.
 
Регистрация: 16.08.2005
Адрес: Мещовск
Сообщений: 67
По умолчанию

Цитата:
Сообщение от Capitan Посмотреть сообщение
Кроме аппаратных, в МК семейства AVR можно реализовать и программные прерывания, получив в результате их десяток не менее в младших МК.
Применительно к ATMega2560, на котором базируется ваша Ардуина, в вашем распоряжении восемь INT и двадцать четыре PCINT (читаем даташит)...
Тридцать два прерывания ! Мало ?
Шесть INT. 0, 1, 5, 4, 3 ,2. Пока хватает.

Цитата:
Да и что такого можно всего навешать на прерывания ?
ИМХО, ряд событий вполне можно "обслужить" в реальном времени путем опроса, а то программа так и будет из прерывания в прерывание скакать, все делая по чуть-чуть...
Датчик для тахометра, тумблер переключения режимов, кнопка обогащения смеси, еще экран занимает два пина (его переназначу). Я не хочу 16 миллионов раз в секунду опрашивать состояние кнопки или тумблера. У меня программа не только регулирует обороты, но и выполняет несколько подпрограмм которые никак не связаны между собой. И они должны работать одновременно, не мешая и не блокируя друг друга. Про "скакать и делать по чуть-чуть" даже не знаю что сказать. Полагаюсь на https://www.arduino.cc/reference/en/...tachinterrupt/
O.L.D. вне форума   Ответить с цитированием