[an error occurred while processing this directive]
Разумеется, при записи в порт может генерироваться прерывание
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено =AVR= 06 сентября 2006 г. 10:19
В ответ на: может выразился не так (+) отправлено Z 06 сентября 2006 г. 09:48

Когда оно разрешено, то оно возникает при любой смене уровня (на входе или выходе - неважно) на ноге или ногах порта, входящих в список PCI. Чтобы этого избежать, нужно перед записью в порт запрещать PCI (PCIEx=0), а после записи - разрешать снова. Если ты используешь только одну ногу порта для PCI, то проще будет действовать не при помощи PCI, а при помощи INT0, сконфигурировав его на срабатывание по обоим фронтам - тогда можно будет просто маскировать (не трогать) одну эту ногу при выводе в порт.

И еще - у тебя там кнопка, поэтому не забудь о том, что у контактов есть дребезг, от которого твое прерывание при нажатии кнопки возникнет не один раз, а несколько (десятки-сотни) раз подряд в течение первых миллисекунд после нажатия. Это следует учесть, применив один из программных приемов антидребезга

Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа
Имя (обязательно): 
Пароль: 
E-mail: 

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 
URL изображения: 


Rambler's Top100 Рейтинг@Mail.ru
Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание