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

 
 
> Выход после Sleep в режиме Idle
dinam
сообщение Sep 28 2005, 08:10
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 415
Регистрация: 10-06-05
Из: Наукоград Кольцово(Новосибирск)
Пользователь №: 5 898



Изучаю ATMEGA 128. И возник вопрос. Можно ли сделать чтобы переход был не по вектору прерывания, а на следующую команду после SLEEP?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
BVU
сообщение Sep 28 2005, 08:22
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 301
Регистрация: 30-11-04
Из: Россия, Н.Новгород
Пользователь №: 1 264



Цитата(dinam @ Sep 28 2005, 12:10)
Изучаю ATMEGA 128. И возник вопрос. Можно ли сделать чтобы переход был не по вектору прерывания, а на следующую команду после SLEEP?
*

А как Вы себе это представляете без прерывания? Выход из режима SLEEP может осуществляться либо по прерыванию, либо по WD, либо по внешнему RESET. Вот и выбирайте... Но в Вашем случае необходимо организовать какое нибудь внутреннее прерывание от таймера или внешнее по событию, а в теле прерырания - только возврат от туда. Вот Вам и будет старт со следующей команды.


--------------------
Не корысти ради, не в целях наживы, а во исполнение велений души!
Go to the top of the page
 
+Quote Post
dinam
сообщение Sep 28 2005, 08:33
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 415
Регистрация: 10-06-05
Из: Наукоград Кольцово(Новосибирск)
Пользователь №: 5 898



Почему без прерывания? Я имел ввиду, как сделать прерывания, реализованные например как в PICах. Хочу минимальное время реакции на прерывание -> задаю чтобы перехода на вектор прервания не было, а программа продолжала выполняться дальше, начиная со следующей команы после Sleep. А с переходом по вектору прерывания у меня сейчас нормально работает. Но так теряется куча тактов драгоценного времени.
Go to the top of the page
 
+Quote Post
Karl
сообщение Sep 28 2005, 09:02
Сообщение #4


Частый гость
**

Группа: Свой
Сообщений: 179
Регистрация: 4-02-05
Пользователь №: 2 429



Цитата(dinam @ Sep 28 2005, 13:33)
Почему без прерывания? Я имел ввиду, как сделать прерывания,  реализованные например как в PICах. Хочу минимальное время реакции на прерывание -> задаю чтобы перехода на вектор прервания не было, а программа продолжала выполняться дальше, начиная со следующей команы после Sleep. А с переходом по вектору прерывания у меня сейчас нормально работает. Но так теряется куча тактов драгоценного времени.
*


Можешь вместо перехода на подпограмму обработки прерывания сразу написать reti. Быстрее никак.
Go to the top of the page
 
+Quote Post



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

 


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


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