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

миниатюрный аудио-видеорекордер mAVR

Отправлено smav 25 апреля 2005 г. 18:04
В ответ на: если это предсмертный прыжок, то просто goto отправлено DSN 25 апреля 2005 г. 17:01

В 51 есть 2 скрытых флага прерывания, которые устанавливаются при входе в обработчик, а сбрасываются только по RETI и RESET.
Причем пока флаг не сброшен, прерывание не работает.
Я обходил это, когда делал рестарт по ошибке из прерывания, следующим образом: 2 раза подряд запихивал в стек адрес следующей команды и выполнял RETI, после этого можно GOTO куда надо (если не начало, то незабудьте переинициализировать стек)

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

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


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

E-mail: info@telesys.ru