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

 
 
> Прерывания в 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
Ответов
archi2000
сообщение Nov 12 2006, 18:02
Сообщение #2


Участник
*

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



Спасибо, но я сам хочу задать время обработки этих внешних собыбий. Я экспериментирую с любительским устройством похожим на сигнализацию. Все работает хорошо, но есть помехи по цепям датчиков около 50 мсек длительностью. Сложно все заэкранировать, хочу програмно на это время заблокировать внешние прерывания и один раз в 50 мсек их разрешать. Также хочу чтобы таких импульсов было не один, а допустим 5 шт. и тогда тревога, иначе просто через определенное время этот флаг очистить. Сигнализация описана для наглядности, устройство немного другое.
Go to the top of the page
 
+Quote Post
SasaVitebsk
сообщение Nov 13 2006, 00:50
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521



Цитата(archi2000 @ Nov 12 2006, 21:02) *
Спасибо, но я сам хочу задать время обработки этих внешних собыбий. Я экспериментирую с любительским устройством похожим на сигнализацию. Все работает хорошо, но есть помехи по цепям датчиков около 50 мсек длительностью. Сложно все заэкранировать, хочу програмно на это время заблокировать внешние прерывания и один раз в 50 мсек их разрешать. Также хочу чтобы таких импульсов было не один, а допустим 5 шт. и тогда тревога, иначе просто через определенное время этот флаг очистить. Сигнализация описана для наглядности, устройство немного другое.


У меня это штатная работа. smile.gif
В телефонной линии (цифровой) применён импульсный трансформатор. При передаче сигнала и не очень качественном трансе возникает не одно а два прерывания (на фронт и выброс). Я в обработчике прерывания, перед выходом сбрасываю ложное прерывание.

Надо просто учитывать что сброс осуществляется записью единицы. Безусловно, что надо учесть время такого переходного процесса.

насчёт остального Вам уже пояснили.
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
- - bodja74   Если я правильно понял принцип,то есть другой спос...   Nov 12 2006, 18:17
- - archi2000   Таймера и приоритетность прерываний у меня использ...   Nov 12 2006, 18:35
- - bodja74   Ну все очень просто. 1 Пошел сигнал от датчика ,по...   Nov 12 2006, 18:44
|- - Nanobyte   Цитата(bodja74 @ Nov 12 2006, 22:44) ... ...   Nov 12 2006, 21:29
- - 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 Текстовая версия Сейчас: 21st August 2025 - 20:49
Рейтинг@Mail.ru


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