Подавление дребезга с помощью K561TM3

AndAsh
Offline
Зарегистрирован: 15.02.2019

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

Green
Offline
Зарегистрирован: 01.10.2015

Зачем этот огород, если всё делается программно.

AndAsh
Offline
Зарегистрирован: 15.02.2019

Программно не подходит.

rkit
Offline
Зарегистрирован: 23.11.2016

Никак. Эта мс не для этого совсем. И никто в здравом уме не ставит МС там где достаточно конденсатора.

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

А она в девичестве была CD4042 или CD4043?

Если последняя, то схема подавления дребезга приведена на рисунке 12 даташита.

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011

RS trigger конечно вполне подходит
для подавления дребезга.
Особенно если нужно мгновенное срабатывание
по первому же замыканию (размыканию)
Но цена этого - кнопка с перекидывающимся контактом.

AndAsh
Offline
Зарегистрирован: 15.02.2019

Да, это CD4043. Вот только я не понимаю как ее к ардуино подключить. Можете прокомментировать рисунок?

AndAsh
Offline
Зарегистрирован: 15.02.2019

И что такое кнопка с перекидывающимся контактом?

sadman41
Offline
Зарегистрирован: 19.10.2016

trembo пишет:
RS trigger конечно вполне подходит для подавления дребезга. Особенно если нужно мгновенное срабатывание по первому же замыканию (размыканию)

Хочу уточнить - насколько мгновенное? Миллисекунды, микросекунды... ?

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011

В паспорте написано 150 типикал (300 максимум) наносекунд при 5 Вольтах питания.

sadman41
Offline
Зарегистрирован: 19.10.2016

Оно действительно так давит? В энторнетах пишут, что 5-10 мс - это минимум на программное подавление. Тут вообще 50ms:  https://www.arduino.cc/en/tutorial/debounce

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

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

AndAsh пишет:

И что такое кнопка с перекидывающимся контактом?

Самая простая кнопка (SPST) имеет два контакта и может их замкнуть или разомкнуть.

Здесь же нужна кнопка SPDT - у неё три контакта. Общий и два коммутируемых и она в одном положении замыкает общий с одним коммутируемым, а в другом - с другим.

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

AndAsh пишет:

Да, это CD4043. Вот только я не понимаю как ее к ардуино подключить. Можете прокомментировать рисунок?

Туда где на рисунке Gnd, присоединяете GND, туда где Vdd - питание Вашей ардуины, а выход, возле которого написано OUTPUT, заводите на пин с которого будете читать состояние кнопки.

SLKH
Offline
Зарегистрирован: 17.08.2015

ЕвгенийП пишет:

А она в девичестве была CD4042 или CD4043?

Если последняя, то схема подавления дребезга приведена на рисунке 12 даташита.

она в девичестве 4042, указанная схема к ней не подходит.

Да и вообще тм3 как-то не подходит для заявленной функции.

 

===========
Добавлено: хотя при перекидных кнопках можно и с 561тм3 извратиться. но лн3 предпочтительнее.

SLKH
Offline
Зарегистрирован: 17.08.2015

AndAsh пишет:

Да, это CD4043. Вот только я не понимаю как ее к ардуино подключить. Можете прокомментировать рисунок?

4043 - это 561ТР2, а не ТМ3.

SLKH
Offline
Зарегистрирован: 17.08.2015

AndAsh пишет:

И что такое кнопка с перекидывающимся контактом?

после объяснения в #11 вопрос: у тебя какие кнопки?

rkit
Offline
Зарегистрирован: 23.11.2016

На кнопке с перекидывающимся контактом вход ардуино и без всяких мс не будет испытывать проблем с отскоком.

AndAsh
Offline
Зарегистрирован: 15.02.2019

Сейчас кнопки обычные, без фиксации. Но если надо - заменю. Нашел вот такую схему:

Тут вроде кнопки обычные, не фиксируемые, подтянуты к питанию. Я так понимаю что при нажатии подается 0 на вход микросхемы, а вот что уходит на порт ардуино?

svm
Offline
Зарегистрирован: 06.11.2016

AndAsh пишет:

Сейчас кнопки обычные, без фиксации. Но если надо - заменю. Нашел вот такую схему:

Тут вроде кнопки обычные, не фиксируемые, подтянуты к питанию. Я так понимаю что при нажатии подается 0 на вход микросхемы, а вот что уходит на порт ардуино?

При нажатии любой из кнопок (в момент замыкания на землю) , на соответствующий ей выход выдается "0". При отпускании (во время пролета контактов выдается "1" и в момент замыкания на "+" данные фиксируются) . Обычная старая схема антидребезга.

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

SLKH пишет:
она в девичестве 4042, указанная схема к ней не подходит.
Ну, тогда ясень пень - не подходит. Я потому и спросил, что не был уверен. что это за чип.

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011

sadman41 пишет:

Оно действительно так давит? В энторнетах пишут, что 5-10 мс - это минимум на программное подавление. Тут вообще 50ms:  https://www.arduino.cc/en/tutorial/debounce

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


RS trigger ничего не давит.
Он просто переключается.
Это схема на двух элементах 2и-не или 2 или-не с перекрёстным связями.
Он имеет два устойчивых состояния и переходит из одного в другое
подачей сигналов Reset и Set.
При этом одновременная их подача запрещена.
Переключается "мгновенно" получив сигнал.
https://digteh.ru/digital/RS_trigg.php

SLKH
Offline
Зарегистрирован: 17.08.2015

rkit пишет:

На кнопке с перекидывающимся контактом вход ардуино и без всяких мс не будет испытывать проблем с отскоком.


Да, по 2 входных пина с подтяжкой на кнопку (программная имитация rs-триггера) и никакой дребезг не пройдет.

sadman41
Offline
Зарегистрирован: 19.10.2016

trembo пишет:
Он имеет два устойчивых состояния и переходит из одного в другое подачей сигналов Reset и Set.

А, я понял принцип - он просто "защёлкивается" при первом же контакте с одним из входов, игнорируя последующий дребезг. 

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

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011

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

sadman41
Offline
Зарегистрирован: 19.10.2016

trembo пишет:
Не могу даже представить что при переключении подвижный контакт сможет отпрыгнуть назад до замыкания противоположного.

Нервный тремор напряженной руки оператора кнопки, например ))

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011

А по поводу RS триггера реальная история из жизни:

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

Что-то типа интервью, начальник отдела достаёт схемы оборудования,
тогда они назывались "синьки" - копии на  бледно-сине-фиолетового цвета бумаге
на которой в принципе можно было что-то разглядеть.

Разматывает рулон, тыркает в схему пальцем и спрашивает:
Это что такое?
Я отвечаю: RS триггер.
Он : Приняты.......

Всё

Green
Offline
Зарегистрирован: 01.10.2015

Эффектно.)
У меня была схема с общим эмиттером.))

Клапауций 12345
Offline
Зарегистрирован: 17.05.2020

а, зачем это всё?, если при аппаратной кнопке с тремя контактами триггер можно реализовать программно.
скорость срабатывания ограничена исключительно механикой кнопки...

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Клапауций 12345 пишет:
а, зачем это всё?, если при аппаратной кнопке с тремя контактами триггер можно реализовать программно.

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

Кстати, лисапет такие кнопки поддерживает?

SLKH
Offline
Зарегистрирован: 17.08.2015

svm пишет:

AndAsh пишет:

Сейчас кнопки обычные, без фиксации. Но если надо - заменю. Нашел вот такую схему:

Тут вроде кнопки обычные, не фиксируемые, подтянуты к питанию. Я так понимаю что при нажатии подается 0 на вход микросхемы, а вот что уходит на порт ардуино?

При нажатии любой из кнопок (в момент замыкания на землю) , на соответствующий ей выход выдается "0". При отпускании (во время пролета контактов выдается "1" и в момент замыкания на "+" данные фиксируются) . Обычная старая схема антидребезга.


У тя нет впечатления, что контакт С2 нужно на "+" перекинуть?

svm
Offline
Зарегистрирован: 06.11.2016

SLKH пишет:
svm пишет:

AndAsh пишет:

Сейчас кнопки обычные, без фиксации. Но если надо - заменю. Нашел вот такую схему:

Тут вроде кнопки обычные, не фиксируемые, подтянуты к питанию. Я так понимаю что при нажатии подается 0 на вход микросхемы, а вот что уходит на порт ардуино?

При нажатии любой из кнопок (в момент замыкания на землю) , на соответствующий ей выход выдается "0". При отпускании (во время пролета контактов выдается "1" и в момент замыкания на "+" данные фиксируются) . Обычная старая схема антидребезга.

У тя нет впечатления, что контакт С2 нужно на "+" перекинуть?

Ввели в сомнение. Особенно насчет того, что контакты замыкаются на "+". Они сидят на "+" только в момент пролета контактов и этот "+" фиксируется в момент отрыва С1 от земли. А при любой нажатой кнопке получается, что никакого антидребезга и нет. Если на С2 подать "+" то изменится момент фиксации, он будет происходить при нажатии кнопки. А при всех отпущенных МС будет просто пропускать  входные уровни на выход, т.е. антидребезг отключится. И ситуация будет еще хуже. Короче схема-хрень. 

SLKH
Offline
Зарегистрирован: 17.08.2015

svm пишет:

SLKH пишет:
svm пишет:

AndAsh пишет:

Сейчас кнопки обычные, без фиксации. Но если надо - заменю. Нашел вот такую схему:

Тут вроде кнопки обычные, не фиксируемые, подтянуты к питанию. Я так понимаю что при нажатии подается 0 на вход микросхемы, а вот что уходит на порт ардуино?

При нажатии любой из кнопок (в момент замыкания на землю) , на соответствующий ей выход выдается "0". При отпускании (во время пролета контактов выдается "1" и в момент замыкания на "+" данные фиксируются) . Обычная старая схема антидребезга.

У тя нет впечатления, что контакт С2 нужно на "+" перекинуть?

Ввели в сомнение. Особенно насчет того, что контакты замыкаются на "+". Они сидят на "+" только в момент пролета контактов и этот "+" фиксируется в момент отрыва С1 от земли. А при любой нажатой кнопке получается, что никакого антидребезга и нет. Если на С2 подать "+" то изменится момент фиксации, он будет происходить при нажатии кнопки. А при всех отпущенных МС будет просто пропускать  входные уровни на выход, т.е. антидребезг отключится. И ситуация будет еще хуже. Короче схема-хрень. 

меня тоже "терзают смутные сомненья". 

Sonologist
Sonologist аватар
Offline
Зарегистрирован: 08.06.2018

Наткнулся на эту ветку. Вознк вопрос: не совсем понял, почему в качестве антидребезга использован D-триггер? Если взять триггер Шмита (74HC14), то все упростится:

1. Одна микросхема имеет целых 6 триггеров.

2. Можно не искать переключаюшие кнопки, а пользоваться обычными, тактовыми на два контакта.

Входы триггеров подтягиваем к (+)питания резистором. Кнопкой замыкаем на "землю". Кнопку шунтируем кондкнсатором (достаточно 0,01 мкф). На выходе триггера  никакого дребезга. Проверено на собственном опыте.

sadman41
Offline
Зарегистрирован: 19.10.2016

Поговаривают, что в 328 Шмитт интегрирован. Поэтому масло на масло мазать смысла особого нет.

SLKH
Offline
Зарегистрирован: 17.08.2015

sadman41 пишет:
Поговаривают, что в 328 Шмитт интегрирован. Поэтому масло на масло мазать смысла особого нет.
Вспомни картинки от Dimax'а в теме про энкодеры.

Sonologist
Sonologist аватар
Offline
Зарегистрирован: 08.06.2018

sadman41 пишет:
Поговаривают, что в 328 Шмитт интегрирован. Поэтому масло на масло мазать смысла особого нет.

Я слышал об этом. Вот только просто с шунтирующими кондёрами у меня кнопки срабатывали нечетко. Ничем, нежели дребезгом, объяснить это не могу. Поставил между кнопкой и ардуиной (мега) триггер - всё как рукой сняло. Возможно, это имеет какое-то другое объяснение. Было бы любопытно послушать (посмотреть, прочесть).

SLKH
Offline
Зарегистрирован: 17.08.2015

Sonologist пишет:

sadman41 пишет:
Поговаривают, что в 328 Шмитт интегрирован. Поэтому масло на масло мазать смысла особого нет.

Я слышал об этом. Вот только просто с шунтирующими кондёрами у меня кнопки срабатывали нечетко. Ничем, нежели дребезгом, объяснить это не могу. Поставил между кнопкой и ардуиной (мега) триггер - всё как рукой сняло. Возможно, это имеет какое-то другое объяснение. Было бы любопытно послушать (посмотреть, прочесть).

у 74HC14 и 328 разные уровни срабатывания по входу, причем у первого гистерезис в полтора раза больше.

anatoli_nik
Offline
Зарегистрирован: 17.01.2019

Так поставить емкость в полтора раза больше....