PDA

Просмотр полной версии : Частотомер на МК



Страницы : [1] 2

RX3QRD
12.09.2017, 15:20
С появлением микроконтроллеров схемотехника многих конструкций существенно поменялась. Коснулось это и частотомеров.
Но есть сомнение относительно точности измерения. Частотомеры прямого отсчета, собранные на счетчиках, измеряют частоту непосредственно и погрешность минимальна и больше связана с температурным дрейфом опорного кварцевого генератора, устанавливающего время счета.
В программах МК применяются два аппаратных таймера, которые переполняясь, инкреминируют переменные (время счета и число импульсов частоты на входе). Но при переполнении таймеров срабатывают прерывания и управление переходит подпрограмме обработки прерывания. Если это происходит в тот момент,когда переполняется счетчик таймера частоты, МК попросту пропускает это событие и теряет некоторое количество импульсов. Точность измерения падает.
В то же время, процессор меньше шумит в эфир, что делает его применение в связной аппаратуре более приемлемым.
Если мои выводы неверны,прошу разъяснить мне в чем мои заблуждения и помочь с уточнениями алгоритма.

UN7GCE
12.09.2017, 16:00
Но при переполнении таймеров срабатывают прерывания...При переполнении ставится флаг переполнения, а обрабатывать его, или нет это на совести программера.

rx3apf
12.09.2017, 16:45
И первый (наверное) вариант (AN592 от Microchip) базировался на PIC16C54, с одним таймером, и все чисто программно. Достаточно просто точно посчитать по тактам, и никаких проблем вообще нет, в принципе. Все будет в точности так же, как на жесткой логике, только на порядки проще схемотехнически.

RX3QRD
12.09.2017, 16:58
а обрабатывать его, или нет это на совести программера
если программа должна считать,она будет считать. И пропуск флага=неточный подсчет. А если частота высокая, то пропусков будет много и ошибка растет

rx3apf
12.09.2017, 17:01
Так про то и речь - обрабатывайте корректно, и все будет нормально. Таймер ведь при переполнении продолжает считать, достаточно в течении интервала переполнения отследить и обработать состояние. И так до конца окна счета.

И насколько бы высокой не была входная частота, на входе таймера 0 (обычно используемого в таких частотомерах, по причине наличия асинхронного прескалера) она не может превышать тактовой (в принципе). Т.е. для обработки ситуации переполнения есть 256 командных циклов (а хватило бы и на порядок меньше).

UN7GCE
12.09.2017, 17:16
если программа должна считать,она будет считать. И пропуск флага=неточный подсчет.Причём тут пропуск флага? Как это организуется в 628 ПИКе? Организуется кольцо счета, допустим на 100 mSec (к примеру). При в ходе в кольцо происходит запуск счета двух байтного таймера Timer1. По флагу переполнения происходит наращивание счетчика до 3, 4 или 10 байт (цифры беру к примеру). При выходе из кольца таймер останавливается. И никаких прерываний. Дальше обычная работа с байтами.

RX3QRD
12.09.2017, 17:49
Таймер ведь при переполнении продолжает считать, достаточно в течении интервала переполнения отследить и обработать состояние
Понял. Флаг выставляется, таймер обнуляется и начинает цикл счета снова. Моя задача сбросить флаг и быстро посчитать.
Следующий вопрос: в предделителе установлен коэфф. к примеру 256. И время счета вышло. Как узнать, сколько там "застряло"?

rx3apf
12.09.2017, 18:05
А для этого блокируют вход и досчитывают прескалер принудительно. В первоначальной реализации (AN592) для этого выделялась отдельная портовая нога, но гораздо проще и правильнее манипулировать битом полярности счета в байте опций. И тогда не требуется дополнительных ног. Если же прескалер внешний (или имеет дополнительные внешние каскады, например, триггеры 74 современных серий могут обработать и 300..400 MHz), придется выделить дополнительные линии, для разрешения окна счета и досчета. Итого три линии, включая вход таймера.

RX3QRD
12.09.2017, 18:11
гораздо проще и правильнее манипулировать битом полярности счета в байте опций
расскажите поподробнее, пожалуйста.

rx3apf
12.09.2017, 18:21
А что подробнее ? Фронт счета (положительный или отрицательный) выбирается состоянием бита T0SE в регистре OPTION_REG. Запретив изменение состояние на входе таймера (переведя на выход), досчитывать прескалер можно как манипуляцией состоянием этой линии, так и битом T0SE. Повторяем переключение до тех пор, пока состояние TMR0 не изменится. Ну, есть тонкости с моментом изменения состояния (опрос регистра TMR0 надо на такт или два задержать, не помню уж).

UN7GCE
12.09.2017, 18:35
А для этого блокируют вход и досчитывают прескалер принудительно.Подобн ая методика применялась в устаревших 84 ПИКах. В них не было команд управления первым таймером. Поэтому приходилсь колдовать с ногами и до счетами. В 628 ПИКе появилась команда
bsf T1CON,TMR1ON ;вкл счетчик и
bcf T1CON,TMR1ON ;выкл счетчик
Поэтому измеряемую частоту подают всегда на порт RB6 и не морочим себе голову с до счетами.
Утверждения, что пределитель и таймер1 имеют разные скорости счета неверны. Сделаны они на одной подложке и имеют одинаковую структуру.

rx3apf
12.09.2017, 19:32
Скорострельность таймера 1 я не проверял, поэтому что-то определенное утверждать не могу. Да, он вроде бы может работать совершенно асинхронно и, если схемотехнически реализация подобна таймеру 0, то и частота должна бы быть такого же порядка. Хотя, если судить по цифрам из даташита, там (TMR1 vs TMR0) ограничения существенно жестче. На 628 я делал частотомер с взаимным счетом, и там таймер 1 никак нельзя было отдать под измерительный вход, он там работал на счете опорника, а таймер 0 - традиционно на измерительном, плюс еще половинка 74 для повышения верхней границы (180 MHz работало).

alexis
12.09.2017, 20:04
Так всё же, в итоге что оптимальнее?

RX3QRD
12.09.2017, 20:21
UN7GCE, Ну, заблокировать вход я могу, соединив с другой ногой порта и выставив на ней 0. Но вот не понял: для чего включается и выключается модуль? Это что дает?

rx3apf
12.09.2017, 20:36
Зачем соединять с другой ногой, если входную ногу ровно с тем же эффектом сделать выходом ?

А включать-выключать - имелось в виду запускать и останавливать таймер TMR1, если его использовать для счета входных импульсов (тогда не требуется менять режим входной линии или использование внешней логики).

RX3QRD
12.09.2017, 20:48
А включать-выключать - имелось в виду запускать и останавливать таймер TMR1
Я про запуск понял. НО не понимаю какого эффекта мы этим достигаем. Как это приводит к переполнению таймера и выставлению флага, если импульсы на входе отсутствуют?

rx3apf
12.09.2017, 20:51
Никак. Речь шла о управлении окном счета. Обработка переполнения - это уже другая часть задачи. Все то же самое - флаг выставляется при переполнении в процессе счета, его надо обрабатывать для расширения разрядности счетчика.

RX3QRD
12.09.2017, 20:57
rx3apf, я спрашивал именно про тот момент, когда окно счета захлопнулось и в предделителе застряло сколько-то импульсов. Их надо посчитать, иначе точность пострадает.

rx3apf
12.09.2017, 21:04
Для таймера 1 это не требуется, если не используется прескалер. Если же используется (там максимум на 8) - тем же способом, что и для таймера 0, как я уже подробно объяснил выше.

RX3QRD
12.09.2017, 23:19
И насколько бы высокой не была входная частота, на входе таймера 0 (обычно используемого в таких частотомерах, по причине наличия асинхронного прескалера) она не может превышать тактовой (в принципе).
к примеру, измеряем частоту 40МГц. При предделителе 256 получаем 156250 срабатываний в секунду. Придется кварц 10-20МГц ставить.

Запретив изменение состояние на входе таймера (переведя на выход), досчитывать прескалер можно как манипуляцией состоянием этой линии, так и битом T0SE. Повторяем переключение до тех пор, пока состояние TMR0 не изменится
как меняя бит TOSE получается досчитать что в прескалере?... Он же всего-лишь определяет фронт внешнего тактового сигнала.

Владимир_К
12.09.2017, 23:39
Вот конструкция известного автора. Есть исходник, просмотрев который все станет ясно, как досчитывается прескалер и пр. и, все вопросы отпадут.
http://msevm.com/2012/freq/index.htm
А если что не ясно будет, тогда можно уточнить. А начинать на форуме с вопроса как извлечь цифру из прескалера.... то это до второго пришествия..

rx3apf
12.09.2017, 23:45
1. 156 kHz - это совсем немного, и много меньше тактовой при практически произвольном выборе оной (аппаратное ограничение - частота на выходе прескалера должна быть меньше тактовой, поделенной на 4, т.е. даже при тактовой 1 MHz никаких проблем не будет) . Переполнения же будут происходить еще в 256 раз реже (чуть чаще 600 Hz). Ну и в чем же проблема ?

2. Да, бит T0SE определяет активный фронт. Ну так и изменение состояния T0SE аналогично изменению состояния входа T0CKI согласно функциональной схеме модуля TMR0. Соответственно, манипуляцией хоть этим битом, хоть состоянием входной ноги, можно получить произвольное количество импульсов на входе прескалера. Неужели и дальше надо объяснять ?

RX3QRD
13.09.2017, 00:05
Ну так и изменение состояния T0SE аналогично изменению состояния входа T0CKI
О как... Переключая этот бит в незамкнутом цикле с 0 на 1 и обратно мы получаем тот же эффект, что и подача импульса на ногу МК?.....Ну тогда все понятно.

Переполнения же будут происходить еще в 256 раз реже
Точно! Забыл, что надо учитывать 256 в самом таймере и еще делитель 256. Итого получаем 65536.

RX3QRD
13.09.2017, 20:27
Может, кому-то будет интересно продвижение проекта... А профессионалов прошу не истерить по поводу примитивизма. Мы все начинаем с малого, не так ли? :smile:
Итак, я решил, что проще будет, если число, соответствующее измеряемой частоте, будет изначально разбито на разряды:единицы,деся тки,сотни. В проекте всего 8 разрядов, но горячие головы могут и "увеличиться". Это позволит напрямую выводить числа на индикаторы. Единицы-на свой,десятки- на свой и т.д.
Но для этого надо и соответствующим образом считать. Но и алгоритм должен быть как можно короче. Вот мой вариант (тестировал в Дельфи):
for i:=1 to 8 do
begin
Cx[i,1]:=Cx[i,1]+Cx[i,2];
if Cx[i,1]>9 then
begin
Cx[i+1,1]:=Cx[i+1,1]+1;
Cx[i,1]:=Cx[i,1]-10;
end;
end;

где
Сх(i,j) - это массив чисел
i - это разряды
j - (1,2) это сами числа: 1 - число, которое считается, 2 - число, на которое идет увеличение. Оно может быть любым. Этот кусок можно оформить как процедуру и применять в любом вашем проекте. В том числе тогда, когда надо учесть промежуточную частоту, если частотомер используется как ЦШ. Только надо написать аналогичную процедуру вычитания.
Ведь чем короче и быстрее счет, тем меньшее число можно закладывать в предделитель (или вообще от него отказаться!).
Предупреждение: массив должен резервировать на один разряд больше, чем используете в программе. В данном примере это Сх(9,2)

rx3apf
13.09.2017, 20:35
Не понимаю, к чему столь изощренные извращения ? Все делается просто до примитивизма - счет и вычисление в многоразрядной двоичной арифметике, результат преобразовывается в упакованный BCD, затем выводится на индикатор (с подавлением незначащих нулей и установки десятичной точки в нужную позицию). Не надо изобретать велосипед с треугольными колесами...

RX3QRD
13.09.2017, 21:28
Я с описанной вами технологией не знаком, поэтому иду своим путем. Кстати, мой не хуже. Это те же Фаберже, только чуть иначе. Он уже преобразован. Его только останется перевести в семисегментный код.

Добавлено через 33 минут(ы):

Вот кусок программы, обеспечивающий вычитание
for i:=1 to 8 do
begin
if Cx[i,1]<Cx[i,2] then
begin
Cx[i,1]:=Cx[i,1]+10;
j:=i+1;
x:
if Cx[j,1]=0 then
begin
Cx[j,1]:=9;
Inc(j);
goto x;
end
else
begin
Cx[j,1]:=Cx[j,1]-1;
end;
end;
Cx[i,1]:=Cx[i,1]-Cx[i,2];
end;

RX3QRD
14.09.2017, 00:34
В сети лежат разные варианты частотомеров на 628 ПИКе: либо заводится входной сигнал на RA4,либо на RB6.
Так все-же, куда рекомендуете? Логика подсказывает, что счетчик с бОльшим числом разрядом (а это вход RB6 и там 16 бит) рассчитан на более высокую входную частоту...

UN7GCE
14.09.2017, 06:06
В сети лежат разные варианты частотомеров на 628 ПИКе: либо заводится входной сигнал на RA4, либо на RB6.Выше я уже писал, что в 84 ПИКе нет команд управления 0 таймером. А 1 таймера там нет. Поэтому и изобретен гемор с пределителем и до счетом.
Если используется серии ПИКов выше чем, 84, то счет можно делать непосредственно подавая исследуемую частоту на ногу RB6, где может быть задействован 1 таймер. При этом начало счета и останов производится программно. Поскольку 1 таймер двух байтный, это TMR1H и TMR1L, то в него можно записать максимум число FF FF. Что в переводе даёт число 65535. Поэтому производят его наращивание, до 3- 4- 5… и т.д. байт. Наращивание до 3 байта проводят через флаг переполнения таймера TMR1. Флаг называется TMR1IF и сидит он в регистре прерываний 1 таймера PIR1.
Т.е. поднялся флаг TMR1IF, добавили единицу в третий регистр счетчика, сбросили флаг, счет продолжается. Опять поднялся флаг – процедура повторяется. И так можно забить в три байта уже число FF FF FF или 16777215 в десятичном формате. Если мало, то добавляем единицу в четвертый регистр через признак переполнения третьего регистра в регистре STATUS,C (флаг С) и так хоть до 10 регистров. Счёт закончился, остановили 1 таймер. Считываем число из TMR1H, TMR1L, + из регистра что добавили. И нет никаких до счётов и дёргания ног.

Tadas
14.09.2017, 08:41
UN7GCE,

... то счет можно делать непосредственно подавая исследуемую частоту на ногу RB6, где может быть задействован 1 таймер.

А какая макс. частота счёта по этому входу ?

alexis
14.09.2017, 08:50
Выше я уже писал, что в 84 ПИКе нет команд управления 0 таймером. А 1 таймера там нет. Поэтому и изобретен гемор с пределителем и до счетом.
Да, но зато вход предделителя в 84 ПИКе более высокочастотный и работает без доп.делителя до 90 МГц.

UN7GCE
14.09.2017, 08:53
А какая макс. частота счёта по этому входу ?50 МГц гарантировано. У меня считало и до 60 МГц.

Tadas
14.09.2017, 09:11
50 МГц гарантировано.
Это без прескалера ?

RX3QRD
14.09.2017, 09:33
Tadas, я тут ответ нашел на этот вопрос http://ra4nal.qrz.ru/chlcd16.shtml
вход, на который подается исследуемая частота, держит 90МГц.

Tadas
14.09.2017, 10:08
Tadas, я тут ответ нашел на этот вопрос
Спасибо, но в этой конструкции используется старинный принцип с Т0 и прескалером.
Я же спрашивал про использование Т1.
50 - 60 МГц как-то не стыкуется с данными T1 PIC16F628.
Там минимальный период входного сигнала в ассинхронном режиме 60 нс, что соответствует макс. частоте 16.66(6) МГц.
В синхронном режиме минимальный период определяется как большее из чисел 20 нс и (Тсу+40)/N нс.
При частоте кварца 20 МГц Тсу равно 200 нс. Если не использовать прескалер (N=1), то минимальный период будет 240 нс, что соответствует мак. частоте 4.16(6) МГц. При N=8 соответственно получится 33.3(3) МГц, но тогда придётся делать досчёт прескалера.
Вот и стало интересно, как в Т1 получается частота счёта 50 - 60 МГц.

rx3apf
14.09.2017, 10:22
В той версии даташита, что у меня под рукой, применительно к времянкам таймера 1 написано "* These parameters are characterized but not tested.". Так что вполне может быть много лучше, чем регламентировано (для TMR0 результаты ~вдвое лучше, чем обещано, 90 MHz получается вполне стабильно). Разумеется, речь о асинхронном режиме, поскольку в синхронном есть аппаратные ограничения, связанные с схемой синхронизации, и их не обойти.

Досчет TMR0 никаких сложностей не представляет (десяток команд максимум), однако же использование для этих целей TMR1 может быть удобно тем, что в дополнение к режиму частотомера можно иметь и простой счетчик импульсов (в смысле, просто считать и выводить на экран, за неограниченный промежуток времени) с высокой верхней границей, что с TMR0 уже невозможно реализовать.

Если нужно больше 100 MHz, то уже по-любому нужен внешний каскад, пару битов можно вытянуть и с корпуса 74, но потребуется все равно вход, внешнее разрешение, и пара входных битов на считывание результата (возможно, разделяемых с индикатором или еще как).

Tadas
14.09.2017, 10:35
Так что вполне может быть много лучше
Да, возможно так и есть. Для Т1 тогда получается лучше чем в три раза.
Но фирма гарантий не даёт :-P

UN7GCE
14.09.2017, 11:44
Это без прескалера ?Разумеется без.


...использование для этих целей TMR1 может быть удобно тем, что в дополнение к режиму частотомера можно иметь и простой счетчик импульсов...Я вырвал эту цитату, потому что именно так, - освобождается TMR0.
Тема вообще то не о граничных частотах счета, а о структуре частотомера на МК, как это заявил ТС. Присобачить внешний прескалер (типа 193ИЕ3) на вход TMR1 не составит труда. Но речь не об этом. И на снимке пример счёта по входу RB6.

Tadas
14.09.2017, 12:04
Тема вообще то не о граничных частотах счета, а о структуре частотомера на МК
Ну почему, граничная частота тоже важно. Преимущество Т1 только в том, что хватает одного вывода.
С другой стороны - как утверждают, на прескалере Т0 граничная частота к 100 МГц приближается. За двойное увеличение диапазона и выводом пожертвовать не жалко :-P
Мои рабочие лошадки это AVR и STM32, на PIC выше 84 ничего не делал, вот и возникают вопросы.

UN7GCE
14.09.2017, 12:53
Тут ситуация чем то начинает напоминать мне 155 серию. Гарантировано 10 МГц, а считало двое выше, встречал, что и 30 МГц считало, но ни разу этого не видел.

...как утверждают, на прескалере Т0 граничная частота к 100 МГц приближается...Что то сомнительно, что это было так. Сам я всего дважды повторял чужой счетчик со счётом с RA4 (84 и 628 ПИКи). И 90 МГц и близко не видел. А насчёт второй ножки, что то я припоминаю, что можно обойтись и одной RA4. Но записей у меня не осталось и сейчас я не помню, что там сочинил. Но по-моему это решаемо.

RX3QRD
14.09.2017, 13:31
что то я припоминаю, что можно обойтись и одной RA4. Но записей у меня не осталось и сейчас я не помню, что там сочинил. Но по-моему это решаемо.
если найдете записи, прошу их тут опубликовать...

rx3apf
14.09.2017, 14:21
И 90 МГц и близко не видел.

А я - видел (F628). 180 MHz на входе половинки AC74, ее выход на T0. Вполне нормально работало. Очень даже может быть, что работало бы и выше - была проблема с источником сигнала, а больше к этой теме не возвращался.


А насчёт второй ножки, что то я припоминаю, что можно обойтись и одной RA4.
Я несколькими постами выше расписал, разжевал и в рот положил, как это делается, двумя разными способами.

Tadas
14.09.2017, 14:21
Что то сомнительно, что это было так.
По ссылке из поста №33 так утверждается.
Но так как такие частоты далеко выходят за гарантированные пределы, то возможно встречаются экземпляры с которыми это прокатывает. Но это уже не наука, а статистика :-P

alexis
14.09.2017, 15:01
И 90 МГц и близко не видел.
Мой частотомер устойчиво фиксирует значения частоты 88-90 МГц без проблем, при подаче сигнала достаточной большой амплитуды с выхода FM передатчика, но без формирователя импульсов, а прямо на счётные ноги 84 ПИКа (через малую емкость порядка 10 пф).
За это мне PIC16F84A и нравится, не снижается разрешающая способность в нужном диапазоне частот. :-P
Но вот незадача, что эта же самая частота ни в какую не меряется через различные собранные формирователи. Парадокс однако и разрешить его пока не могу...

UR5ZQV
14.09.2017, 15:13
Эти "штуки", в простонародье именуются "ЦШ Макеевская". По моему штампуются от Казахстана, до Чукотки, причем "дешево и сердито". Последние экземляры, которые применял (Казахские) с формирователями на "тупейших" КТ315, входной мультиплексор Отечественный, но МК АВРовский, с гарантией до 70МГц (правда я выше 30М не проверял, нужды не было).

rx3apf
14.09.2017, 17:28
Что такое "МК АВРовский", позвольте поинтересоваться ?

RX3QRD
14.09.2017, 20:45
AVR наверное имелся в виду.

rx3apf
14.09.2017, 22:05
Максимальная частота тактирования таймеров внешним сигналом у AVR составляет половину от тактовой, т.е. в лучшем случае 10 MHz. Значит - внешний прескалер, без вариантов.

DARKSTAR
15.09.2017, 06:29
Да, пробовал делать ЦШ на ATMEGA8 (http://24dx.ru/forum/viewtopic.php?f=18&t=2400) (16 МГц).
Без внешних предделителей держала до 7,5 МГц, потом резко начинала врать.
Но поскольку радиостанция была на 80 м, то вполне годилась:

270800

rx3apf
15.09.2017, 11:53
При использовании AVR есть варианты:

Внешний делитель - современные 74LVC74 позволяют добраться до 300 MHz и выше, причем без родовых болячек ECL-прескалеров (генерация при отсутствии сигнала), с досчетом или прямым считыванием состояния. Используя триггеры и/или счетчики 74AC - 120...150 MHz без каких-либо сложностей, гарантированно (выше 100 MHz могут быть сложности с входным формирователем, но общедоступная логика добралась до 300...400 MHz).

Другой вариант - можно (и нужно !) переходить к взаимному счету ("reciprocal"), все ресурсы для этого есть, хотя минимум внешней логики (половинка 74 и один элемент "И") потребуется.

Можно совмещать оба метода (которые, с некоторыми нюансами, вполне применимы и к PIC16/PIC18), можно добавить интерполятор, а можно просто повторить простую и очень красивую конструкцию от Леонида Ивановича.

UR5ZQV
15.09.2017, 14:13
Вот щас только рассмотрел, прескалер действительно есть (но Отечественный, имею в виду СССР :) ).
270827

AMBER
15.09.2017, 15:20
rx3apf, а есть готовый РАБОТАЮЩИЙ проект на ПИКе (хотя бы схема и прошивка МК) с взаимным счётом?
Не считая частотометра от ЛИ. А то в сети чёто не натыкался (правда,очень уж тщательно не искал),одни прожекты
и рассказы,какой это зашибись метод.

rx3apf
15.09.2017, 19:03
Проект есть (давно, 2003 год), но я его не публиковал (он был недоделан по входному формирователю, а потом как-то стало не до этого, да и потребности не было). Там все просто - сигнал открытия окна подается на половинку 74, тактируемую входным сигналом. И от этого сигнала разрешается счет входных импульсов на TMR0 и опорных на TMR1. Дальше простая многоразрядная математика.

Была идея сделать и на AVR, но из-за отсутствия потребности не стал заниматься.

AMBER
15.09.2017, 19:32
Ну,всё понятно.Значит проектов нет,одни разговоры.:cry:
Зато море проектов с традиционным принципом и схемотехникой.
Наверное,неспроста.

RX3QRD
15.09.2017, 19:32
rx3apf, схемкой формирователя не поделитесь?...

rx3apf
15.09.2017, 19:52
Вот как раз на схеме формирователя я тогда и застрял. А потом уже как-то не было надобности (можно было просто взять схему от частотомера ЛИ, руки не дошли).

Добавлено через 7 минут(ы):


Наверное,неспроста.

Очевидно, по причине отсутствия потребности. Мой LCF-метр, собранный фактически макетом без корпуса, прекрасно работает и по сей день, но в основном используется для LC, и то изредка. Частотомер-измеритель периода - подтвердил правильность заложенного принципа, хорошую точность и стабильность. Оставаясь при этом неполноценным полуфабрикатом только с логическим входом.

А заниматься "окультуриванием" - просто некогда (в первую очередь по причине опять же отсутствия потребности), тем более приводить в сносный для публикации вид. Даже желающих повторить полноценную конструкцию от ЛИ тоже не так уж и много.

А "море" - это просто копируют одну и ту же идею, даже без понимания того, как оно работает. Ну, если устраивает результат - тем более нет необходимости заниматься чем-то оригинальным.

alexis
15.09.2017, 20:40
Там все просто - сигнал открытия окна подается на половинку 74, тактируемую входным сигналом. И от этого сигнала разрешается счет входных импульсов на TMR0 и опорных на TMR1.
А разве не так было реализовано в частотомере FC250 ?
http://www.5v.ru/fc250.htm

AMBER
15.09.2017, 20:59
Частотометр от ЛИ - относительно сложная конструкция,многие боятся связываться с ПЛИС.По разным причинам.
А вот повторить на паре микросхем в дипе конструкцию,отличную от многих других,я думаю,нашлись бы желающие.
И относительно приведения в сносный для публикации вид - схему нарисовать и прошивку выложить мне кажется
не сильно сложно.А плату на 2-3-х ДИП-ах развести совсем просто.Вы про этот свой частотометр рассказываете в разных
темах уже несколько лет,и никто его не видел.Хотя Вас просили выложить информацию о нём неоднократно.
Не,я понимаю,что Вы никому ничем не обязаны,но зачем тогда рассказывать о нём постоянно.

rx3apf
15.09.2017, 21:29
Я рассказываю вовсе не про конструкцию (да, поскольку она в одном экземпляре у меня на столе, ее как бы и нет), а про саму идею. Чтобы хоть кто-то не повторял готовое, разжеванное вдоль и поперек, а приложил минимум усилий и САМ реализовал. Поскольку метод проверенный "живьем" (в области низких частот этот же по сути метод у меня применяется этак в десятке разных разработок, где требуется измерение периода и частоты).

Желающих до сих пор, кстати, не находилось (за несколькими исключениями, приватным же порядком и отдал схему и прошивку, но о результатах не услышал).

Ну, если очень хочется увидеть схему - мне не жалко. Прошивку - пишите на mail.ru.

RX3QRD
15.09.2017, 21:33
Вот каким путем иду я.
Этот формирователь я взял готовым. Нравится он мне.
270842
Но вместо 74АС14 решил применить идею, прозвучавшую чуть выше
270843
Ну и что, что 3 ноги задействовано?Ну и что, что я не применяю возможность досчета битом T0SE. Ну не хорошо, когда МС дает 4 элемента, из которых мы истользуем только 1. А тут и вкл/выкл счета (RA1) и досчет RA3.

iHam
15.09.2017, 22:09
Зачем такие страдания по поводу формирователя? Можно использовать AD8306/09 в качестве формирователя с большим динамическим диапазоном используя выход усилителя ограничителя. Вроде ещё в Радио кто то приводил схему не помню уже.

RX3QRD
15.09.2017, 22:21
Можно использовать AD8306/09
Можно. Но ценик более чем негуманный. 2-2,5 килорубля.Ох-ох....

iHam
15.09.2017, 22:33
Вы хотите создать современный точный прибор и кусаетесь на цену микросхемы. Но разработка формирователя на рассыпухе обойдётся дороже если не по деталям, то по времени.

AMBER
15.09.2017, 22:39
AD8306/09 от 5 МГц по ДШ,ниже не работают.Вернее, работают примерно от 1-1,5 МГц,но уже с сильно пониженной чувствительностью.
Ниже 1 МГц совсем ничего не пропускают.Так что,если надо замерить,к примеру,455 или 500 кГц - с ними ничего не выйдет.

iHam
15.09.2017, 22:48
Есть другой вариант, как сделано в портативном частотомере Roger. Они в качестве формирователя используют усилитель типа ERA. Вроде 2 каскада. Полоса до 3Ггц. Усиление до 30-40 дБ. Вход 50 Ом. Как сделать вход 1МОм? наверное ОУ подойдёт до 10 МГц.

RX3QRD
15.09.2017, 23:00
указанный мной вариант может и не тянет на гигагерцы, но в диапазоне до сотки работает.И стоит копейки.Какой мне смысл рвать свой кошелек? Да еще, если нижний предел не устраивает...

AMBER
15.09.2017, 23:04
Этот Roger предназначен,в основном для бесконтактного замера частоты у портативных "болтушек". А что будет,если на вход
такого 40 дб-ельного усилителя подать,к примеру вольт? Я пробовал.Хреновоему было. А нормальный формирователь такое запросто
должен переваривать.К тому же вход 50 ом (заявлено,как там в реале - фз).

iHam
15.09.2017, 23:05
До сотки подойдёт Быстродействующий ОУ например всеми любимый АD8009. C коэфф. усиления 10.
Аmber вы большие сигналы подавайте через аттенюатор. А то сдуру и хрен сломать можно. Кстати все эти ЕРА не сгорят при больших уровнях. Просто ограничит. Создание формирователя от нуля до 100 МГц с входным импедансом 1 МОм серьёзная проблема для импортозамещения.

AMBER
15.09.2017, 23:31
Аттенюатор? Зачем? Мой Ч3-63 переваривает без всяких аттенюаторов от 20-30 мв до 2-3 вольт.
А при включении внутреннего делителя 1:10 - до 30 вольт эфф.
И кстати,всякие МАРы и ЕРы при перегрузке не всегда просто ограничивают сигнал,часто искажают его до неузнаваемости.
И горят тоже запросто.Я ж говорю - пробовал.
ПС. А то,что формирователь до 100 МГц - серьёзная проблема - знаю не понаслышке, прочувствовал на собственной шкуре.

iHam
15.09.2017, 23:54
Видимо нет необходимости делать формирователь до 100 и более МГц с входным сопротивлением 1 Мгом.
На практике с таким сопротивлением можно сделать до 10 МГц. Все что выше уже с 50 Ом. На высоких частотах эти импедансы неактуальны. Для удобства, если позволяет чувствительность прибора проще использовать осциллографический пробник.

AMBER
16.09.2017, 00:18
Та да,можно по всякому,насколько хватит фантазии.Но,в незабываемом Ч3-63 канал А имеет 1 Мом и полосу (у меня) 5Гц - 295 МГц.
Правда,можно включить внутреннюю нагрузку 50 ом на входе. И я не знаю,что не дает ему считать выше - делитель 570ТМ1 или
формирователь,т.к. чувствительность на самом верху довольно заметно падает.

alexis
16.09.2017, 07:12
указанный мной вариант может и не тянет на гигагерцы, но в диапазоне до сотки работает.И стоит копейки.
Выложьте ваш вариант формирователя. Те ссылки на вложения не рабочие. У меня вопрос стоит давно сделать чувствительный формирователь с диапазоном хотя бы от 0 до 100 МГц. Желательно с вариантом бесконтактного, выскокоомного щупа, чтобы при поднесении к нагрузке сразу индицировал номинал частоты. Накрайняк можно и 50-мный. Чем хорош выскоомный бесконтактный, так это независимость от уровня измеряемого ВЧ напряжения. Можно и 1 ватт выхода ПРД промерить, а можно и 1 кВт без риска спалить вход.
Всё что пробовал либо не работает вовсе, либо показывает неустойчиво, либо какую-то билиберду.
Неужто неразрешимая проблема?

iHam
16.09.2017, 12:05
Я делал прескалер на LMX2330. Работает по входу RF от 50 МГц до 3ГГц. Максимальная чувствительность -30дБм в районе 1000 МГц. По входу опорника работает от 0,1 до 60 МГц. Самый простой и дешёвый вариант.

cuneum
16.09.2017, 14:52
Но,в незабываемом Ч3-63 канал А имеет 1 Мом и полосу

Не забываем, что 1 МОм у него на постоянном токе, а на ВЧ всё зависит от уровня сигнала (выше или ниже ограничения) и входной ёмкости прибора. Так что, на 295 МГц, входное будет измеряться сотнями Ом.

AMBER
16.09.2017, 15:58
А никто в здравом уме не будет измерять ВЧ выше 30 - 50 МГц 1 Мегомным входом напрямую через кабель.Для этого там
подключается переключателем резистор 50 ом паралельно входу. 1 Мом-ный вход нужен для подключения стандартных малоёмкостных
щупов-делителей 1:10 или 1:100,лучшие образцы которых имеют полосу до 500-600 МГц.

iHam
16.09.2017, 19:24
В здравом уме входной импеданс 1 МОм никому не нужен. Разве только для звуковых частот.

RX3QRD
16.09.2017, 22:39
Те ссылки на вложения не рабочие.
попробуем...
270891
270890

AMBER
17.09.2017, 00:44
iHam, зря вы так считаете, у меня 10 Мом делитель 1:10 от древнего осциллографа Филипс, 350 МГц на нём написано,
9 пф входная ёмкость.Подключаю к 1 мегомному входу частотометра.Очень часто пригождается,и чаще всего НЕ на НЧ.
Проверял его с помощью генератора (естественно нагруженного), прибор частоту измеряет во всём диапазоне,хотя чувствительность
с делителем более резко падает после примерно 180 МГц,чем,если напрямую кабелем,при включении в частотометре режима - 50 ом вход.
Делитель этот приобрёл ещё в середине 90-х случайно, у нас на радиорынке. До сих пор прекрасно работает.

FAKIR
04.10.2017, 16:22
Тема формирователя - вообще ни о чем...
Ни широкая полоса ни высокая чувствительность - проблемой не являются!
На современной элементной базе делается на раз-два - самый простой узел частотомера!


Я рассказываю вовсе не про конструкцию (да, поскольку она в одном экземпляре у меня на столе, ее как бы и нет), а про саму идею.
Вот здесь было-бы интересней ознакомиться - если нарисуете структурную схему и представите алгоритм проектирования!

AMBER
05.10.2017, 18:59
Ну-ка,ну-ка, как это делается на раз-два? Покажите нам всем!!!
А то мы тут все совсем извелись,вон тема соседняя про формирователь,аж на 35 страниц:-(. А толку немного.
А разработчики профессиональных приборов наверное совсем тупые,у них ведь входные формирователи
пол частотометра занимают. А то и больше. И не подозревают они,что это делается на раз-два.
Да и современной элементной базы у них нет,видимо...Откуда. ..

FAKIR
07.10.2017, 12:29
А разработчики профессиональных приборов наверное совсем тупые,у них ведь входные формирователи
пол частотометра занимают. А то и больше.

Где это вы такое видели?
Может в старье? Да и то такого не припомню!
В профессиональных приборах обязательно делают открытый вход - отсюда и необходимость усложнения схем - для стабилизации
рабочей точки, в любительских все делается через разделительные конденсаторы - такой необходимости нет!

Думаю что большинство радиолюбителей - легко справляются с созданием формирователя!

А у васAMBERкакие трудности вызвал входной формирователь?
Может разводку неудачно сделали?

Сделать формирователь - проще чем сделать УНЧ!

Мне было бы интересней ознакомиться с алгоритмом проектирования частотомера на МК!

alexis
07.10.2017, 15:26
Думаю что большинство радиолюбителей - легко справляются с созданием формирователя!
выложьте схему достойную повторения, на доступных элементах и не громоздкую, с хорошей чувствительностью и верхней границей мегагерц в 100. желательно высокоомную с бесконтактным измерением.

FAKIR
07.10.2017, 16:46
выложьте схему достойную повторения

Вам следует для начала разобраться в тех схемах которые вы собирали - иначе вам бесполезно собирать что-то новое!
Будет замкнутый круг!

F304
07.10.2017, 16:51
Да отстаньте вы от этого факира радиофекала. Нет у него ни каких схем и быть не может.

FAKIR
07.10.2017, 17:53
Да отстаньте вы от этого факира....
Конечно!
Да делал-то я все это добро давно - остался только 1 готовый усилитель - делал только по основам профессиональных схем, и как обычно сделал - добился хорошего результата и оставил в покое...
Интерес удовлетворил - в прибор встроил и все...
Думаете охота восстанавливать схему по печатной плате?
Да и здесь - схем хватает! Вызывает удивление что некоторые радиолюбители не могут осилить такую простую вещь!

Как-то хочется вернуться к основной теме кто-нибудь представит алгоритм проектирования Частотомера на МК со структурной схемой?

alexis
07.10.2017, 19:50
Вам следует для начала разобраться в тех схемах которые вы собирали - иначе вам бесполезно собирать что-то новое!
Будет замкнутый круг!
Разбираться, только время терять. Нормальная отработанная схема из 1-2 десятков элементов должна, нет, обязана работать с пол-пинка.
Конечно "кала" в сети достаточно, но факт остается фактом. Собирал несколько схем, ни одна толком на верхнем участке не работала, а одна вообще не захотела работать ни на каких частотах.

Думаете охота восстанавливать схему по печатной плате?
Да и здесь - схем хватает! Вызывает удивление что некоторые радиолюбители не могут осилить такую простую вещь!
Вот именно, странно, что имеем квалификацию, осиливаем более сложные и замысловатые схемы, а такую простоту не осиливаем. В чем подвох?

AMBER
07.10.2017, 21:58
Ну,как всегда. Одно бла-бла-бла.
Почему-то именно этого и ожидал.Даже не удивился.
Хотя мааахонькая надежда всёж была - вдруг мы сейчас истину познаем.

FAKIR
08.10.2017, 06:29
Разбираться, только время терять
Не согласен!
Я бы посоветовал вам для начала - выложить здесь свою схему и фото монтажа.

Хотя мааахонькая надежда всёж была - вдруг мы сейчас истину познаем.
А вы сами что не состоянии ее постичь?

alexis
08.10.2017, 19:04
Я бы посоветовал вам для начала - выложить здесь свою схему и фото монтажа.
Этих схем в инете полно, монтаж - объемный, навесной, как самый простой и доступный для нескольких элементов и для быстрой сборки.

Алексей М.
08.10.2017, 23:52
Здравствуйте ,случайно читая форум наткнулся на эту ветку и хотелось бы внести свои пять копеек в эту тему.
Рекомендую для повторения схему частотомера на однострочном жки от Хлюпина RA4NAL ,приводить схему не буду она легко ищется в интернете.
Чем мне приглянулась эта схема:
Во-первых возможностью выставить опорный сигнал (корректировать в широком диапазоне).
Во-вторых возможностью расширения диапазона измерения до ггц внешними щупами ,с выставлением коэффициента деления.
И в третьих минимальным количеством деталей.

Добавлено через 6 минут(ы):

Единственное желательно это иметь эталонный частотомер ,чтобы выставить опору .:crazy:
Ну а если есть возможность и желание поставить термостатированный кварц ,то вообще шикарно!!!!!:-P

alexis
09.10.2017, 07:24
Как в ней работает входной формирователь и были ли с ним проблемы?
схема здесь.
http://ra4nal.qrz.ru/chlcd16.shtml
однако автор пишет:

Если внутренний счетчик PIC16F84 работал до частот, не более 40...45 МГц, то в современном PIC16F628A он уверенно считает до 90...95 МГц.
Странно, по моему должно быть всё наоборот...

FAKIR
09.10.2017, 08:09
Этих схем в инете полно
А где ваша-то ? Как вам без нее помочь?

монтаж - объемный, навесной
С этого надо начинать - посмотреть корректно ли он у вас сделан!
И есть ли у вас экранировка?

UR5ZQV
09.10.2017, 09:18
alexis,
Как в ней работает входной формирователь и были ли с ним проблемы?
схема здесь.
Не знаю зачем так сделано? Может для повышенной чувствительности. У меня КМОП логика "заводиться" от пару сотен мВ эфф. синусоиды, если "подтянуть" вход до 1/2 питания. ТТЛ логика спокойно запускается простейшим формирователем на "тупом" КТ315 (в макеевских ЦШ до 70МГц).

Алексей М.
09.10.2017, 22:52
Как в ней работает входной формирователь и были ли с ним проблемы?
Повторюсь эта схема полностью удовлетворяет моим потребностям! По входному формирователю ничего плохого не скажу!
Единственное вместо кт368 были поставлены кт399 с ними верхняя граница измерения гораздо выше что-то вроде с десятку мегагерц.

AMBER
10.10.2017, 01:11
Делал когда-то частотометр Хлюпина,плата размером с индикатор,сделано этажеркой.Плату цапоном сам рисовал тогда.
На самом верху не проверял,но,ЕМНИП, мегагерц до 70 точно работал,выше тогда нечем было протестить. А так - нормально работал.
До конца (в корпусе)так и не довёл,в конце концов подарил эту плату юному дарованию - начинающему радиолюбителю.
По-моему,до сих пор у него работает.

ra9dm
10.10.2017, 06:15
ЦШ RA3RBE на алс318 . В конце 90-х сделал их штук 5-6..... Выше 40МГц генератора в то время у меня не было....Проблем со всеми шкалами не было никогда....
Потом делал делитель на 10 с кт399+к193ие3. С резинкой в гнезде видела в метре портативку 0.5Вт.....

FAKIR
21.10.2017, 14:36
Вот ребята - схема от уважаемого RU3AEP - самая подходящая для вас!
Лучше использовать СМД компоненты:
- вместо Q3,Q4 применить BFT92.
- вместо Q5,Q6,Q7,Q8,Q1,Q2,Q1 0,Q11 применить - BFR93A.
Контакты Реле K1,K2 ,K3,K4 - заменить на переключатели типа PS850L с фиксацией.
Микросхему U2 - на 74AC00.

Слабое звено схемы - транзисторный преобразователь уровня на Q12 - неудачно выбран как тип , так и схемное решение - лучше
так-же заменить на BFT92, в общем - собирайте - подскажу как сделать правильно!

Ну вот - вам и дешевая по компонентам схема - с высокой чувствительностью и полосой может быть до 200Мгц- но до 140Мгц - точно!

Теперь еще кто-нибудь будет утверждать - что ему слабо сделать хороший усилитель-формирователь?

iHam
21.10.2017, 14:54
Хотелки не обозначены. Если от сотни кГц до десятков мГц то формирователь на ОУ типа AD830. Если выше то прескалер LMX. Или AD. В любом случае получится проще и достоверней, чем на рассыпухе.

Tadas
21.10.2017, 15:35
Ну вот - вам и дешевая по компонентам схема - с высокой чувствительностью и полосой может быть до 200Мгц
А какая нижняя граница по частоте ?

FAKIR
21.10.2017, 15:46
нижняя граница по частоте ?
Герц от 5 - но если сделать возможность включать открытый вход - закорачивать кнопкой C19(перменный/постоянный) - то будет
вообще от 0!
А вообще увеличив например C19 до 1мкф и при закрытом входе - не менее 1Гц

iHam
21.10.2017, 15:53
Если есть интерес от 0 гц то любой цифровой осциллограф. Или некоторые мультиметры. Если говорить о частотомере от 0 до 1000 мГц, то два входа. Один от 0 до 50 мГц, второй от 50 до 1000 мГц. Причем первый с относительно высоким R вх. Второй 50 ом. На практике использовать 1мГОм редко приходится.