Энкодер вместо кнопок

Обсуждаем контроллеры компании Atmel.
Ответить
Нашел транзистор. Понюхал.
Сообщения: 174
Зарегистрирован: Пн янв 13, 2025 15:24:02

Сообщение Вячеслав М. »

эта ваша схема полная чушь, к тому же не полная и не рабочая.
Реклама
Это не хвост, это антенна
Сообщения: 1480
Зарегистрирован: Ср июн 25, 2008 15:19:44

Сообщение Demiurg »

Особенность такой схемы. Работает по фронтам. Дребезг давится по умолчанию. Схема идеальная. Единственная особенность. Не учитываются промежуточные состояния энкодера. Полушаг или как это назвать.

Добавлено after 2 minutes 19 seconds:
Я не буду с тобой спорить. И ругаться. Этой схеме больше 15 лет. Ты даже не понял, что я вам только что дал.

Схему идеального триггера. Раз.
Схему подавления дребезга энкодера. Два.

Я хранил эту схему 15 лет. Как подавление дребезга энкодера. А как идеальный триггер почти 20 лет.

А предыстория такова:
Когда то я изучал электронику. Наступил черед цифровой, логики.
И когда я столкнулся с RS-триггером. Многие поймут о чем я говорю. У RS-триггера есть запрещённое состояние. Когда активный уровень одновременно на входах S и R. Активные уровни на обоих выходах RS-триггера. Я тогда был молод горяч и глуп. Мне было лет 15 наверное. Сидел, корпел, паял. Бросил. Наступили 90-е.
Вернулся в проблему в 2006. Все мозги сломал. Решил. Случайно. Но решил. Чуть позже я поднял тему. Составил таблицу истинности. И нашел 3 решения проблемы.

D-триггер. JK-триггер. И счётный триггер.

И я ещё тогда 20 лет назад удивился. Инженеры всего мира решали проблему RS-триггера. И обошли ее стороной. Изобретение D-триггера.

Что самое интересное. Как раз из за запрещеного состояния RS-триггера придумывалось куча схем, чтобы обойти это запрещённое состояние.

А я решил проблему которую испытывал в 15 лет. И начал решать.

Пруф? Да ради бога. По ходу профессиональной деятельности решал проблемы.

Этой истории много лет. Мне 46. В 15 лет не решил. Решил в 2006. Станок на идеальных триггерах. Отработал более 10 лет. Круглосуточно. Пока железо не сточилось и его отправили на свалку. Ну и другие наработки. Mitsubishi Alpha тому пример. Расширенное меню. С параметрами. Как пример. И да. Тоже некоторые изделия работают более 10 лет.

Добавлено after 43 minutes 15 seconds:
Весь прикол этой истории с триггерами в том, что это автоматика. Состояния. Автоматное программирование. Состояния. Не буду углубляться. Много писать. Думаю, поймёте.

Несколько лет назад общался с одним коллегой. Ему дали задание. Решить проблему с энкодерами. Вот как раз дребезг и эм помехи. Один из моих учителей. Знаете что он сказал? Проблема в том, что нужно словить все состояния энкодера. Задача на реинжиниринг 40 корпусов микросхем. Вы спросите, а почему так. Да все просто. Оборудование особо точное. И когда он об сказал. Я не сказал ему о своем изобретении. Промолчал.

Может российскому прому и поможет моя наработка....

Добавлено after 1 hour 34 minutes 46 seconds:
Вячеслав М., если ты не знал. Программное обеспечение Mitsubishi Alpha очень хороший симулятор цифровой логики.
В том числе создание D-триггера. К примеру.
Давай начнем в поисковик. Как создать D-триггер.

Добавлено after 23 minutes 13 seconds:
Смотри.
Схема D-триггера. В Mitsubishi Alpha отрабатывается на все сто.
Вложения
7474_flip_flop_circuit.png
(34.34 КБ) 161 скачивание
Контактная информация:
Реклама
Друг Кота
Аватара пользователя
Сообщения: 3487
Зарегистрирован: Вт окт 22, 2013 04:37:23
Откуда: Казань

Сообщение smacorp »

Раздражает, когда. Кто-то так. Выделывается. Вероятно он считает, что. Очень оригинален. На практике же это. Лишь приводит. К тому, что читать. Его вирши становится. Сильно труднее. Да. И выглядит глу. По.
Платы для HLDI - установки лазерной засветки фоторезиста.
Фоторезист Ordyl Alpha 350
Жидкое олово для лужения плат (видео) - самое лучшее и только у меня.
Паяльные маски XV501T-4 и KSM-S6189 (5 цветов).
Заказ печатных плат - pcbsmac@gmail.com
Мучитель микросхем
Аватара пользователя
Сообщения: 473
Зарегистрирован: Ср янв 11, 2012 18:20:26

Сообщение shonty »

Ребят, устранять дребезг для энкодеров типа Mitsubishi, FANUC и подобным конечно хорошо, но только радиолюбители сейчас сталкиваются совсем с другими задачами :)))

Я даже пробничек на коленке сваял, чтобы тактильно-визуально ощутить "работу" бюджетного энкодера.
Изображение
Энкодеры из последней партии легко позиционируются в любом положении.

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

Ну у меня это проблема относительно успешно решается, взависимости от ситуации и количества органов управления.

но борьба с дребезгом сейчас неактуальна.
:beer:
Реклама
Эиком - электронные компоненты и радиодетали
Это не хвост, это антенна
Сообщения: 1480
Зарегистрирован: Ср июн 25, 2008 15:19:44

Сообщение Demiurg »

smacorp, причем тут "выделываться"?
ТС поделился проблемой. Я чем мог помог.
Энкодер, тем более на контактах. Решать либо схемотехнихникой либо алгоритмами. Мало того. Если энкодер на контактах, тогда это ещё и схемотехника. RC-цепочка.
Контактная информация:
Реклама
Модератор
Аватара пользователя
Сообщения: 19055
Зарегистрирован: Сб авг 14, 2010 15:05:51
Откуда: г. Озерск, Челябинская обл.

Сообщение Starichok51 »

shonty писал(а):что бы "зависший" энкодер не прехватывал цикл на себя.
энкодер не бывает зависший. зависшей может быть твоя программа, если не правильно сделана.
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Реклама
Мучитель микросхем
Аватара пользователя
Сообщения: 473
Зарегистрирован: Ср янв 11, 2012 18:20:26

Сообщение shonty »

Starichok51 писал(а):энкодер не бывает зависший
тебе как всегда лучше знать :)))

Изображение

Добавлено after 5 minutes 11 seconds:
shonty писал(а):"зависший"
в кавычках написано если что. А тебе только доебаца :)))
Нашел транзистор. Понюхал.
Сообщения: 174
Зарегистрирован: Пн янв 13, 2025 15:24:02

Сообщение Вячеслав М. »

Есть алгоритм. Вот два входа с энкодера пусть будет левый и правый, при переходе из 0 в 1 левого то это плюс, из 1 в 0 то минус, правого наоборот: из 1 в 0 плюс а из 0 в 1 то это минус. Это отличный алгоритм, я его как то применил чтобы позицию тележки, на каком посту находится обозначал, потом правда счётчик на два поделил, не трудно заметить что он умножает на два, вот я и поделил - вернул назад когда чётное число, хотя тут этоне важно, можно и не делить.
Последний раз редактировалось Вячеслав М. Пн мар 10, 2025 10:55:47, всего редактировалось 1 раз.
Мучитель микросхем
Аватара пользователя
Сообщения: 473
Зарегистрирован: Ср янв 11, 2012 18:20:26

Сообщение shonty »

А ещё у shonty есть алгоритм обработки энкодеров в "подвисшем" состоянии. Но про этот алгоритм пусть старичок рассказывает :)))
У него лучше получается.
Модератор
Аватара пользователя
Сообщения: 19055
Зарегистрирован: Сб авг 14, 2010 15:05:51
Откуда: г. Озерск, Челябинская обл.

Сообщение Starichok51 »

shonty писал(а):А ещё у shonty есть алгоритм обработки энкодеров в "подвисшем" состоянии. Но про этот алгоритм пусть старичок рассказывает
как я могу рассказать про алгоритм. который есть у тебя? сам про свой алгоритм и рассказывай.
а для меня ни у кнопок ни у энкодера дребезга не существует.
пришло время опросить - опросил. есть изменение состояния - обработал изменение. нет изменения - ничего не делаю.
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Мучитель микросхем
Аватара пользователя
Сообщения: 473
Зарегистрирован: Ср янв 11, 2012 18:20:26

Сообщение shonty »

Starichok51 писал(а):а для меня ни у кнопок ни у энкодера дребезга не существует.
Starichok51, ты опять про дребезг..
Я не являюсь адептом антидребезга, это не ко мне :)))

Я сделал фото, скомпоновал их в одно и опубликовал аж два раза) вроде ситуация весьма наглядно обрисована.
Там вообще не о дребезге речь))
Модератор
Аватара пользователя
Сообщения: 19055
Зарегистрирован: Сб авг 14, 2010 15:05:51
Откуда: г. Озерск, Челябинская обл.

Сообщение Starichok51 »

я, как раз, про антидребезг, которым тут все усиленно занимаются.
и если я сказал, что для меня дребезг не существует, это означает, что я и антидребезгом не занимаюсь.
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Мучитель микросхем
Аватара пользователя
Сообщения: 473
Зарегистрирован: Ср янв 11, 2012 18:20:26

Сообщение shonty »

Да какой же это дребезг:
Изображение

это не возврат в исходное положение.
Модератор
Аватара пользователя
Сообщения: 19055
Зарегистрирован: Сб авг 14, 2010 15:05:51
Откуда: г. Озерск, Челябинская обл.

Сообщение Starichok51 »

я тоже могу поймать промежуточное состояние, когда оба контакта замкнуты. но мне это не надо. а тебе зачем это понадобилось?
мне не составляет проблему сделать полный "щелчок" и установить в положении фиксации.
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Мучитель микросхем
Аватара пользователя
Сообщения: 473
Зарегистрирован: Ср янв 11, 2012 18:20:26

Сообщение shonty »

Starichok51 писал(а):мне не составляет проблему сделать полный "щелчок" и установить в положении фиксации.
качество энкодеров последней партии неочень. Подвисают в крайних положениях, не чётко устанавливаются, и один из каналов замкнутым остаётся. Иной раз нейтральное положение подлавливать приходится.

Скоро другая партия должна придти, посмотрю как они.
Это не хвост, это антенна
Сообщения: 1480
Зарегистрирован: Ср июн 25, 2008 15:19:44

Сообщение Demiurg »

Есть нюанс, о котором вы все забыли. Ручку энкодера можно крутить медленно и быстро.
Слушаю ваши соображения....

Если программно, я энкодеры опрашивал в прерываниях. Используя таблицы состояний энкодера.

В любом случае, это конечный автомат. Как бы этого кому либо не хотелось.... Опрос энкодера только конечный автомат.
Контактная информация:
Мучитель микросхем
Аватара пользователя
Сообщения: 473
Зарегистрирован: Ср янв 11, 2012 18:20:26

Сообщение shonty »

У меня пока мысль такая: при опросе реагировать только когда сразу оба канала замкнуты. В таком положении энкодер гораздо реже останавливается.

Сделал часы+таймер на кухню с двумя энкодерами.. бывает, что второй не реагирует, пока первый не поправишь :dont_know:
СпойлерИзображение
Добавлено after 2 minutes 22 seconds:
Но сначала дождусь новую партию. С предыдущими энкодерами такого не было :dont_know:

Добавлено after 21 minute 6 seconds:
Да.. так и сделаю скорее всего:
1. В цикле регистрирую когда оба канала замкнуты
2. Перехожу в обработку, жду когда один из каналов разомкнётся - тогда и определяется направление право/лево..
И тогда мне уже всё равно разомкнулся второй канал или замкнутым остался.
Это не хвост, это антенна
Сообщения: 1480
Зарегистрирован: Ср июн 25, 2008 15:19:44

Сообщение Demiurg »

Чтобы ты понимал. Нужен подход. Сущности. Как писать программу..
Новичкам, начинающим это трудно понять. Я сам был новичком, начинающим. Чего уж тут... Все через это прошли.

Тебе нужно осознать одну вещь. Процессы, задачи они псевдопараллельны. Крутятся так быстро, что кажется, что они выполняются одновременно. Пример. Windows.

Да. Это так. Поэтому. Ты разбиваешь задачи, процессы на этапы.

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

Нужно избавиться от закольцованных циклов. Проверка. Вышли. Понимаете?
Контактная информация:
Мучитель микросхем
Аватара пользователя
Сообщения: 473
Зарегистрирован: Ср янв 11, 2012 18:20:26

Сообщение shonty »

Demiurg писал(а):Нужно избавиться от закольцованных циклов. Проверка. Вышли. Понимаете?
с этим согласен
Нашел транзистор. Понюхал.
Сообщения: 174
Зарегистрирован: Пн янв 13, 2025 15:24:02

Сообщение Вячеслав М. »

Только энкодера мало, нужна ещё кнопка Esc, если энкодер имеет Enter, влево - вправо, или вверх вниз, взависимости от того куда Enter нажал, то вот Esc и всё, этого хватит по менюшкам бегать.
Ответить

Вернуться в «AVR»