Показать сообщение отдельно
Старый 28.12.2012, 13:48   #357
Bersenev
Бывалый писикарщик
 
Аватар для Bersenev
 
Регистрация: 23.04.2009
Возраст: 53
Город: Ставрополь
Регион: 26
Машина: Opel Zafira 2007
Сообщений: 5,275
Bersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant future
По умолчанию

Цитата:
Сообщение от folv Посмотреть сообщение
А для вращения в влево и право - не допонял эти значения

if( encoder1_dt >= 0x3C0 && encoder1_dt <= 0x3FF && encoder1_key3 != 1 )
- 3FF выдаётся когда в энкодер находится в нулевом положении, когда не нажата ни одна кнопка. Но в связи с тем что и в этом положении бывает дребезг (видно из скриншотов), то задаём некоторый диапозон задав минимальное значение 3C0
if( encoder1_dt >= 0xC3 && encoder1_dt <= 0x113 && encoder1_key3 != 2 )
if( encoder1_dt >= 0x120 && encoder1_dt <= 0x160 && encoder1_key3 != 3 )


При повороте в одну сторону у тебя происходит выдача таких значений 3FF -- F3 -- 140 -- 3FF, а в другую 3FF -- 140 --F3 -- 3FF. Отсюда и диапазон для F3 (C3 - 113), а для 140 (120 - 160). Разумеется всё в шестнадцатеричной системе

Цитата:
Сообщение от folv Посмотреть сообщение
2. Длина проводов до енкодора кретична или нет?
При тестах были метровые провода, всё работало без сбоев
Bersenev вне форума   Ответить с цитированием