[an error occurred while processing this directive] [an error occurred while processing this directive]
Едем дальше
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)
[an error occurred while processing this directive] [an error occurred while processing this directive]

Отправлено BLACKEAGLE 07 мая 2002 г. 15:42
В ответ на: Ответ: отправлено SashaErem 07 мая 2002 г. 15:22

1. ADIF сбрасывается, разумеется, в сАмом начале. Но сбросить его (единицей!) принудительно попробуйте в конце ADC ISR - а вдруг Ваша ISR длится дольше, чем одно преобразование ADC? Проверьте это тщательно.

2. SEI в начале ISR приемлемо, но требует тщательного продумывания. Дело в том, что и без этого прерывание от таймера не пропадет, а только отложится на время, равное времени обработки ADC ISR, а если ставить SEI, то вероятна ситуация с перезапуском АЦП во время обработки результата, что не очень корректно.

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru