реклама на сайте
подробности

 
 
> рекурсивное прерывание, Как оно из себя выглядит?
ytkopobot
сообщение Feb 19 2009, 11:16
Сообщение #1





Группа: Новичок
Сообщений: 11
Регистрация: 2-06-08
Пользователь №: 38 002



Надо реализовать по нажатию на кнопочку рекурсивное прерывание.
Не совсем представляю как из обычного сделать рекурсивное? То есть чтоб могло само себя прерывать..
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
тау
сообщение Feb 19 2009, 12:59
Сообщение #2


.
******

Группа: Участник
Сообщений: 2 424
Регистрация: 25-12-08
Пользователь №: 42 757



ytkopobot, не забудьте про команду
reti
без её исполнения повторно войти в прерывание такого же или низшего приоритета невозможно.
То есть, внутри процедуры обработки прерывания нужно исполнить команду "reti" с заранее подготовленным стеком, чтобы не вернуться случайно в исходную программу а остаться в обработчике прерывания , дабы обеспечить рекурсию.
Go to the top of the page
 
+Quote Post
_Pasha
сообщение Feb 19 2009, 13:09
Сообщение #3


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Цитата(тау @ Feb 19 2009, 16:59) *
ytkopobot, не забудьте про команду
reti

Это делается так

Код
intr:
     mov r0,#0
     dbnc: djnz r0,dbnc; антидребезг
     acall dummy_proc


forever_intr: rjmp forever_intr; здесь остались в прерывании

dummy_proc: reti
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 28th July 2025 - 08:31
Рейтинг@Mail.ru


Страница сгенерированна за 0.0138 секунд с 7
ELECTRONIX ©2004-2016