[an error occurred while processing this directive]
А по уровню нет. Нетути.
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)
Отправлено
-=ВН=-
19 октября 2006 г. 19:21
В ответ на:
Пурква па? От любого пина P1 или P2. Как по срезу, так и по фронту. Только вот вектор у них один на каждый порт.
отправлено rezident 19 октября 2006 г. 19:19
Составить ответ
|||
Конференция
|||
Архив
Ответы
А "по уровню" это как? Поясните.
—
rezident
(19.10.2006 19:22
195.222.149.11
,
пустое
)
Да просто. Есть нужный уровень - возникает прерывание, если оно разрешено. Нет - не возникает. Не фронт, а уровень. В 51 например выбиралось - по фронту или по уровню внешнее прерыв..
—
-=ВН=-
(19.10.2006 19:31
193.125.71.140
,
пустое
)
Кстати, если перед выходом из прерывания флаги PxIFG не сбрасывать или наоборот принудительно устанавливать в соответствии с состоянием PxIN.bit, то получиться искомое прерывание "по уровню".
—
rezident
(19.10.2006 20:43
195.222.149.11
,
пустое
)
Не получится.
—
-=ВН=-
(19.10.2006 20:47
193.125.71.140
,
пустое
)
Почему?
—
rezident
(19.10.2006 21:35
195.222.149.11
,
пустое
)
Первый вариант, не сбрасывать, к объективной реальности, происходящей за бортом контроллера, не имеет никакого отношения. Второй вариант, устанавливать IFG во входное состояние, потребует заниматься этим постоянно, для соблюдения полной эквивалентности, ни на что больше не останется времени.
—
-=ВН=-
(19.10.2006 21:52
193.125.71.140
,
пустое
)
А какое отношение к реальности тогда имеет "прерывание по уровню" в x51?
—
rezident
(19.10.2006 22:10
195.222.149.11
,
пустое
)
Самое прямое. В 51 оно есть. Прерывание вызывает уровень на ноге. А не какой-то несброс флага или его программная установка в состояние входной ноги. Вот такое отношение оно имеет к реальности. Скачайте с Интела мануэля на 51 и ознакомьтесь, если интересно.
—
-=ВН=-
(19.10.2006 22:18
193.125.71.140
,
пустое
)
Да вспомнил я вспомнил его суть. Потому и предложил его возможную реализацию для MSP430.
—
rezident
(19.10.2006 22:24
195.222.149.11
, 201 байт)
Ну я Вас отошлю к своему предпредыдущему ответу.
—
-=ВН=-
(19.10.2006 22:29
193.125.71.140
,
пустое
)
Например, в х51 - пока на пине Int активный уровень - вызывается прерывание, а флаг никакой не устанавливается и не запоминается. Ни разу в жизни не пригодилось
—
=AVR=
(19.10.2006 19:31
80.92.96.19
,
пустое
)
Правда, некоторые МК из спячки выводятся только уровневым прерыванием - генератор-то выключен
—
=AVR=
(19.10.2006 19:32
80.92.96.19
,
пустое
)
Дык у MSP430 из любого режима энергосбережения можно выйти по прерыванию. Даже если все тактовые генераторы остановлены.
—
rezident
(19.10.2006 19:54
195.222.149.11
,
пустое
)
Для того, чтобы распознать ФРОНТ, в синхронных структурах нужны такты. Когда их нет, то нужна либо асинхронная схема (RS-триггер), либо именно прерывание по уровню
—
=AVR=
(19.10.2006 20:06
80.92.96.19
,
пустое
)
У MSP430 на всех блок-схемах RS-триггера нарисованы.
—
rezident
(19.10.2006 20:34
195.222.149.11
,
пустое
)
Не, фронт можно распознать еще обострителем:-) Вентиль И, на один вход дли-и-и-инная нечетная цепь инветроров, а второй вход совмещен со входом первого инвертора в цепи. И положительный фронт готов:-)
—
-=ВН=-
(19.10.2006 20:11
193.125.71.140
,
пустое
)
А на XOR - дык оба сразу :)
—
=AVR=
(19.10.2006 20:26
80.92.96.19
,
пустое
)
yes:-)
—
-=ВН=-
(19.10.2006 20:31
193.125.71.140
,
пустое
)
Отправка ответа
Имя (обязательно):
Пароль:
E-mail:
Тема (обязательно):
Сообщение:
Ссылка на URL:
Название ссылки:
URL изображения:
Перейти к списку ответов
|||
Конференция
|||
Архив
|||
Главная страница
|||
Содержание