Как я могу преобразовать выходной сигнал с импульсного переключателя в импульс при нажатии и импульс при отпускании?

8

Название в значительной степени говорит обо всем.

У меня есть идея попробовать схему дифференциального усилителя и диодный мост, но я летаю вслепую.

Также я пытаюсь сделать это без микроконтроллера.

шум
источник
Между chiphacker и моими партнерами @tcmaker у меня есть куча потенциальных решений. Я смоделировал пару в SPICE и, конечно, есть некоторый потенциал, мне просто нужно посмотреть, будут ли они соответствовать моему изгибу. Спасибо всем за ответы! Я постараюсь опубликовать любые обновления о моем прогрессе.
шум
Вот одно решение, написанное моим другом, очень подробное объяснение и включает в себя схему LTSpice. uptownmaker.blogspot.com/2009/11/pulses-on-pushbutton.html
шум

Ответы:

8

Ворота XOR:

альтернативный текст

Для этого я использовал NC7SZ58 , который является дешевым ($ 0,04) и крошечным, а также имеет триггерные входы Шмитта, поэтому импульсы примерно одинаковой длины (что может быть установлено значениями RC).

эндолиты
источник
Возможно, низкочастотный RC на обоих входах, но разные постоянные времени, для устранения неполадок?
DarenW
8

Если вам нужно хорошее аналоговое решение, есть схема, которая используется симуляторами полета:

«Извините, новые пользователи не могут использовать теги изображений»
(источник: simprojects.nl )

Схема показывает расположение тумблера, но его можно легко заменить на мгновение.

Каждый раз, когда переключатель меняет положение, конденсатор должен заряжаться и разряжаться. В это время на контактах реле развивается напряжение, замыкающее переключатель. После зарядки конденсатора реле снова выключается.

Более подробная информация здесь: http://www.simprojects.nl/toggle_to_momentary.htm

Английский Дэйв
источник
2
Этот умный для использования минимального количества компонентов, только один конденсатор и реле. Недостатком является то, что реле достаточно велико, но оригинальный аскер мог бы найти меньшие или твердотельные, которые работают одинаково (может потребоваться добавление дополнительного резистора для замедления времени зарядки / разрядки конденсатора)
davr
6

В зависимости от того, сколько вы хотите инвестировать в обучение, решение «debouncing, xor, flip-flop» будет самым «базовым». 555 - отличная трасса для изучения. Вот страница, которая просматривает большое количество приложений для этого: http://www.kpsec.freeuk.com/555timer.htm

Если вы ищите «Edge-triggering» в моностабильном разделе, вы найдете то, что кажется решением, которое вы ищете.

jkopel
источник
2
Не говорите, что «все должно быть сделано в ОК», но мне нравятся 555, и у меня просто есть куча их, спасибо!
шум
6

Вы можете использовать простой xor gate, и один из входов подключен к коммутатору напрямую, а другой - через RC-цепь, которая обеспечивает задержку. Это нормально работает как «детектор краев», но не вызывает никаких сомнений - вы не просили об этом :-). Вероятно, это самый дешевый способ, если в вашем дизайне уже есть неиспользуемые ворота xor.

icabrindus
источник
5

Допускать 555, но отвергать микроконтроллер - это глупо, вы можете получить микроконтроллер в том же или меньшем корпусе, чем 555, и в качестве бонуса вы можете сделать отладку в программном обеспечении, сохранив некоторые дополнительные компоненты, которые потребуются для отладки сигнала для 555. То же самое касается D-триггера и гейта XOR ... это 2 микросхемы, которые вам нужны, в дополнение к компонентам устранения помех.

По какой причине вы хотите избежать микроконтроллера? Самые простые - 1 доллар, вероятно, намного меньше в больших количествах. Если это место, то есть 8-контактный TSSOP AVR размером 3х5 мм, довольно маленький.

Davr
источник
Я предполагаю, что мистер Шум просит нас помочь с домашним заданием, и ему не разрешено использовать очевидное решение.
SiliconFarmer
2
Основная причина в том, что я пытаюсь что-то узнать об электронике. Я уже сделал это в коде, к которому я могу прибегнуть при необходимости ... и нет, это не домашнее задание, просто скромный крутой поворот для моих собственных развлечений и назидания. Спасибо за ответ, он дает мне направление к работе.
шум
Это разумно, если вы укажете, что в будущем ваши вопросы будут лучше понимать.
Davr
2
Также небезосновательно избегать микроконтроллера из-за затрат на создание / обслуживание / тестирование кода. Это то, что пришло мне в голову как младший инженер, но я очень хорошо это понял, так как приобрел опыт. Менталитет «о, мы можем просто сделать это с помощью программного обеспечения» может иногда доставлять вам неприятности, когда вам нужно доказать, что что-то будет работать.
Джейсон С
1
Я немного озадачен тем, как использование миниатюрного компьютера и программного обеспечения для реализации простой логической функции является «очевидным решением».
Эндолит
3

Может быть способ сделать это с таймером 555, настроенным как однократный.

Один D-триггер и один XOR-гейт также сделают это. Точная логика оставлена ​​читателю в качестве упражнения.

SiliconFarmer
источник