Цитата(Allexiy @ Dec 2 2006, 01:49)

Есть рабочий проект на Атмеге 128 с использованием двух кварцев 14,745МГц и 32768Гц.
Низкочастотный кварц крутил таймер Т0 и по переполнению таймера (каждую 1сек) велся подсчет импульсов по трем каналам - мерил частоту. Все бы хорошо, но от кварцев сказали избавиться, а дают 48МГц на управление схемой. Сделав в ПЛИС делитель на 3, получил частоту 16МГц, которую и собираюсь использовать для внешней синхронизации контроллера. Далее поделив еще на 15625 получил 1024Гц, которые я и хотел использовать для отсчета времени, но прочитал, что нельзя подавать внешнюю синхронизацию на низкочастотный вход (ТОSС1, TOSC2). Вот и хотелось бы узнать:
1. Как можно завести эту частоту в таймер T0. (T1,T2,T3 - уже используются в этом проекте)
2. Можно ли запрограммировать контроллер так, чтобы если нет частоты с внешней синхронизации, то он переключался бы на встроенный генератор. (Как это можно сделать)
У меня в одном из проектов таймер запускал АЦП с частотой 36 Гц.
Предопределял одну минуту:
Код
#define TIME60S36HZ 2160 //60 сек. при дискретизации 36 Гц
А потом просто считал их:
Код
Time60S36HzCount++;
if (Time60S36HzCount == TIME60S36HZ)
{
//обработка события раз в минуту
Time60S36HzCount = 0;
}
Все очень просто. Требований к точности отсчета минуты были не высоки.
Сообщение отредактировал chernenko - Dec 6 2006, 19:36