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

 
 
> Прерывания в AVR
archi2000
сообщение Nov 12 2006, 17:09
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 38
Регистрация: 30-09-05
Пользователь №: 9 098



Хочу уточнить правильно ли я понял.
Если запрещены внешние прерывания, но случается несколько событий, то флаг прерывания устанавливается только один раз. Разрешаем прерывания и этот флаг сбрасывается и выполняется код прерывания по соответствующему вектору?
Теперь еще хочу такое запрограммировать - в соответсвующих регистрах ядра тоже запретить внешние прерывания, а не только коммандой CLI - флаг внешнего прерывания выставляется? Как долго этот флаг существует? Пока я его сам не сброшу или не выполнится вектор прерывания?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
bodja74
сообщение Nov 12 2006, 18:44
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 543
Регистрация: 22-10-05
Пользователь №: 9 984



Ну все очень просто.
1 Пошел сигнал от датчика ,пошло прерывание INT
2 В прерывании INT запускаем таймер с прерванием от него через 1 секунду (например по совпадению)
3 Неспешно считаем количество INT дальше в том же прерывании от INT
4 По прерыванию от таймера ,смотрим сколько было INT ,если 5 УРАА!!!
Go to the top of the page
 
+Quote Post
Nanobyte
сообщение Nov 12 2006, 21:29
Сообщение #3


За битами по регистрам гоняюсь
***

Группа: Свой
Сообщений: 457
Регистрация: 24-04-06
Из: Таганрог
Пользователь №: 16 446



Цитата(bodja74 @ Nov 12 2006, 22:44) *
...
3 Неспешно считаем количество INT дальше в том же прерывании от INT
...

1) Немного непонятно, как считать INT находясь в INT. Может, в таймере?
2) Тогда, находясь в прерывании, нужно разрешить другие прерывания командой SEI.


--------------------
Курсор влево, курсор вправо - считается хакерством. FORMAT C: производится без предупреждения
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- archi2000   Прерывания в AVR   Nov 12 2006, 17:09
- - bodja74   Цитата(archi2000 @ Nov 12 2006, 20:09) Хо...   Nov 12 2006, 17:25
- - archi2000   Понимаю я может и правильно, но не правильно задал...   Nov 12 2006, 17:39
- - bodja74   Совершенно правильно . Но с подобными маневрами не...   Nov 12 2006, 17:54
- - archi2000   Спасибо, но я сам хочу задать время обработки этих...   Nov 12 2006, 18:02
|- - SasaVitebsk   Цитата(archi2000 @ Nov 12 2006, 21:02) Сп...   Nov 13 2006, 00:50
- - bodja74   Если я правильно понял принцип,то есть другой спос...   Nov 12 2006, 18:17
- - archi2000   Таймера и приоритетность прерываний у меня использ...   Nov 12 2006, 18:35
- - archi2000   Так оно примерно сейчас и работает, таймер меряет ...   Nov 12 2006, 18:51
- - archi2000   Еще прошу помощи - даташит на неродном языке. Проц...   Nov 14 2006, 14:47
- - Pyku_He_oTTyda   ЦитатаПочему для сброса флага нужно записывать лог...   Nov 14 2006, 14:53
- - archi2000   Спасибо, я сам также думал, что когда там 1, то 1+...   Nov 14 2006, 14:58
- - GetSmart   Прерывание по уровню вызывается мгновенно при прис...   Nov 14 2006, 15:18
|- - klop   Цитата(GetSmart @ Nov 14 2006, 18:18) Нас...   Nov 14 2006, 16:33
|- - xemul   Цитата(GetSmart @ Nov 14 2006, 18:18) Нас...   Nov 14 2006, 17:41
- - archi2000   Хочу такое запрограммировать - программный одновиб...   Nov 14 2006, 15:29
|- - SasaVitebsk   Цитата(archi2000 @ Nov 14 2006, 18:29) Хо...   Nov 15 2006, 16:57
- - GetSmart   Инициализируете нужное прерывание по фронту (или с...   Nov 14 2006, 16:16
- - GetSmart   Цитата(xemul)ЦитатаThe external interrupts are tri...   Nov 14 2006, 18:54
|- - _Bill   Цитата(GetSmart @ Nov 14 2006, 21:54) Цит...   Nov 15 2006, 07:10
|- - IgorKossak   Цитата(GetSmart @ Nov 14 2006, 20:54) Цит...   Nov 15 2006, 07:36
- - Diusha   «А жаль. Лучше бы софтовые прерывания вызывать мен...   Nov 15 2006, 04:23
- - GetSmart   Ну все тут прямо знатоки аглицкого как я погляжу. ...   Nov 15 2006, 09:25
- - Dog Pawlowa   Как по мне, то любая неочевидная логика работы уст...   Nov 15 2006, 11:27


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

 


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


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