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

 
 
3 страниц V  < 1 2 3 >  
Reply to this topicStart new topic
> Объясните разницу между прерыванием по спадающему фронту и по появлению низкого уровня.
rv3dll(lex)
сообщение Sep 7 2008, 18:30
Сообщение #16


Полное ничтожество
*****

Группа: Banned
Сообщений: 1 991
Регистрация: 20-03-07
Из: Коломна
Пользователь №: 26 354



чего то я в 8080 не помню разницы в прерываниях уровен фронт помню про то что вектор через жопу задавался на шине данных - но это давно совсем было чтото около 86РК
Go to the top of the page
 
+Quote Post
zltigo
сообщение Sep 7 2008, 18:50
Сообщение #17


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(singlskv @ Sep 7 2008, 20:27) *
Вы зачем-то все равно спорите...

Например, по той простой причине, что сейчас у меня на столе лежит девайс с 32 переферийными чипами подключенными в цепочку на SPI и висящими на одном прерывании LPC2138. И "20 лет назад" тут не причем - ничего не изменилось от того, что кто-то посадил практически параллельно входу еще будильник.
Цитата
Парни развивающие LPC думают примерно так же...

"Парни LPC" нарисовали схемки с которыми может ознакомится каждый желающий в User Manuale:
Reset block diagram including the wakeup timer и External interrupt logic.
Дабы не предаватся фантазиями.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
singlskv
сообщение Sep 7 2008, 19:04
Сообщение #18


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(zltigo @ Sep 7 2008, 22:50) *
Например, по той простой причине, что сейчас у меня на столе лежит девайс с 32 переферийными чипами подключенными в цепочку на SPI и висящими на одном прерывании LPC2138. И "20 лет назад" тут не причем - ничего не изменилось от того, что кто-то посадил практически параллельно входу еще будильник.

"Парни LPC" нарисовали схемки с которыми может ознакомится каждый желающий в User Manuale:
Reset block diagram including the wakeup timer и External interrupt logic.
Дабы не предаватся фантазиями.
Дык у Вас и нет задачек связанных с минимизацией энергопотребления...
Вот Вы и не пользуетесь этими прерываниями по "назначению"...(исходя из текущего момента)
Еще раз повторюсь, придуманно это все(прерывания по уровню) было для
возможности ассинхронной обработки., то есть без тактового сигнала, все остальные применения
вторичны и вытекают из первоначального замысла...
Go to the top of the page
 
+Quote Post
zltigo
сообщение Sep 7 2008, 19:08
Сообщение #19


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(singlskv @ Sep 7 2008, 21:04) *
Еще раз повторюсь...

Можете повторить эти фантазии еще несколько раз, но от этого слаще во рту не станет smile.gif. Заметьте, что я не утверждаю, что это Ваши фантазии, допускаю, что Вы это где-то на полном серьезе вычитали, но тем не менее это к реальности появления прерываний по уровню отношения не имеет.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
singlskv
сообщение Sep 7 2008, 20:37
Сообщение #20


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(zltigo @ Sep 7 2008, 23:08) *
Можете повторить эти фантазии еще несколько раз, но от этого слаще во рту не станет smile.gif. Заметьте, что я не утверждаю, что это Ваши фантазии, допускаю, что Вы это где-то на полном серьезе вычитали, но тем не менее это к реальности появления прерываний по уровню отношения не имеет.
Вы фсе сказали... ?
Специально для любителей контроллеров NXP, приводим выдержки из их даташитов:
lpc2377.lpc2378.pdf:
7.25.4.2Sleep mode
In Sleep mode, the oscillator is shut down and the chip receives no internal clocks.
....
The Sleep mode can be terminated and normal operation resumed by either a Reset or certain specific interrupts that are able to function without clocks.

Так про какие фантазии Вы там заикались ... ?
Go to the top of the page
 
+Quote Post
zltigo
сообщение Sep 7 2008, 21:19
Сообщение #21


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(singlskv @ Sep 7 2008, 22:37) *
Вы фсе сказали... ?

Да. И причем в самом первом посте. Потом, когда началась пурга "про Ерему" еще и названия схем из user manual привел. Изучайте, как запускается генератор LPC и как потом прерывние стробируется и обрабатыватся. Заодно поищите системы энергосбережения у контроллеров у которых их отродясь не было, а прерывания по уровню были. Документация на классический контроллер прерываний (именно совсем отдельный контроллер прерываний - дикие времена - начало 80x!!!, микроконтроллеров вообще не было, "зеленых" - тоже ) 8259 вполне доступна - можете легко проверить и там УЖЕ программировались Level/Edge Triggered Mode. В общем, думаю, что что-то еще говорить совершенно излишне. Ну халва-халва-халва можете повторять...


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
singlskv
сообщение Sep 7 2008, 21:28
Сообщение #22


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(zltigo @ Sep 8 2008, 01:19) *
Да. И причем в самом первом посте.

Тема LPC и их "without clocks" в даташитах почему-то не была раскрыта...,
интересно, все Ваши советы нужно воспринимать исходя из
элементной базы аля 8080, 8259, итд ?
Или может быть все-таки будем говорить о современных мк ?
Go to the top of the page
 
+Quote Post
zltigo
сообщение Sep 7 2008, 21:31
Сообщение #23


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(singlskv @ Sep 7 2008, 23:28) *
Тема LPC и их "without clocks" в даташитах почему-то не была раскрыта...,

Раскрыта абсолютна, помянутые схемы будем смотреть, или рассчитывать на то, что многократно произнесенная ложь о "изобретении" Level Trigger для выхода из сна вдруг станет правдой?
Не станет smile.gif


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
singlskv
сообщение Sep 7 2008, 21:38
Сообщение #24


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(zltigo @ Sep 8 2008, 01:31) *
Раскрыта абсолютна, помянутые схемы будем смотреть, или рассчитывать на то, что многократно произнесенная ложь вдруг станет правдой?
То есть Вы утверждаете что из PowerDown всегда можно проснуться без
тактового сигнала ? так ?
используя только фронты конечно...
Go to the top of the page
 
+Quote Post
ReAl
сообщение Sep 7 2008, 22:49
Сообщение #25


Нечётный пользователь.
******

Группа: Свой
Сообщений: 2 033
Регистрация: 26-05-05
Из: Бровари, Україна
Пользователь №: 5 417



Цитата(singlskv @ Sep 7 2008, 22:04) *
Дык у Вас и нет задачек связанных с минимизацией энергопотребления...
Вот Вы и не пользуетесь этими прерываниями по "назначению"...(исходя из текущего момента)
Еще раз повторюсь, придуманно это все(прерывания по уровню) было для
возможности ассинхронной обработки., то есть без тактового сигнала, все остальные применения
вторичны и вытекают из первоначального замысла...
Господи....
Да прервания по уровню были придуманы тогда, когда никому и в кошмаре не снилось, что блок процессора может не получать тактового сигнала не в результате поломки. Никакой необходимости снимать такт с тех гробов не было, они и в статике жрали будь-будь. Ни о какой асинхронной обработке и речи не шло, когда на единственный вход прерывания процессора вешались все источники. Запрос прерывания должен был оставаться до тех пор, пока все источники не будут удовлетворены, а это возможно только при "монтажной" логике, только по уровню.

Или Вы из "поколения пепси", считающего, что компьютеры начались с IBM PC (причём под этим названием понимающих не собственно IBM PC, и даже не IBM PC/XT, а уже IBM PC/AT)?
Так и там никто не снимал такт с процессора, а прерывания по уровню были.


--------------------
Ну, я пошёл… Если что – звоните…
Go to the top of the page
 
+Quote Post
Боинг749
сообщение Sep 8 2008, 14:58
Сообщение #26


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

Группа: Новичок
Сообщений: 83
Регистрация: 25-08-08
Пользователь №: 39 801



Цитата(Зверюга @ Sep 6 2008, 07:13) *
Можете привести практический пример ситуации, в которой этот режим полезен?

Ну можно например организовать "пошаговое" выполнение программы. В ковычках потому что в критической секции ( участок программы с глобальным запретом прерываний) быть несколько "шагов" будут выполняться как один "шаг" smile.gif

Цитата(zltigo @ Sep 7 2008, 22:04) *
У 8080 были прерывания по уровню, они тактировались, и что характерно все это было не для "фишек".

А у мег оно работает и без тактирования. Именно это и позиционируется как "фишка" в даташите
Go to the top of the page
 
+Quote Post
zltigo
сообщение Sep 8 2008, 15:29
Сообщение #27


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(Боинг749 @ Sep 8 2008, 16:58) *
А у мег оно работает и без тактирования. Именно это и позиционируется как "фишка" в даташите

Как это примерно делается в общем случае уже писал, могу чуть конкретизировать.
По воздействию на "вход прерывания" отрабатывает подключенный параллельно собственно входу контролера прерываний RS триггрер и будит генератор, если он был выключен. Тактовые импульсы идут на счетчик, который отсчитывает некотрое количество импульсов - задержка для входа генератора в рабочий режим и разрешает тактирование ядра, после чего, естественно, отрабатывает уже при наличии тактовой контроллер прерываний и типа "проснулись". Практически с контроллером прерывания используются только общие входные узлы типа фильтра гличей... Все.
Что там маркетологи некоторых производителей пишут о "работе без тактирования" и величайшем "изобретении" Level Triggering дело десятое.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Боинг749
сообщение Sep 8 2008, 18:04
Сообщение #28


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

Группа: Новичок
Сообщений: 83
Регистрация: 25-08-08
Пользователь №: 39 801



Цитата(zltigo @ Sep 8 2008, 19:29) *
Что там маркетологи некоторых производителей пишут о "работе без тактирования" ...

Не надо передёргивать. О "работе" процессора без тактирования никто не говорит.

Речь о том, что "спящий" процессор в микроконтроллерах ATmega с остановленным тактовым генератором может быть разбужен только преываниями, обнаруживаемыми асинхронно. А такими прерываниями в AVR являются прерывания по уровню. Причём по НИЗКОМУ уровню.

Вот и всё.

Не более того.

Но и не менее.

Сообщение отредактировал Боинг749 - Sep 8 2008, 18:06
Go to the top of the page
 
+Quote Post
zltigo
сообщение Sep 8 2008, 18:10
Сообщение #29


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(Боинг749 @ Sep 8 2008, 20:04) *
...может быть разбужен только преываниями

Жаль только, что Вы так и не поняли, что собственно механизм "прерывания" к выводу из глухой спячки и не причем. Поскольку мне от этого не холодно ни жарко, то можете продолжать повторять цитаты из книжек для конечного пользователя.
Цитата
Не надо передёргивать. О "работе" процессора без тактирования никто не говорит.

"Без тактирования" это Ваши слова по отношению к контроллеру прерывания, никакого расширенного толкования этому я не давал, посему не надо Вам самого себя заводить и бросаться обвинениями.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
ReAl
сообщение Sep 8 2008, 20:04
Сообщение #30


Нечётный пользователь.
******

Группа: Свой
Сообщений: 2 033
Регистрация: 26-05-05
Из: Бровари, Україна
Пользователь №: 5 417



Цитата(Боинг749 @ Sep 8 2008, 21:04) *
Речь о том, что "спящий" процессор в микроконтроллерах ATmega с остановленным тактовым генератором может быть разбужен только преываниями, обнаруживаемыми асинхронно.
А такими прерываниями в AVR являются прерывания по уровню. Причём по НИЗКОМУ уровню.

Речь идёт также о том, что из этого не следует, что прерывания по уровню были придуманы для этого.

Кроме того зря так громко при НИЗКИЙ уровень
Мега168:

Цитата
9.4 Power-down Mode
When the SM2..0 bits are written to 010, the SLEEP instruction makes the MCU enter Powerdown
mode. In this mode, the external Oscillator is stopped, while the external interrupts, the 2-
wire Serial Interface address watch, and the Watchdog continue operating (if enabled). Only an
External Reset, a Watchdog System Reset, a Watchdog Interrupt, a Brown-out Reset, a 2-wire
Serial Interface address match, an external level interrupt on INT0 or INT1, or a pin change
interrupt
can wake up the MCU. This sleep mode basically halts all generated clocks, allowing
operation of asynchronous modules only.
pin change - по любому перепаду.
Для PCINT немного изменили схему детектора перепада и она уже работает для побудки и без тактового сигнала.


--------------------
Ну, я пошёл… Если что – звоните…
Go to the top of the page
 
+Quote Post

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

 


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


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