Пример
блок-схемы.
Тебе надо такой блок-схемой составить основной алгоритм работы схемы: Как она должна отреагировать на нажатие кнопок. Это приблизит понимание принципа работы и сосредоточит внимание на реализации других мелочей.
Пример динамической индикации можно посмотреть
тут. Надо только заставить программу выдавать соответствующую последовательность импульсов на выводах контроллера. Для этого достаточно посмотреть КАК работают порты контроллера, и немного пошевелить мозгами с логикой.
Читать всю книжку не надо, достаточно посмотреть только нужные страницы, где объясняются нужные для схемы вещи.
п.с. за неделю написать такую программу можно. Я когда-то сделал "мигалку" на 4 светодиода с 16-ю уровнями яркости за 3-4 дня до этого не имея опыта работы с контроллерами. Надо просто представлять себе что ты собираешься сделать и не искать готовых решений - переделать чьи-то часы в таймер гораздо сложнее чем разработать собственную программу. Но, схему в принципе МОЖНО содрать с готового проекта(да возьми схему любых часов на меге).
И разделяй программу на логические блоки.
Например индикация - она реализуется отдельным алгоритмом, и работает на прерывании таймера. Единственное что её связывает с программой - это ячейки в памяти которые будут выведены на индикатор. Надо таймер на 4 цифры - значит 4 ячейки. Эта подпрограмма каждое прерывание берет следующую ячейку, подает напряжение на соответствующий разряд индикатора и все. Доходит до конца - переходит на начало. И так до бесконечности.
После того как эта часть будет реализована - достаточно записать цифры в ячейки и они будут отображены.
Основной программе достаточно будет оперировать этими ячейками и всего-то.
Каждую секунду прибавлять к младшему разряду "+1", если есть перенос - следующий разряд и т.д. Прибавлять только в том случае если еще одна переменная допустим равна нулю, это будет означать что таймер "в работе". Обнуляя эту переменую или занося туда какое-то значение можно управлять работой таймера - старт-пауза, что и должно быть реализовано по нажатию кнопок.
Ну и сброс само собой обнуляет значение в ячейках разрядов. Технически, эту кнопку можно реализовать как сброс микроконтроллера...