Автор Тема: Енкодер с апаратно подтискане на дребезга  (Прочетена 7989 пъти)

Неактивен EDM electronics

  • Global Moderator
  • Много Напреднал
  • *****
  • Публикации: 5 003
  • Z - Оркестър Вагнер
Софтуерното подтискане на дребезга /претрепването на контактите и отчитане на грешни импулси/ на енкодера, прави работата му задоволителна. Такова решение за любителски цели става, но не и за профи. Отделно повечето алгоритми за отчитане на енкодара, които съм срещал също са били задоволителни, само с 5-6 реда код, като освен грешките от механичния дребезг се натрупват и грешките от простия алгоритъм, който не може да отчете всяко едно състояние на енкодера. Използването на таймери влошава работата на енкодера.

За целта направих съвсем проста схема с 74НС14, която премахва на 100% дребезка дори при висока скорост на въртене на енкодера. Направих и софт /библиотека/, по-обемен, който отчита абсолютно всички възможни състояния на енкодера - преходни и непреходни, изхвърлих софта за антидребезг с ненужните тайминги и получих перфектно работещ КИТАЙСКИ енкодер НС-11, който никога не греши, не изтърва и един импулс, а в изхода му има стръмни импулси от тригер на Шмид, не пакети шум, както при стандартното му ползване.

Екстри:
1. Скролинг - при бързо движение на енкодера над 200 мS между импулсите се включва скрол + 5, след аванс от 5 импулса. Така при въртене първоначално брой +1, а после започва скрол +5. Параметрите на скрола и аванса се настройват.
2. Бутон на енкодера с който се управляват 3 функции: 1. клик, 2. двоен клик, 3. холд - задържане. Така един бутон изпълнява функциите на 3 бутона.
3. Енкодер при натиснат холд бутон и въртене ляво-дясно - това е втори енкодер - холд енкодер, което става при натискането на бутона и задържане + въртене ляво-дясно.
« Последна редакция: Декември 16, 2021, 09:45:46 am от EDM electronics »

Неактивен valex

  • Специалист
  • Много Напреднал
  • ***
  • Публикации: 1 511
  • Пол: Мъж
  • изчислителна техника
Re: Енкодер с апаратно подтискане на дребезга
« Отговор #1 -: Декември 16, 2021, 08:33:56 am »
Поздравления!
Най-после една нормална техническа тема във форума!