Как получить тактовый сигнал с частотой 1 Гц с помощью микросхемы таймера 555? Есть ли лучшие способы, кроме микросхемы таймера 555?

Я возился с микросхемами таймеров, изучал, как они работают, и теперь я хочу разработать простые цифровые часы с использованием генератора импульсов с частотой 1 Гц. Достаточно ли микросхемы таймера 555 для создания точных импульсов с частотой 1 Гц или есть ли другой способ разработать генератор импульсов? Есть ли конкретное значение сопротивления/емкости для микросхемы, или я ошибаюсь, и для этой цели есть лучший осциллятор?

Будьте настолько точны в отношении точности, которая вам нужна, и не более того.
Помните, что таймеры на основе RC сильно различаются в зависимости от окружающей среды (температуры) и возраста. Это сделает их малопригодными, если вы хотите сделать достаточно точные настенные часы.
Как вы делаете остальные части часов? ИС делителя и двоично-десятичное преобразование в драйвер 7-сегментного дисплея с использованием дискретной логики или микроконтроллера? Если вы используете микроконтроллер, вы можете использовать таймер внутри микроконтроллера для генерации 1 Гц.
«Есть ли способы получше, чем микросхема таймера 555?» Всегда есть лучшие способы, чем использование таймера 555.
очень плохо, что они не хотели платить изобретателю 555 за усовершенствование 555, но тогда я никогда ничего не покупал и не помещал их на свои чертежи.

Ответы (10)

Конечно, можно было бы получить сигнал 1 Гц с помощью 555. Однако есть (по крайней мере) две проблемы. а) Предполагая, что вы можете получить правильные значения конденсатора и стабильный потенциометр, было бы очень сложно измерить точный сигнал 1 Гц с помощью осциллографа или счетчика, поскольку сигнал очень медленный, и б) 555 не будет генерировать квадратный сигнал. И, конечно же, RC-таймер не будет очень стабильным.

Если вы все еще хотите провести исследование с использованием 555, вы можете выровнять волну с помощью триггера JK, который в процессе уменьшит вашу частоту вдвое. Я бы также создал гораздо более высокую частоту, например 1,024 кГц, а затем уменьшил ее с помощью счетчика/делителя до 1 Гц. Таким образом, вы можете использовать свой прицел для чтения и настройки потенциометра, чтобы 555 был настолько точным, насколько вы можете это сделать, прежде чем урезать до 1 Гц.

Для более точного источника синхронизации вы можете вместо этого создать схему кварцевого генератора или использовать RTC, которые обычно имеют выходной сигнал с частотой 1 Гц.

Прочитав свой ответ, я понял, что использовал «квадрат» для обозначения рабочего цикла 50%.

Фактическая частота таймера 555 зависит от постоянной времени RC, на которую сильно влияют изменения фактического сопротивления и емкости. Резистор имеет начальную точность (например, 1% или 0,1%), а также зависит от температуры. Конденсатор также имеет начальную точность (часто +20%/-80% или хуже) и изменяется в зависимости от приложенного напряжения.

Лучшим способом является использование кварцевого кристалла, такого как общедоступные часовые кристаллы с частотой 32,768 кГц «камертон». Используйте серию из 15 триггеров, чтобы разделить 32,768 кГц на 2 15 и вы получаете 1 Гц с очень высокой точностью.

Это может быть связано, если вы думаете построить это на макетной плате без пайки: electronics.stackexchange.com/questions/64119/…

недорогой CD4060 принимает резонатор ниже 32,768 кГц и колпачки, но имеет только 2 14 "=" 2 Выход в Гц, поэтому для /2 требуется D FF.

Альтернатива http://www.digikey.com/product-detail/en/maxim-integrated/DS1099U-WT-/DS1099U-WT--ND/1196714 включающая в себя резонатор и делитель на 2Гц

Для наилучшей точности выберите <50ppm или настройте с помощью триммера и GPS. или купите чип Osc 1ppm за несколько долларов и дополнительные делители http://www.digikey.ca/product-detail/en/abracon-llc/ASTX-H12-10.000MHZ-T/535-12048-1-ND/ 3907428

Точность измеряется в секундах в месяц с 2,59 миллионами секунд в месяц или частями на миллион (PPM).

РЕДАКТИРОВАТЬ: Как было предложено @Bradman175, причина, по которой обычно используется таймер 555, заключается в том, что легко генерировать широкий диапазон f, но с точки зрения точности времени ограничена стабильностью внутреннего эталона и допусков компонентов RC с точки зрения xxxx PPM, см. техническое описание.

Самым дешевым решением может быть покупка цифровых часов за 6 долларов с секундной стрелкой и использование этого пульса.

Мне понравился этот ответ, но я вижу, что кто-то проголосовал за него. Вы, вероятно, должны указать недостатки использования таймера 555 и почему этот способ лучше.

Приятно стоять на плечах «гигантских» ответов, подобных тем, которые были даны ранее — по сути, ничего из того, что вы строите с 555, не будет очень точным, и в этих больших временных масштабах это будет заметно.

Как уже было сказано, используйте что-то, что дает вам стабильную выходную частоту — кварцы 2 ** 15 Гц, безусловно, являются правильным способом здесь.

Чаще, чем мне хотелось бы признать, я оказываюсь в ситуации, подобной вашей: «Это было бы очень просто, если бы я мог просто поместить генератор сигналов в свою схему». И потом я это делаю — я склонен использовать дешевые микроконтроллеры на базе Cortex-M0 (например, серии STM32F0), просто потому, что я покупаю их небольшими партиями, поэтому у меня есть один, когда он мне нужен, и я просто подгоняю свою IDE (хорошо, это emacs/arm-none-eabi-gcc/openocd, но он все еще считается) и написать минимальную процедуру прерывания по таймеру, которая делает то, что я хочу. В вашем случае я бы использовал свой простой резонатор 8 МГц в качестве внешнего источника тактовой частоты ЦП и настроил ЦП для работы на этой скорости, а также использовал бы один из 32-битных таймеров, чтобы напрямую прерывать 2 Гц, переключая один выходной контакт. каждый раз, когда это прерывание срабатывает --> прямоугольная волна 1 Гц.

Поначалу пришлось немного повозиться, но тот факт, что я использую одну и ту же настройку для всего, что хочу сделать «прямо сейчас», облегчает задачу.

Это ни в коем случае не продуманное решение — я уверен, что мне следует уделить больше внимания переводу как можно большего количества моего MCU в спящий режим, пока он мне не нужен, если бы я использовал другой микроконтроллер, который на самом деле имел Встроенный RTC Мне не нужно было бы работать на высоких тактовых частотах, что еще больше снижает потребление энергии. Но опять же, для этого используется менее 1 мА, и довольно часто это «уровень значимости», который я бы присвоил энергопотреблению для чего-то, что не должно месяцами работать от батарей.

Так что да, я полностью согласен со всеми другими решениями — с использованием минимальной логики, необходимой для достижения цели — просто я стал довольствоваться тем, что просто делаю стандартную вещь, которая надежно работает.

Я хотел бы дать обзор преимуществ других подходов:

  • Резонатор 32,768 кГц + CD4060 + Flipflop ( ответ Тони ): «логически наиболее компактное» прецизионное решение. Мне нравится чистота этого подхода!
  • Резонатор 32,768 кГц + 15 каскадных триггеров ( ответ Марка ): это решение, которое вы должны построить хотя бы раз в жизни! Включите мерцающие огни после девятого этапа и далее, чтобы увидеть, как часы делятся на 2. Потрясающее ужасное украшение для рождественской елки!
  • Используйте 555 , чтобы сгенерировать высокочастотную волну и разделить ее ( ответ Эратикуса ): хотя мне нравится идея, что в принципе проще построить точный осциллятор 555 на более высоких частотах, чем на 1 Гц, на самом деле это просто решение для бедных. , так как он все же довольно неточен по сравнению с растворами на основе кварцев. Я бы не стал этого делать. Либо мне нужны хорошие часы, либо я использую 555.
  • Используйте микроконтроллер и таймер ( мой ответ выше ): не нравится, потому что он добавляет миллионы вентилей, которые вам здесь не нужны. Возможно, одно из самых гибких решений, но здесь оно не обязательно. Приводит к тому, что вы становитесь разработчиком встраиваемых систем. Там будут драконы. Если вы знаете, как обходиться с дешевыми микроконтроллерами, вполне может подойти микроконтроллер 8051 примерно за 40 кт, и, таким образом, бросить вызов другим решениям по стоимости. То есть, если вы не включаете затраты на программирование.
  • Используйте выход импульсов в секунду (PPS) модуля GPS ( ответ Тони ): мне это очень нравится! Если вам нужен точный источник времени, отличный способ, и модули GPS стали /дешевыми/! Часы GPS очень точны (так что различные версии того, что вы можете купить в качестве модуля GPS, используются в качестве эталона часов в высокоскоростных и широкомасштабных коммуникационных сетях), и если не считать часов Rubidium, вы не станете лучше. Посмотрите, что предлагают ваши дистрибьюторы по интегральным схемам GPS, и выберите те модели, которые имеют выход PPS. Затем найдите несколько дешевых модулей с этой микросхемой и встроенной антенной, например, выполнив поиск на ebay (я очень редко рекомендую ebay).

Разнообразие этих ответов показывает одно:

Это действительно необходимо записать ваши цели дизайна.

Вам нужен этот 1 Гц с допуском <0,1 ppm? Что ж, GPS или атомные часы — ваши единственные варианты. Вам это нужно с минимальным количеством компонентов/пространства? Вероятно, решение на основе микроконтроллера с тем же компонентом, выполняющим и другие функции. Вам нужно что-то, чтобы проиллюстрировать, как работает переключение триггеров? Воспользуйтесь каскадным решением Mark FF. Нужно что-то дешевое, не хотите программировать микроконтроллер, особенно не в полевых условиях, который просто работает? Очевидно, Тони донес до вас свое мнение.

Еще одно решение: получить эталон синхронизации от источника питания переменного тока с частотой 50 Гц или 60 Гц.
@PeterBennett Я действительно думал об этом, но передумал. При нормальной работе сети вы ожидаете ± 0,2 Гц отклонение (поскольку это средство контроля производства энергии). Это преобразуется в ошибку 400 ppm, что намного выше, чем у простого кварца. Однако, если у вас все равно будет гул 50 Гц, который вы все равно наблюдаете ... вам все равно придется реализовать 50-делитель, чтобы снизить частоту до 1 Гц. Я думаю, что это делает это решение, в эпоху дешевых кварцев, относительно устаревшим.
Один недостаток опции GPS, вы не всегда знаете, насколько она хороша. Когда он получает четкий сигнал GPS, ошибка PPS будет в области <10 нс, но без GPS она ухудшится до уровня внутренних часов, хорошего TCXO для хорошего GPS, нормальной точности кристалла для дешевого. Также при первом включении GPS будет скачок, так как часы синхронизируются со вторым. Так здорово, если у вас есть GPS, не хуже кристалла, если у вас его нет. Но без процессора вы не знаете, что это такое, и он может дать сбой, если условия изменятся.
+1 за предложение «микроконтроллер и таймер». Я могу лично поручиться за этот метод (хотя и другой микро).

Просто отметим, что CD4521 производит 1 Гц непосредственно из кварца 32768 Гц. Это, вероятно, лучший компромисс между минимальным компонентом и точностью, если только синхронизация фронта импульса (например, с UTC) не является критической.

есть лучший осциллятор для этой цели?

выполнимо с 555, но вам, вероятно, придется поэкспериментировать со значениями rc, и они могут быть не такими точными / последовательными / стабильными.

для лучшей производительности (точной/стабильной/стабильной/и т. д.) вы можете использовать цифровой счетчик либо в аппаратном, либо в аппаратном и программном обеспечении (например, микроконтроллер). довольно легко достичь точности 1% с помощью одного микроконтроллера, полагаясь на внутренний генератор.

есть микросхемы таймеров, отличные от 555 - например, линейные делают их довольно много.

Чипы RTC — еще один пример, но многие из них требуют программирования, по крайней мере, на начальном этапе.

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

Очень точный сигнал 1 Гц можно получить с модуля GPS. Не подходит для всех приложений, но для некоторых определенно может работать.

Два других способа генерировать один Гц. Не увидел среди ответов:

  1. делите частоту сети на 50 или 60.
  2. CD4060 делится на 16 384. Итак, сгенерируйте частоту 16 384. Это легко сделать с помощью стандартных R и C (см. техпаспорт). У меня работает несколько, работают нормально. Никаких дополнительных микросхем не требуется.
Интересный вопрос с тысячей ответов. Не хватает некоторых моментов: насколько точным и стабильным он должен быть? Какие ресурсы доступны и т.д.

я так много пойти с кристаллом. (A) он не нуждается в программировании. (B) не требуется модуль (экономическая выгода) и антенна (для GPS), что сделает все громоздким, если вы захотите носить его с собой. (C) точность кристалла составляет примерно от 99,8 до 99,9, если не 100%. (D) он более доступен, чем GPS. (E) это действительно послужит образовательной цели для вас, чтобы понять, как делить частоту (это неплохой бонус)