Сообщение от maxNTF
|
Не получается вызвать не одной функции из функции обработки прерываний. Пишет вот это:
Цитата:
|
Error[472] : non-reentrant function "_имя вызываемой ф-ции" appears in multiple call graphs: rooted at "_имя ф-ции прерываний" and "_main"
|
В чем тут дело. У меня HI-TECH PICC 9.50
|
Ну, судя по сообщению, функция не реентерабельная. То есть - одновременно может выполняться только одна "копия" ну или как тут можно назвать... Прерывание же может возникнуть когда угодно. В том числе и во время выполнения этой функции в main модуле.
Вообще - imho - вызов каких-либо подпрограмм из прерывания очень нехорошо. Сильно раздувает код из-за сохранения кучи регистров (во всяком случае, в IAR AVR это так). Да и вообще обработчик должен быть прост и короток - как тост