Цитата(IgorMarx @ Aug 7 2009, 21:03)

А теперь вопрос - чем ещё заниматься в прерывании кроме как ждать битов статуса, если вот так вот задача поставлена, а?
Вы вобще в курсе что I2C полностью статическая шина ? Если что будем сидеть в прерывании до конца ?
Поллинг в прерывании это вобще новое слово в программировании... то есть конечно допустим для некоторых интерфейсов(например
SPI в режиме мастера), но для I2C это просто бред...
И не удивительно что при таком подходе "вдруг" становятся нужными вложенные прерывания...
Цитата
Повторяю - для остальной периферии возможно потребуются вложенные прерывания.

Цитата(Dog Pawlowa @ Aug 7 2009, 23:19)

Вы выбрали ..хм... не тот род занятий.
Спасибо конечно за помощь в выборе рода занятий,
но вот согласитесь ли Вы со мной поспорить на конкретном примере(то есть поспорить на конкретной реализации) ?
Цитата
I2C это самый типичный пример для включения в основной цикл.
Задачки разные бывают...
Сможете гарантировать передачу 6-8 байт за 1мс при скорости i2c ~100кбит
и обслуживании обмена в основном цикле ?(обмен между 2 процами)
При том что основной цикл считает плавучку с неадекватными временами реакции...
Цитата(IgorMarx @ Aug 8 2009, 00:22)

А кто против прерываний? Да ради бога. Всё от задачи зависит. Просто приведу вам пример из свой практики, когда это не нужно. И процу действительно нечем заняться. Flashloader. Надеюсь, там знакомая. Я написал flashloader. В RAM загружается код, который шьёт flash и плюс EEPROM по шине 2IC. Попробуйте теперь меня убедить, зачем мне это делать не в цикле и что я не тот камень выбрал.
Я это не придумал, это реальный код, и вы бы поступили так же (почитали доку framework, где прерывания, мягко говоря, не предусмотрены) - сделали цикл. Если у кого-то не встречалась ситуация, когда этого делать не нужно, - может, просто опыта недостаточно?
Это все очень "своевременные" замечания, но топик таки называется "Вложенные прерывания" ....