-
- Идея получить диспетчер программных прерываний, т.е. вызвал пускатель с указателем на обработчик, чтобы обработчики дергали друг друга за хвост типа: данные_готовы - нормализация - расчёт - реакция_на_изменение, и чтоб приоритеты соблюдались. В rual(113 знак., 01.02.2016 08:37)
- А просто вызвать из одного прерывания другое не получается? Обычно есть дофига свободных прерываний. Опять же можно VTOR на ОЗУ установить и менять вектора на ходу (это если свободных не хватает). Или я чего-то не понял в задаче? - Lightelf(01.02.2016 22:56)
- Непосредственно из прерывания получится (сейчас оно так и есть), но только там вычисления местами тяжелые, надолго аппаратуру держит. Вызывать другое прерывание можно, но сложно контролировать необработанные вызовы, да и для добавления нужно rual(85 знак., 02.02.2016 21:01 - 21:27)
- Совсем универсально - это RTOS с поддержкой deferred procedure calls, вроде в FreeRTOS такое появилось не так давно. - Lightelf(02.02.2016 22:11)
- Непосредственно из прерывания получится (сейчас оно так и есть), но только там вычисления местами тяжелые, надолго аппаратуру держит. Вызывать другое прерывание можно, но сложно контролировать необработанные вызовы, да и для добавления нужно rual(85 знак., 02.02.2016 21:01 - 21:27)
- А просто вызвать из одного прерывания другое не получается? Обычно есть дофига свободных прерываний. Опять же можно VTOR на ОЗУ установить и менять вектора на ходу (это если свободных не хватает). Или я чего-то не понял в задаче? - Lightelf(01.02.2016 22:56)
- Идея получить диспетчер программных прерываний, т.е. вызвал пускатель с указателем на обработчик, чтобы обработчики дергали друг друга за хвост типа: данные_готовы - нормализация - расчёт - реакция_на_изменение, и чтоб приоритеты соблюдались. В rual(113 знак., 01.02.2016 08:37)