Попробуйте, например, сформировать интервал измерения 1,(0) сек при имеющемся кварце 10'003'857,197Гц. По "методу захвата" такой кварц запросто подойдет.
Мне бы очень хотелось увидеть кварц с такой маркировкой. С учетом, что стабильность кварцев в лучшем случае 10-8 (термостабилизация и т.п., т.е. это уже не просто кварц, а целый модуль) - если и увижу, так просто запишу в разряд "очередное фуфло для ламеров". Т.е. приведенный пример - мягко говоря не аргумент.
_________________ Человек - это звучит гордо, а обезьяна - объективно...
2 способ - обратный. Фиксируется КОЛИЧЕСТВО измеряемых периодов. Считается время, за которое это количество прошло. Отношение количества периодов (ФИКСИРОВАННОГО) к времени измерения (ПЕРЕМЕННОМУ) - частота.
Зачем, используя МК, фиксировать количество измеряемых периодов? Только для того, что бы реализовать "классический" вариант? Есть адаптивный вариант - в зависимости от полученного количества импульсов эталонной частоты, меняется количество измеряемых периодов. И точность измерения при этом практически постоянна для любой входной частоты.
_________________ А из наших труб идет необычный дым. Стой! Опасная зона! Работа мозга!...
У 2 способа фиксировать время измерения по самому его определению (измеряется период) невозможно.
Как для способа 1, так и для способа 2 фиксируется как раз время измерения. А периодов входной частоты может быть разное количество - сколько влезет в интервал. Понятное дело, для метода 2 измерительный интервал округляется до целого числа периодов входной частоты.
SergeBS писал(а):
Самое "смешное" - рассуждения о 10-12 цифровом разрешении и НИ СЛОВА, а где найдется источник опорного сигнала с такой стабильностью (10-10..10-12).
Это разрешение прибора, выраженное в единицах "разрядов в секунду". Никто и не говорит об абсолютной точности. Чем больше разрешение, тем меньший измерительный интервал можно установить для получения заданной точности.
Как для способа 1, так и для способа 2 фиксируется как раз время измерения. А периодов входной частоты может быть разное количество - сколько влезет в интервал. Понятное дело, для метода 2 измерительный интервал округляется до целого числа периодов входной частоты.
Опять 25. Для 2 способа НИКАКОЙ фиксации времени измерения быть не может. Поскольку именно ВРЕМЯ измеряется, по определению этого способа. И всякие "округления измерительного интервала" - из рубрики "кошка вертит хвостом или хвост кошкой". Выбирается (фиксируется) количество измеряемых периодов, поскольку больше ничего выбрать нельзя. И оно конечно КОСВЕННО влияет на время измерения. Но все равно время измерения определяется периодом входного сигнала. Не надо зря запутывать совершенно простые вещи. Адаптация количества измеряемых периодов для получения приемлемого диапазона времени измерения и фиксация времени измерения - это две большие разницы. "На пальцах": измеряем в диапазоне 1..10 Гц. Задаем количество периодов - 1. Получаем время измерения от 1 до 0.1 сек. Для 10..100 Гц можем выбрать количество - 10. И опять получим от 1 до 0.1 сек. Можно как угодно мудрить с выбором этого количества периодов, но время измерения все равно останется пропорциональным периоду сигнала, соответственно НИКОГДА фиксированным не будет. И наоборот, для 1 способа можно выбирать (фиксировать) время измерения для получения приемлемой точности - приемлемого количества посчитанных периодов. И тут уже НИКАКОЙ фиксации количества быть не может. Поскольку именно количество и считается. По самому определению способа.
_________________ Человек - это звучит гордо, а обезьяна - объективно...
"На пальцах": измеряем в диапазоне 1..10 Гц. Задаем количество периодов - 1. Получаем время измерения от 1 до 0.1 сек.
Нет, никто количество периодов не задает. А задают именно измерительный интервал. Если Вы ни разу не видели частотомера, работающего по этому принципу, так хоть скачайте мануал (например, на SR620). Там увидите, что задается именно время измерения (Gate).
Мне бы очень хотелось увидеть кварц с такой маркировкой. С учетом, что стабильность кварцев в лучшем случае 10-8 (термостабилизация и т.п., т.е. это уже не просто кварц, а целый модуль) - если и увижу, так просто запишу в разряд "очередное фуфло для ламеров". Т.е. приведенный пример - мягко говоря не аргумент.
Это не маркировка, а реальное значение генерации системы контроллер(AT90S2313) - кварц(маркировка "10000 кГц") на момент измерения.
SergeBS писал(а):
2 - обратный способ. Меряется длительность импульса, а частота определяется как обратная величина. Считаем, за какое время пройдет выбранное количество импульсов.
SergeBS писал(а):
Фиксируется КОЛИЧЕСТВО измеряемых периодов. Считается время, за которое это количество прошло. Отношение количества периодов (ФИКСИРОВАННОГО) к времени измерения (ПЕРЕМЕННОМУ) - частота...Получаем - чтобы иметь фиксированное время измерения надо знать период измеряемой частоты и изменять количество измеряемых периодов.
Это Ваша ошибка в понимании метода "захвата" ("вычислительного метода", "обратного счета", "Reciprocal counting"). Время измерения задается примерно!!!, т.к. в выражение для расчета частоты этим методом оно не входит и может выбираться произвольно, исходя из требуемых параметров. Fx=Fo*Nx/nox, где Fx - измеряемая частота Fo - опорная частота, которая должна быть известна с максимальной точностью (именно частоту 10'003'857,197Гц, полученную мною закладываю в выражение, а не то, что отмаркировано на корпусе.) Nx - целое число периодов измеряемой частоты за время измерения nox - целое число периодов опорной частоты за время прохождения Nx Далее принимаем произвольно удобное для работы время измерения . Накладываем условие, что после окончания времени измерения счетчик nox будет остановлен только по окончании текущего периода Nx. В конкретных числах результаты по этому методу можно посмотреть в старой ветке, где уважаемый =GM= объяснял реализацию этого метода, правда на AVR. Здесь, буквально на днях, приведен документ, являющийся выжимкой из самого начала этой ветки.
SergeBS писал(а):
Самое "смешное" - рассуждения о 10-12 цифровом разрешении и НИ СЛОВА, а где найдется источник опорного сигнала с такой стабильностью (10-10..10-12). "В каждый частотомер - водородный эталон!" Пустяк вопрос - вшивые сто баксов
Вы все время путаете методологию с особенностями практической реализации.
Это не маркировка, а реальное значение генерации системы контроллер(AT90S2313) - кварц(маркировка "10000 кГц") на момент измерения.
10'003'857,197 Гц - Точность 10-11? Ну-ну. Не буду спрашивать чем мерялось. Предложу всего лишь ознакомиться насколько РЕАЛЬНА такая точность (стабильность!) применительно к кварцам. И прикинуть, насколько это значение "уплывет" за время измерения. Если например рядом рукой помахать . Про стабильность питания и прочее - можно промолчать. По моим прикидкам корректно бы было это значение записать в виде 100'038*10+2. Не лучше.
akl писал(а):
Это Ваша ошибка в понимании метода "захвата" ("вычислительного метода", "обратного счета", "Reciprocal counting"). Время измерения задается примерно!!!, т.к. в выражение для расчета частоты этим методом оно не входит и может выбираться произвольно, исходя из требуемых параметров.
Ну так давайте различать ФИКСИРОВАННОЕ время измерения, и заданное ПРИМЕРНО, исходя из точности и т.п. Что я и объяснял: нет фиксированного времени измерения. Ежели это время зависит от измеряемой частоты, то оно НИКАК фиксированным быть не может. Чья ошибка? Кто излагал, что время измерения - постоянно (фиксировано)? НЕ Я.
akl писал(а):
Далее принимаем произвольно удобное для работы время измерения . Накладываем условие, что после окончания времени измерения счетчик nox будет остановлен только по окончании текущего периода Nx.
"Что и требовалось доказать". Есть заданное (фиксированное) время измерения и "довесок" к этому времени - ожидание окончания текущего периода. Вроде как спор уже опять не со мной. Я формулировал только другими словами - что время измерения определяется количеством измеряемых периодов, которое можно выбирать. Но фиксированным это время ГАРАНТИРОВАННО не будет. И произвольно выбирать время - не нужно. Достаточно задать количество измеряемых периодов и все произойдет само собой. Как нетрудно догадаться, меньше 1 оно быть не может. А дальше относительная точность измерения определяется по отношению периодов эталонной и измеряемой частоты, при ее недостатке - увеличивается количество измеряемых периодов. Все. И никаких произвольностей. И опять приходим к тому же: чем выше частота сигнала, тем ниже точность. И эта точность повышается увеличением количества измеряемых периодов. Мудрить-то зачем? Все достаточно просто. Ну обозвали этот способ "Reciprocal counting", и что? Сущность его от этого не изменилась.
akl писал(а):
SergeBS писал(а):
Самое "смешное" - рассуждения о 10-12 цифровом разрешении и НИ СЛОВА, а где найдется источник опорного сигнала с такой стабильностью (10-10..10-12). "В каждый частотомер - водородный эталон!" Пустяк вопрос - вшивые сто баксов
Вы все время путаете методологию с особенностями практической реализации.
А кому нужна НЕРАБОТАЮЩАЯ методология? Ну увидел я 13 цифр результата. Но если реально значащих 9 - зачем мне 4 лишних? "Сферический конь в вакууме"? Можно и 20 цифр получить без придумывания всяких "новых" методологий. Но если посмотреть внимательно - автор-то "Marketing and Sales Manager". Рекламщик, короче. Вот и весь секрет. И "современных" методов, и "13-разрядных" разрешений, из которых 8-9 реальных разрядов. Реально для увеличения точности измерения нужен в первую очередь высокоточный стабильный эталон, а остальное преодолимо.
_________________ Человек - это звучит гордо, а обезьяна - объективно...
А задают именно измерительный интервал. Если Вы ни разу не видели частотомера, работающего по этому принципу, так хоть скачайте мануал (например, на SR620). Там увидите, что задается именно время измерения (Gate).
"Спасибо, я пешком постою". Статья рекламщика была - выяснилось, что измерительный интервал НЕ ФИКСИРОВАН. Подстраивается под период, т.е. задают ПО ФАКТУ именно количество периодов. И если оно не влезает - интервал увеличивают. Этим, кстати, объясняется появление слова Gate. "Ширше ворота раздвигай - не пролазит" . Иначе бы было interval. Теперь мне предлагается найти мануал, в котором написано обратное. Ну уж нет. Не найду. Почему - еще раз объяснять надо? Найдете - покажите. Почитаю. Ежели опять ..., то снова ...
_________________ Человек - это звучит гордо, а обезьяна - объективно...
Теперь мне предлагается найти мануал, в котором написано обратное. Ну уж нет. Не найду. Почему - еще раз объяснять надо? Найдете - покажите. Почитаю. Ежели опять ..., то снова ...
Если нет желания что-то изучать, то никто Вас не заставит. А я себе частотмер уже сделал, нет повода дальше заниматься этой проблемой. http://www.youtube.com/watch?v=VNKCnef-ynU
Если нет желания что-то изучать, то никто Вас не заставит.
Здесь, скорее, вопрос не столько в желании, сколько в целесообразности... Частотомер на STM32 получается легко и непринуждённо во всей линейке... делов - 2-3 свободных таймера... Да, прямой счёт... зато используя, попутно, PWM Input Mode можно одновременно и длительность, и период на низких частотах получить... Да, половина от частоты тактирования максимум... зато можно "Без шума и пыли"(С) встроить, при желании, в любой девайс на основе STM32... что уже тяжеловато сделать, согласитесь, в ПИКах и АТМЭЛах... Дальше всё уже зависит от хотелок... хоть 4,3" дисплей с тачскрином навешивай...
Цитата:
А я себе частотмер уже сделал, нет повода дальше заниматься этой проблемой.
Я себе ещё в 1983г. на 155-ой простенький, настольный, сделал... до сих пор работает... А вот мультиметр, я был в первых рядах по изготовлению сего чуда, на 572ПВ2 давно выкинул... сейчас проще пойти и купить китайский...
_________________ "Я не даю готовых решений, я заставляю думать!"(С)
Здесь, скорее, вопрос не столько в желании, сколько в целесообразности...
Если потребности нет, так и вопроса нет.
Вот именно... ни потребности, ни целесообразности... Глянул по таймерам в даташите... Reciprocal counting и на STM32 легко осуществляется... без довесов... Вопрос - а кто делать то будет???
Цитата:
Я подобные тоже делал, но что про них вспоминать - примитив. Чтобы конструкцию обсуждать, должна быть в ней какая-то изюминка.
А нет конструкции в данной теме... обсуждаем только теорию "STM32 - частотомер."... и изюминки...
_________________ "Я не даю готовых решений, я заставляю думать!"(С)
Глянул по таймерам в даташите... Reciprocal counting и на STM32 легко осуществляется... без довесов...
Вы уверены? На голом AVR, например, это получается только при программном счете входных импульсов в прерывании по захвату. При этом максимальная частота получается порядка 0.5 МГц. Если входные импульсы считать другим таймером, то нужна внешняя логика, чтобы сформировать Gate. Как в STM32 синхронно разрешить и запретить счет входных импульсов и импульсов заполнения?
На 99% ... На STM32F0xx, STM32F2xx и STM32F4xx Reciprocal Counting точно получится... У этих есть один 32bit таймер... другой можно набрать из двух других... Может и на STM32F1xx найдётся решение... сильно не вникал...
Цитата:
На голом AVR, например, это получается только при программном счете входных импульсов в прерывании по захвату.
STM32 не AVR... увы... Я уже описывал решение для прямого счёта... никаких прерываний... Для Reciprocal Counting понадобится PWM input mode, PWM mode/One-pulse mode (Gate) и Slave timer in Gated mode... никаких прерываний...
_________________ "Я не даю готовых решений, я заставляю думать!"(С)
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения