Цитата(impuls-v @ May 5 2006, 00:16)

есть такой вопрос. Собираю устройство на ATmega8535 подключенно к RS232, требуется чтобы устройство имело свои независимые от ПК часы с календарем, и необходимо иметь возможность установки часов с ПК.
Подскажите как реализовать данную функцию.
А в чем проблема?
Делаешь в программе место, в которое заходишь с определенной регулярностью (идеально расчитанный цикл программы, а лучше прерывание от таймера).
В этом месте делаешь счетчик, который доводит эту регулярность до одной секунды и, при достижении этого события, ставит флаг.
В любом месте, но с регулярностью менее 1 секунды проверяешь флаг и, если он стоит - сбрасываешь его и прибавляешь к насчитанному времени 1 сек в двоичном, двоичном побайтном, BCD или любом другом любимом формате. В процессе прибавления проверяешь число дней в месяце, високосный год и прочие необходимости.
Чтобы точность была хорошая кварц надо брать не менее 30ppm, а один из конденсаторов поставить подстроечным. позаботиться о хорошем ТКЕ обоих конденсаторов. Потом частоту кварца подстроить с максимальной точностью, измеряя ее не на выводах кварца, а на выходе порта процессора, где сгенерировать любым доступным способом импульсы, частота которых зависит только от частоты генератора процессора. Подстроечником частота должна менять в обе стороны от желаемого значения. Если это не удается - надо сменить тип или производителя кварца.
При установке (коррекции) не забывайте поправлять и секундный делитель.
Как прибавлять 1 к чему-нибудь найдете в букварях.