роботы
робототехника
микроконтроллеры
Главная
Как сделать робота
Новости
Спорт
Статьи
Wiki
Форум
Downloads
Ссылки
Контакты  


 Страниц (17): В начало « ... 6 7 8 9 [10] 11 12 13 14 ... » В конец    

> Без описания
ОЛЕГ Супермодератор
Отправлено: 02 Декабря, 2010 - 00:12:16
Post Id



Супермодератор


Сообщений всего: 1732
Дата рег-ции: Нояб. 2008  





cjA пишет:
а тсопы и логику на прерывания посадить

Прерывания имеют приоритет. Поэтому отработать два прерывания синхронно невозможно. Пробовал извращаться- не получилось. Результат непредсказуем.
 
 Top
nest Администратор
Отправлено: 02 Декабря, 2010 - 00:14:07
Post Id



Администратор


Сообщений всего: 4866
Дата рег-ции: Сент. 2009  





ОЛЕГ пишет:
отработать два прерывания синхронно невозможно. Пробовал извращаться- не получилось. Результат непредсказуем.
Ну почему же. Прерывание с бОльшим приоритетом прервёт первым.
 
 Top
ОЛЕГ Супермодератор
Отправлено: 02 Декабря, 2010 - 00:26:37
Post Id



Супермодератор


Сообщений всего: 1732
Дата рег-ции: Нояб. 2008  





nest пишет:
Прерывание с бОльшим приоритетом прервёт первым.

Так вот и я о том же. Улыбка
 
 Top
cjA
Отправлено: 02 Декабря, 2010 - 01:14:30
Post Id



Генерал


Сообщений всего: 3291
Дата рег-ции: Янв. 2010  





сдрасти!
про принцип Хайзенберга никто уже не слышал? Первым прервет то кто первым прервет.
нет серьезно, в авээрках разве есть режим когда прерывание дожидается более старшево?
господа, Вы о чем?

результат непредсказуем - в этом и прелесть
 
 Top
mihail
Отправлено: 02 Декабря, 2010 - 01:16:56
Post Id



Гуру


Сообщений всего: 1065
Дата рег-ции: Март 2010  





cjA пишет:
а ведь ты совсем недавно говорил что у 2313 1Мгц по умолчанию

cjA пишет:
нигде не иницеализировал предделитель на 2

cjA пишет:
вот в этом примере - частота не 4Мгц


Я всего лишь человек. А, людям свойственно ошибаться. Посмотрел последнюю программу. Без изменения Fuse Bits микроконтроллер будет работать на 8 MHz.

Но, если поставить кварцевый резонатор на 4 MHz (+ пару конденсаторов) и изменить Fuse Bits, то эта программа будет работать так как планировалось Улыбка
 
 Top
ОЛЕГ Супермодератор
Отправлено: 02 Декабря, 2010 - 01:21:47
Post Id



Супермодератор


Сообщений всего: 1732
Дата рег-ции: Нояб. 2008  





cjA пишет:
Первым прервет то кто первым прервет.
нет серьезно, в авээрках разве есть режим когда прерывание дожидается более старшево?

Первым прервет то событие, которое произойдет раньше.
При синхронном наступлении событий первым будет обработано старшее прерывание.

Мы говорим об одном и том же.
 
 Top
nest Администратор
Отправлено: 02 Декабря, 2010 - 01:22:34
Post Id



Администратор


Сообщений всего: 4866
Дата рег-ции: Сент. 2009  





cjA пишет:
в авээрках разве есть режим когда прерывание дожидается более старшево?
вы вечно задним умом.
при одновременном срабатывании нескольких прерываний, обрабатываются они по мере приоритета. Чего тут непонятного.
 
 Top
cjA
Отправлено: 02 Декабря, 2010 - 01:40:57
Post Id



Генерал


Сообщений всего: 3291
Дата рег-ции: Янв. 2010  





nest и ОЛЕГ, перечитайте волновую механику, какие еще "одновременные срабатывания"?

даже два электрона на одной орбите не могут сидеть одновременно если у них спин разный!???

то что они одновременны- только кажется, это в каком порядки вы, например, на ножки их входы подцепили. и кому какой резюк, и кому какой кондер.

Это в пеньках вторых четыре уровня прерываний, когда более старшее может отменить младшее, хоть оно уже и висит само на себе полчаса. А вРИСКах этого нет.

Ну или обоснуйте.
 
 Top
ОЛЕГ Супермодератор
Отправлено: 02 Декабря, 2010 - 01:50:05
Post Id



Супермодератор


Сообщений всего: 1732
Дата рег-ции: Нояб. 2008  





Практическое обоснование, эксперимент доступен для повторения.
ИК-светодиод и два ТСОПа, повешенных на два прерывания, индикация- светодиоды.

При получении сигнала одним ТСОПом зажигается его СД, При получении сигнала другим- его.
При получении сигнала двумя ТСОПами одновременно зажигается СД того ТСОПа, который сидит на старшем прерывании. Если поменять ТСОПы местами любым способом- все равно обрабатывается тот, который сидит на ноге МК, отвечающей за старшее прерывание.
Если в обработчик старшего прерывания вставить принудительную проверку сигнала со второго ТСОПа, то результат зависит от погоды на Марсе. Даже если поиграть с поправкой на частоту работы ТСОПа.
Я это делал, мне нужно было. Не работает. Замешательство

Полагаю, если МК начнет измерять спины электронов, попавших в него с разных прерываний, он свихнется и зависнет. не в себе
Полагаю так же, что это преднамеренное загрубление и зависит оно от тактовой частоты.
 
 Top
mihail
Отправлено: 02 Декабря, 2010 - 02:04:41
Post Id



Гуру


Сообщений всего: 1065
Дата рег-ции: Март 2010  





Насколько я понял, в микроконтроллерах tiny/mega есть строгий порядок проверки флагов прерываний. И если постоянно выставляется один флаг, то до проверки следующего за ним дело может и не дойти.
 
 Top
buyvoll
Отправлено: 02 Декабря, 2010 - 02:13:14
Post Id


Капитан


Сообщений всего: 43
Дата рег-ции: Нояб. 2010  






"даже два электрона на одной орбите не могут сидеть одновременно если у них спин разный!???"

Должно быть, имелось ввиду "одинаковый"
 
 Top
cjA
Отправлено: 02 Декабря, 2010 - 02:21:04
Post Id



Генерал


Сообщений всего: 3291
Дата рег-ции: Янв. 2010  





mihail ну ... я как бы тоже об этом ...

climy:;x...
cli
rjmp climy;x...

от сюда можно выйти? Я не спорю, я просто спрашиваю... (я только учусь Грустный )
(Добавление)
buyvoll , это просто проверка кто из соресурсников и соресурсниц пройдет ЕГЭ без экзаменов Улыбка


имелось ввиду "солинеарный"
 
 Top
mihail
Отправлено: 02 Декабря, 2010 - 03:53:27
Post Id



Гуру


Сообщений всего: 1065
Дата рег-ции: Март 2010  





cjA пишет:
от сюда можно выйти?
Не знаю Замешательство Если в программе используются прерывания, то необходимо смотреть всю программу целиком. И анализировать код исходя из того, что прерывание может возникнуть в любом месте программы.

Еще, события которые должны приводить к прерываниям могут наступать чаще, чем выполняются обработчики прерываний.

С прерываниями много всего, что необходимо учитывать.
 
 Top
nest Администратор
Отправлено: 02 Декабря, 2010 - 20:26:54
Post Id



Администратор


Сообщений всего: 4866
Дата рег-ции: Сент. 2009  





cjA пишет:
nest и ОЛЕГ, перечитайте волновую механику, какие еще "одновременные срабатывания"?
Это в пеньках вторых четыре уровня прерываний, когда более старшее может отменить младшее, хоть оно уже и висит само на себе полчаса. А вРИСКах этого нет.

В AVR все ноги (и прерывания) стробируются с клоком ядра, так что они тут с вами категорически не согласны. И появившиеся прерывания, укладывающиеся минимум в полупериод такта ядра, будут считаться одновременными.

Не углубляйтесь так во всякие волновые механики, а то ... утоните.
И давайте по меньше филосовствовать.
 
 Top
cjA
Отправлено: 02 Декабря, 2010 - 21:18:28
Post Id



Генерал


Сообщений всего: 3291
Дата рег-ции: Янв. 2010  





ну дак правильно.
даже если на все ножки придут прерывания одновременно (относительно счетчика)- МК прочтет их последовательно, в своем, (для каждой реализации разном, у них и шестиногие МК есть)
порядке, который в даташите никак не упоминатеся.

нету у атмеля преоритетов в прерываниях

(или ткните меня носом в даташит)
 
 Top
Страниц (17): В начало « ... 6 7 8 9 [10] 11 12 13 14 ... » В конец
« Программирование микроконтроллеров »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 





Powered by Exclusive Bulletin Board
ExBB FM 1.0 RC1 Smiles by Fool from Foolstown