А алгоритм следующий. (Прошивки пишу на Микропаскале, с Си не очень знаком)
Создаем бесконечный цикл и в этот цикл помещаем 2 процедуры обработки нажатия клавиш.
В каждую из этих процедур помещаем по бесконечной процедуре с условием (ожидание нажатия любой из кнопок)
В каждом из этих бесконечных циклов с условием будет написан алгоритм зажигания светодиодных лент (просто ставим логическую единицу и сбрасываем в ноль пины по очереди, к которым подключены ленты, с задержкой в одну секунду) .
Как только нажата одна из кнопок (условие выхода из цикла) МК выходит из этого цикла и выполняет первый бесконечный цикл (ожидание нажатия кнопок(ленты выключены))
"Как, добавив еще 2 клавиши, изменять время задержки во время прохождения цикла поочередного включения ленты?"
- Просто добавив переменную в программу МК. А в процедуре задержки вместо конкретного значения указать имя этой переменной.
И добавив еще 2 процедуры обработки нажатия кнопок, при нажатии на одну - переменная увеличивается (например на 100мс), на другую - уменьшается.
"Сложнее или легче реализовать эту задачу на PICе и может кто-то посоветует более дешевый МК?"
- Не знаю, работал только с AVR Atmega. Если я правильно понял задачу, то тут хватит и ATMega8, она стоит рублей 90 , а тут вообще 70
http://electronlab.ru/pi/products_id/94151
"нужно ли редактировать прошивку) между ATmega48PA-AU и ATmega48P или только отличие в корпусном исполнении?"
- Не нужно.
В общем, написать прошивку не такая уж и большая проблема. Завтра могу помочь, хотя тут спецов много

, может кто раньше её напишет. Просто у нас уже 4 часа ночи
