Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
30.04.2008, 23:12
|
|
Прописка
Регистрация: 15.10.2006
Сообщений: 130
Сказал спасибо: 0
Сказали Спасибо 2 раз(а) в 1 сообщении
|
И опять частотомер(мне он самому надоел)
Всем привет
Понадобилось сделать частотомер на PIC16F877
на ограниченный диапазон 140-200 МГц,
с точностью до 1кГц(чтоб отображал например 158,125 МГц)
Никак не могу понять:
ну вот скажем мне в данном случае
для результата придется отвести не менее 18 двоичных разрядов,
т.е. предеться городить какие то составные регистры, прочая дребедень.
А ведь чем больше этих составных регистров,
тем сильнее будут младшие биты результата гулять
- а мне ведь генератор по этому частотомеру настраивать!
И еще почему все пишут по какому то кривому алгоритму:
ждут, сколько раз заполнится TMR0 или TMR1,
нельзя что ли завести TMR2 на время измерения,
а из TMR1 выгружать готовый результат.
Правда во время выгрузки значение может измениться
- ну может можно что нибудь придумать?
|
|
|
|
02.05.2008, 16:43
|
|
Гражданин KAZUS.RU
Регистрация: 27.07.2006
Сообщений: 659
Сказал спасибо: 0
Сказали Спасибо 4 раз(а) в 4 сообщении(ях)
|
Re: И опять частотомер(мне он самому надоел)
Сообщение от double_dash
|
Всем привет
Понадобилось сделать частотомер на PIC16F877
на ограниченный диапазон 140-200 МГц,
с точностью до 1кГц(чтоб отображал например 158,125 МГц)
Никак не могу понять:
ну вот скажем мне в данном случае
для результата придется отвести не менее 18 двоичных разрядов,
т.е. предеться городить какие то составные регистры, прочая дребедень.
А ведь чем больше этих составных регистров,
тем сильнее будут младшие биты результата гулять
- а мне ведь генератор по этому частотомеру настраивать!
И еще почему все пишут по какому то кривому алгоритму:
ждут, сколько раз заполнится TMR0 или TMR1,
нельзя что ли завести TMR2 на время измерения,
а из TMR1 выгружать готовый результат.
Правда во время выгрузки значение может измениться
- ну может можно что нибудь придумать?
|
Могу вас огорчить вы не сможете его сделать.Частотомер на подобную частоту надо делать с применением внешних счетчиков.
|
|
|
|
02.05.2008, 21:57
|
|
Прописка
Регистрация: 15.10.2006
Сообщений: 130
Сказал спасибо: 0
Сказали Спасибо 2 раз(а) в 1 сообщении
|
Re: И опять частотомер(мне он самому надоел)
Сообщение от EVGENIY1962
|
Могу вас огорчить вы не сможете его сделать.Частотомер на подобную частоту надо делать с применением внешних счетчиков.
|
об этом кстати тоже хотел спросить. Нет, я конечно планировал
подключение внешних делителей частоты,
но вот ведь что непонятно:
По этому адресу лежит проект частотомера на PIC16F877(без внешних предделителей!),
частотомер рассчитан на диапазон от 1 Гц до 50 МГц.
Про потолок написано что он "limited by input pin characteristics",
т.е. как я понимаю внутренняя логика счетчика МК способна
нормально работать с сигналами не выше 50 МГц.
Пробовал найти этому документальное подтверждение в datasheet'е,
в разделе TIMER1 CLOCK REQUIREMENTS написано, что минимальный
период внешнего сигнала должен быть минимум 60 нс,
т.е. частота должна быть не выше... 16 МГц(!!!)
- и чему же интересно верить?
|
|
|
|
02.05.2008, 23:33
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
|
Верить документации конечно на МК. Но на практике 40-50 Мгц PIC действительно "переваривает". Внешний делитель возьмите из любой схемы частотомеров коих в сети МАССА.
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
|
|
|
|
03.05.2008, 07:33
|
|
Гражданин KAZUS.RU
Регистрация: 27.07.2006
Сообщений: 659
Сказал спасибо: 0
Сказали Спасибо 4 раз(а) в 4 сообщении(ях)
|
Re: И опять частотомер(мне он самому надоел)
Сообщение от double_dash
|
Сообщение от EVGENIY1962
|
Могу вас огорчить вы не сможете его сделать.Частотомер на подобную частоту надо делать с применением внешних счетчиков.
|
об этом кстати тоже хотел спросить. Нет, я конечно планировал
подключение внешних делителей частоты,
но вот ведь что непонятно:
По этому адресу лежит проект частотомера на PIC16F877(без внешних предделителей!),
частотомер рассчитан на диапазон от 1 Гц до 50 МГц.
Про потолок написано что он "limited by input pin characteristics",
т.е. как я понимаю внутренняя логика счетчика МК способна
нормально работать с сигналами не выше 50 МГц.
Пробовал найти этому документальное подтверждение в datasheet'е,
в разделе TIMER1 CLOCK REQUIREMENTS написано, что минимальный
период внешнего сигнала должен быть минимум 60 нс,
т.е. частота должна быть не выше... 16 МГц(!!!)
- и чему же интересно верить?
|
Сотворите весь счетчик на дискретных элементах или на ПЛИС ,если ладеете)Всё что связано с использованием внутренних регистров контроллера=это игрушки.
|
|
|
|
03.05.2008, 11:13
|
|
Вид на жительство
Регистрация: 23.04.2006
Сообщений: 308
Сказал спасибо: 14
Сказали Спасибо 13 раз(а) в 12 сообщении(ях)
|
Делаешь входной делитель на 100. Получаешь диапазон частот на входе МК 1,4 - 2 МГц. Каждый импульс весит 0,1 кГц входной частоты.
Суммируешь входные импульсы до 10, т.е. получаешь единицу младшего разряда в 1 кГц. Устанавливаешь флаг. А теперь суммируешь эти флаги в регистр младшего разряда результата - там будет значение килогерц. Переполнение этого разряда больше 10, дает 1 в регистр следующего разряда результата - десятков килогерц, и т.д. Таких регистров будет 6, и они будут восьмиразрядные. Всё просто.
По окончании измерительного интервала времени 1 с (можно и 0,5 с), переписываешь содержимое регистров результата в регистры-копии для вывода на индикацию и очищаешь все регистры результата - начинается подсчёт частоты входных имрульсов следующего измерительного интервала. Индикатор нужен на 6 разрядов, поэтому индикация динамическая. Значит надо настраивать прерывание при каждом появлении единицы младшего разряда. Это простейший алгоритм для заданного диапазона частот. Для измерения частоты в другом диапазоне придётся изменять коэффициент деления входного делителя.
|
|
|
|
03.05.2008, 14:10
|
|
Прописка
Регистрация: 15.10.2006
Сообщений: 130
Сказал спасибо: 0
Сказали Спасибо 2 раз(а) в 1 сообщении
|
Re: И опять частотомер(мне он самому надоел)
Сообщение от EVGENIY1962
|
Сотворите весь счетчик на дискретных элементах или на ПЛИС ,если ладеете)Всё что связано с использованием внутренних регистров контроллера=это игрушки.
|
знаете, прихожу к тому же выводу:
у частотомера на жесткой логике
коэффициент использования ресурсов намного выше,
чем у того же устройства, выполненного на МК.
Самое смешное
что я как раз хочу модернизировать частотомер,
сделанный на жесткой логике
Необходимость этого заключается в том,
что в устройство еще должны быть добавлены ВЧ-ватметр
и ЧМ-генератор на тот же диапазон.
Передо мной стояла диллема:
либо взять готовый АЦП, однокристальный частотомер,
и слабенький МК - для общего управления блоками,
либо всю эту кучу функций возложить на один мощный МК
- я выбрал последнее,
не знаю, правильно ли?
|
|
|
|
03.05.2008, 14:31
|
|
Прописка
Регистрация: 15.10.2006
Сообщений: 130
Сказал спасибо: 0
Сказали Спасибо 2 раз(а) в 1 сообщении
|
Да уж...
Узнать бы точно чему равен частотный потолок TIMER1
Как то nml сказал что одно из достойств PIC'ов
- то что таймер может работать на частотах,
превышающих тактовую частоту
Но если 16 МГц - это максимум,
то преимущество, прямо скажем, сомнительное
Сообщение от zelanez
|
Делаешь входной делитель на 100. Получаешь диапазон частот на входе МК 1,4 - 2 МГц.
|
Объясню, почему мне так сильно не хочется делить частоту.
- в этом случае время измерения получится слишком большим.
Прибор предназначен для проверки параметров радиостанций,
в том числе нестабильности частоты,
а с таким инерционным частотомером это вряд ли удастся
|
|
|
|
03.05.2008, 15:33
|
|
Вид на жительство
Регистрация: 23.04.2006
Сообщений: 308
Сказал спасибо: 14
Сказали Спасибо 13 раз(а) в 12 сообщении(ях)
|
Цитата:
|
Прибор предназначен для проверки параметров радиостанций,
в том числе нестабильности частоты,
а с таким инерционным частотомером это вряд ли удастся
Код:
|
Ага, новый способ определения нестабильности частоты - визуально, по факту мигания последних 3х разрядов частотомера... :lol:
Для определения нестабильности частоты нужен другой алгоритм, но тоже вполне реализуемый и с входным делителем. Но это немного другой прибор. А речь вначале шла только о частотомере, однако... |
|
|
|
|
|
03.05.2008, 15:48
|
|
Прописка
Регистрация: 15.10.2006
Сообщений: 130
Сказал спасибо: 0
Сказали Спасибо 2 раз(а) в 1 сообщении
|
Сообщение от zelanez
|
Ага, новый способ определения нестабильности частоты - визуально, по факту мигания последних 3х разрядов частотомера...
|
НУ почему бы и нет?
Способ конечно для сертификации радиостанций не самый подходящий,
но для быстрого определения "терпимо"/"в ремонт"
- по моему вполне потянет
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 19:23.
|
|