Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 15 из 17
  1. #1
    Low Power
    Регистрация
    15.07.2004
    Адрес
    Харьков
    Сообщений
    89
    Поблагодарили
    0
    Поблагодарил
    0

    Вопрос Вопросы частотомеростроения.

    Доброго времени суток!

    Тут такой вопрос возник: смотрю на http://kazus.ru/modules/Content/shemes/19.html, вижу что собранный на PIC16F84 частотомер измеряет частоту до 40 МГц. Далее начинаю искать конструкции на AVR, и вижу что большинство конструкций меряет частоту до 0,5 частоты тактового кварца, что вполне логично.
    И вот никак мне не ясно, как первая конструкция на PIC16F84 может мерять такие высокие частоты, при частоте собственного кварца 4 МГц?!

    Заранее благодарен за ответ.


  2. #2
    Standart Power Аватар для UN7RX
    Регистрация
    14.10.2004
    Возраст
    55
    Сообщений
    308
    Поблагодарили
    103
    Поблагодарил
    66
    А какая разница в данном случае какая тактовая частота у контроллера? Важно какие узлы он содержит! У этого есть весьма быстродействующий 8-ми разрядный модуль таймера. Вот он и накапливает входную частоту. А считать ее - быстродействие не нужно...

  3. #3
    DMJ
    DMJ вне форума
    Без позывного
    Регистрация
    09.07.2003
    Адрес
    Москва
    Возраст
    55
    Сообщений
    375
    Поблагодарили
    13
    Поблагодарил
    2
    Модуль таймера там не особо быстродействующий. С большой скоростью может работать только предварительный делитель, включенный на входе собственно восьмиразрядного таймера. Причем программно этот самый предделитель недоступен и, чтобы прочитать его состояние, приходится прибегать к всевозможным хитростям. Хитрости эти описаны с десяток лет назад в одном из руководств по применению PIC-ов и все частотомеры на них растут оттуда.

  4. #4
    Standart Power
    Регистрация
    18.06.2004
    Адрес
    Запорожье
    Сообщений
    166
    Поблагодарили
    12
    Поблагодарил
    0
    Первоначальное сообщение от Robert
    А какая разница в данном случае какая тактовая частота у контроллера? Важно какие узлы он содержит! У этого есть весьма быстродействующий 8-ми разрядный модуль таймера. Вот он и накапливает входную частоту. А считать ее - быстродействие не нужно...
    В принципе верно. Небольшое дополнение. Для частотомера, с диапазоном до 40 МГЦ и разрядностью 10 гц ( у меня по схеме Денисова считает до 45,0 МГЦ), необходимы, как минимум три восьмиразрядных счетчика. Младший разряд - предделитель, средний - именно таймер и старший - регистр контроллера. В старший разряд после каждого цикла, записывается бит переполнения таймера, если переполнение было. Таким образом, за время измерения, в старшем разряде записано число переполнений таймера, состояние таймера читается программно, это будет средний разряд счетчика. Для чтения предделителя, на его вход подаются импульсы до тех пор, пока не появится бит его переполнения. Таким образом определяется состояние предделителя.
    Для частотомера, с точностью до 1 гц уже нужны 4 регистра счетчика, т.е. в памяти надо организовывать еще один регистр.
    Для более высоких частот можно использовать внешний счетчик.
    Так организован частотомер Денисова, да и многие другие. Конечно есть более продвинутые контроллеры, имеющие несколько таймеров.

  5. #5
    Low Power
    Регистрация
    15.07.2004
    Адрес
    Харьков
    Сообщений
    89
    Поблагодарили
    0
    Поблагодарил
    0
    Большое спасибо всем ответившим!
    Скажите пожалуйста, возможна ли реализация частотомера на частоту этак 50 МГц на базе какого либо контроллера фирмы Atmel, без использования внешнего делителя? Или даже не стоит браться за эту тему?

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

    Или я жестоко заблуждаюсь?

  6. #6
    Alex007
    Гость
    Есть прескалер (инкрементирующий счетчик), он считает непосредственно входной сигнал, при его переполнении (например 256) синхронизированный тактовой частотой контроллера импульс идет на таймер (читай тот же счетчик) контроллера. При переполнении регистра таймера (8 бит) выставляется флаг прерывания (но само прерывание обычно маскируют) по которому инкрементируестя "обычный" регистр итд. Все это дело происходит за период измерения, организованный (обычно) простой подпрограммой задержки на циклах.
    В более современных (чем PIC16F84) контроллерах действительно можно организовать "часовой таймер" из имеющихся свободных таймеров (у ПИК-ов это Timer1 и Timer2).

  7. #7
    Standart Power
    Регистрация
    18.06.2004
    Адрес
    Запорожье
    Сообщений
    166
    Поблагодарили
    12
    Поблагодарил
    0
    Первоначальное сообщение от Homich
    ..........я вот тут чуть не понял принципа действия:
    Вот есть у нас первый регистр - он делит входную частоту на столько то.
    А таймер - он каким образом отмеряет время? В смысле, он считает число "тиков", и по достижении определенного числа инкрементирует старший (третьий) регистр?
    И еще, насколько я понял, тут нужен еще и "часовой" таймер, который по пошестивии времени, выделенного на счет, дернет процедуру считывания счетчиков и визуализации данных.

    Или я жестоко заблуждаюсь?
    "Часовой" таймер, то есть время в течение которого контроллер считает число поступивших импульсов, жестко определен временем работы цикла программы. Для частотомера с точностью до 10 гц, это время составляет 0,1 сек. В течение этого времени программа делает много чего, выводит информацию на дисплей, преобразовывает числа из двоичной системы в другую и пр. А счетчики считают независимо. Причем, в течение этого одного большого цикла, программа много раз проверяет, нет ли переполнения таймера. Время, через которое программа должна это делать, должно быть таким, чтобы при максимальной частоте поступающих на вход импульсов, таймер успевал переполниться не более одного раза. При частоте 50 мгц, например, счетчик (с учетом предделителя 1:256), заполнится за время: 0,02 мкс х 256 х 256 = 1310 мкс. Реально время берется меньше, кажется у Денисова =1000 мкс.
    То есть через каждые 1000 мксек поисходит проверка переполнения и если в регистре (кажется Status), есть бит (признак переполнения), то добавляется единица в старший регистр счетчика, т.е. в память контроллера. Сделать программу такой, чтобы она выполнялась именно за 0,1 сек и есть основная сложность. Если получается меньше, можно добавлять холостые команды (NOP). Но когда в программе есть ветвления, получается все равно довольно кропотливо.

  8. #8
    Low Power
    Регистрация
    15.07.2004
    Адрес
    Харьков
    Сообщений
    89
    Поблагодарили
    0
    Поблагодарил
    0
    Большое спасибо всем ответившим!!! Распечатал эту ветку и курю до просветления.

    Только вот на горизонте появилась новая проблема:
    Насколько я понял из даташита на ATMega8, счетчики у AVR-ов работают с максимальной частотой, равной половине тактовой. Так ли это? Если да, то становится понятным облилие частотомеров на PIC-ах, и практически полное отсутствие на AVR-ах. А как раз на AVR-е я хотел сделать этот проект. ((
    В общем, что скажете?

    Заранее благодарен за ответ.

  9. #9
    Alex007
    Гость
    Если почитаете доки на ПИК-и, то нигде не увидите максимальной частоты работы встроенного прескалера, а только при внимательном чтении можно заметить, что сам таймер после прескалера синхронизируется частотой Fosc/8. Но если учесть, что прескалер делит на 128 то этого хватает за глаза. Возможно (про АВР я не читал) там тоже самое.

  10. #10
    Low Power
    Регистрация
    15.07.2004
    Адрес
    Харьков
    Сообщений
    89
    Поблагодарили
    0
    Поблагодарил
    0
    К сожалению, фраза "An external clock source can not be prescaled." из даташита на ATmega8 намертво перекрыла перспективу построения частотомера на этом кристалле без внешнего делителя. Посмотрел даташиты на микрочип и расстроился. Там есть встроенный делитель.
    Короче говоря, у меня возник вопрос: есть ли смысл городить частотомер на Атмеле, или бросить эту затею и изучать Microchip? Если смысл есть, то какой внешний делитель порекомендуете использовать?

    Заранее благодарен за ответ.

  11. #11
    Standart Power
    Регистрация
    18.06.2004
    Адрес
    Запорожье
    Сообщений
    166
    Поблагодарили
    12
    Поблагодарил
    0
    Первоначальное сообщение от Homich
    Короче говоря, у меня возник вопрос: есть ли смысл городить частотомер на Атмеле, или бросить эту затею и изучать Microchip?
    Заранее благодарен за ответ.
    Если Вам нужен только частотомер, то можно без изучения PICов собрать по имеющимся схемам. Есть опробованные неоднократно схемы. Сам я собрал несколько по схеме Денисова, с индикаторами на светодиодных индикаторах, на ЖКИ. Все работает как надо. Для этого частотомера есть также усовершенствованная прошивка (автор Корабельников Е.А.). Расширен диапазон, улучшена индикация (устранено некоторое мерцание индикаторов). Хотя для частотомера на ЖКИ его и не было.
    Кроме того, на РICах уже есть разработки FLC измерителей, все в одном.
    Успехов!

  12. #12
    Low Power
    Регистрация
    15.07.2004
    Адрес
    Харьков
    Сообщений
    89
    Поблагодарили
    0
    Поблагодарил
    0
    Спасибо за пожелания!

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

    Успехов Вам и всем ответившим!!!

  13. #13
    Alex007
    Гость
    Да почему же облом. Вот вариант использования внешнего делителя на НС393 для такого случая. Проверял - все ок. По такой схеме можно и для АВР. http://homepage.tinet.ie/~ei9gq/stab.html

    PS. Я за изучение ПИКов. По-моему и инфы больше, отладочные есть, и проще. Круче ПИКа только PIC!!

  14. #14
    QRP
    Регистрация
    07.06.2003
    Адрес
    Питер
    Сообщений
    38
    Поблагодарили
    1
    Поблагодарил
    8
    « Если Вам нужен только частотомер, то можно без изучения PICов собрать по имеющимся схемам. Есть опробованные неоднократно схемы. Сам я собрал несколько по схеме Денисова, с индикаторами на светодиодных индикаторах, на ЖКИ. Все работает как надо. Для этого частотомера есть также усовершенствованная прошивка (автор Корабельников Е.А.). Расширен диапазон, улучшена индикация (устранено некоторое мерцание индикаторов). Хотя для частотомера на ЖКИ его и не было. »

    Я тоже неоднократно собиал этот частотомер на светодиодных индикаторах, все
    ОК, но раздражает мерцание индикаторов. Может подскажете где взять новую прошивку?

  15. #15
    Standart Power
    Регистрация
    18.06.2004
    Адрес
    Запорожье
    Сообщений
    166
    Поблагодарили
    12
    Поблагодарил
    0
    Первоначальное сообщение от PVK
    « раздражает мерцание индикаторов. Может подскажете где взять новую прошивку?
    Прошивка здесь: http://ikarab.narod.ru/index.html
    Свой пока не перепрошивал, поэтому оценку дать не могу.
    Хотя, в прошлом году пробовал демонстрационную версию. Все было нормально. Рабочая тогда была платной. Сейчас автор выложил бесплатно и рабочую.
    Успехов.

Похожие темы

  1. Вопросы по к174пс1
    от Aleksandr37 в разделе Общие вопросы
    Ответов: 12
    Последнее сообщение: 27.03.2007, 10:55
  2. вопросы чайника.
    от Newbie в разделе Антенномания
    Ответов: 5
    Последнее сообщение: 24.12.2005, 15:10
  3. Конденсатор, вопросы по РА
    от Rover в разделе Усилители мощности
    Ответов: 26
    Последнее сообщение: 19.08.2004, 14:39
  4. Вопросы о форуме
    от crash в разделе Поддержка портала QRZ.RU
    Ответов: 8
    Последнее сообщение: 22.07.2004, 06:25
  5. Про QSL вопросы...
    от ВасиличЪ в разделе QSL
    Ответов: 7
    Последнее сообщение: 25.07.2003, 04:27

Социальные закладки

Социальные закладки

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •  
Похоже, что вы используете блокировщик рекламы :(
Форум QRZ.RU существует только за счет рекламы, поэтому мы были бы Вам благодарны если Вы внесете сайт в список исключений!
как отключить
×
Рейтинг@Mail.ru
eXTReMe Tracker


Похоже, что вы используете блокировщик рекламы :(
Форум QRZ.RU существует только за счет рекламы, поэтому мы были бы Вам благодарны если Вы внесете сайт в список исключений!
как отключить
×