[an error occurred while processing this directive]
|
Когда оно разрешено, то оно возникает при любой смене уровня (на входе или выходе - неважно) на ноге или ногах порта, входящих в список PCI. Чтобы этого избежать, нужно перед записью в порт запрещать PCI (PCIEx=0), а после записи - разрешать снова. Если ты используешь только одну ногу порта для PCI, то проще будет действовать не при помощи PCI, а при помощи INT0, сконфигурировав его на срабатывание по обоим фронтам - тогда можно будет просто маскировать (не трогать) одну эту ногу при выводе в порт.
И еще - у тебя там кнопка, поэтому не забудь о том, что у контактов есть дребезг, от которого твое прерывание при нажатии кнопки возникнет не один раз, а несколько (десятки-сотни) раз подряд в течение первых миллисекунд после нажатия. Это следует учесть, применив один из программных приемов антидребезга