Тут всё нормально работает. Спасибо участникам форума, которые ранее отвечали на мои вопросы.
Схема входного каскада - рис.
Вопрос - как можно померить частоту имея на входе АЦП поднятое на 2.5в напряжение сети 50 Гц.
Вообще-то оно совершенно не капает, ну так, интересно просто. Для полноты функционала так сказать ...
Сейчас я сделал так:
АЦП цифрует 20 раз за период (таймер 1khz = 1ms).
В обработчике прерывания написал:
// Миллисекунды
ms++;
// Проверка перехода через 0 (- -> +)
if (adcU>3)
{ // Положительная полуволна
if (isUNegative==1)
{ // Была отрицательная - переход
pulses++;
isUNegative = 0;
} // if
} // if
else // отрицательная полуволна
isUNegative = 1;
adcU - код со входа ADC1 за вычетом смещения ср. точки ADC0.
isUNegative - просто флаг, отслеживает переход синусоиды через 0.
pulses - кол-во переходов синусоиды вверх через 0.
Цикл измерений длится 0.5 сек (10 периодов).
Потом идёт обсчёт, в т.ч. и частоты:
// Частота
frequency = pulses*1000.0;
frequency/=ms;
frequency - частота в Гц, float.
pulses и ms считают постоянно, никогда не обнуляясь.
Проблема в том, что частота в итоге "плавает" где-то в интервале 49-51 Гц, хотя частотомер из осциллографа-мультиметра UT-81B показывает ровно 50 Гц. Да и сам я понимаю, что реально частота не может так гулять, она жёстко контролируется.
Читал соседнюю тему про частоту, например, эту - http://electronix.ru/forum/index.php?showt...=29796&st=0 , но у меня порт В, где все входы таймеров T0, T1 занят, там ШД дисплея HD44780

Отвлёкся я ...
PC6, PC7 свободны, но я не знаю, может ли TC2 считать внешние импульсы или он только под кварц часовой заточен ...
Можно, конечно, налепить внешний компаратор, счётчик, но это усложние схемы, доп. корпуса и пр....
Да и делает тот компаратор то же самое, что и мой программный счётчик...
Спасибо.
PS
Админам:
Кнопка CODEBOX не фурычит, валится ошибка -
Сообщение: Недопустимый аргумент.
Строка: 1225
Символ: 3
Код: 0
URI-код: http://electronix.ru/forum/jscripts/ips_text_editor.js
Смайлики вставляются нормально.
Браузер - IE8 со всеми обновлениями.
Винда - 2003 SP2 сервер лицензионный. Обновляется регулярно.
Оперу и пр. альтернативы не предлагать, у нас на работе запрещено
