Цитата(ytkopobot @ Feb 19 2009, 16:49)

На самом деле что нужно:
Классический пример картинки из соседней ветки:

Цитата(ytkopobot @ Feb 19 2009, 16:49)

Есть кнопочка, её нажатие инициирует внешнее прерывание 1, кнопочка для перелистывания номеров телефонной книги. При нажатии на кнопочку светится номер. Ну допустим минуту он светится. Но допустим я не хочу ждать минуту, а сразу же снова жму на кнопочку, чтобы загорелся следующий.
Нажали кнопку, получили прерывание. Выставили флаг "показать номер". В основном цикле:
1) если нет флага, поделать что-то полезное. Если есть - шаг 3
2) перейти на шаг 1
3) заряжаете счетчик на 1 минуту, сбрасываете флаг, показываете номер.
4) если счетчик отсчитал минуту, то шаг 6
5) Если увидели флаг "показать номер" - передвигаете указатель на следующий номер и переходите к шагу 3
6) переходите к шагу 4
7) Гасите номер, переходите к шагу 1.
Цитата(ytkopobot @ Feb 19 2009, 16:49)

Спросила- сказали рекурсивное прерывание...
Ага, и через несколько номеров получаете переполнение стека с вылетом программы. Рекурсивные (вложенные) прерывания бывают нужны, но не в этом случае.