Цитата(0x56 @ Jul 11 2009, 21:10)

а нужно просто дребезг котактов(gsm сигнализация) исключить, 50 мс
Понятно.
Я уже в одной теме выкладывал, на второй раз терпежу не хватит...
Вкратце алгоритм такой.
В прерывании от контакта выставляете флаг изменения состояния кнопки и засекаете время данного события. А ещё лучше время плюс задержку.
Далее, в основном цикле, делаете проверку, прошло это время или нет.
Например:
if(TimeCtr>KeyTime) // кнопка таки нажата (или отпущена)
{
Опрашиваем состояние кнопки
Сбрасываем флаг
Выполняем нужные действия
}
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)