Разработка, производство и продажа радиоэлектронной аппаратуры
|
Карта сайта
|
Пишите нам
|
В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:
jobsmp@pochta.ru
Телесистемы
|
Электроника
|
Конференция «Микроконтроллеры и их применение»
Чего-то я не понимаю код, который насоветовал :)
Отправлено
Oldring
17 сентября 2008 г. 12:34
В ответ на:
По совету Oldring добавил в обработку энкодера гистерезис. Теперь работает вообще как зверь :)))
отправлено Леонид Иванович 16 сентября 2008 г. 23:12
Во-первых, последовательность операторов
EncPpe = EncPre; //предыдущее состояние
EncPre = EncNew; //новое состояние
очень интересна.
Составить ответ
|
Вернуться на конференцию
Ответы
Предыдущее состояние делаем пред-предыдущим, а текущее - предыдущим.
-
Леонид Иванович
(17.09.2008 13:57:3
87.252.227.56
,
пустое
)
Не путай EncP
p
e с EncP
r
e
-
MBedder
(17.09.2008 13:19:48
80.92.96.19
,
пустое
)
А вот это? enum { ES0, ES1, ES3, ES2 }; //encoder sequential states( 0,1,2,3 )
-
Quasy
(17.09.2008 13:25:52
192.168.0.207,80.243.9.34
,
пустое
)
0, 1, 3, 2 - именно в такой последовательности меняются коды при вращении.
-
Леонид Иванович
(17.09.2008 13:55:7
87.252.227.56
,
пустое
)
Супер! Наглядный пример того, как не надо выбирать идентификаторы :)
-
Oldring
(17.09.2008 13:23:57
91.76.18.148
,
пустое
)
Я тоже сначала удивился, но при повторном прочтении понял, и правильно ассоциировал ppre с предпредыдущим, как в каментах
-
MBedder
(17.09.2008 14:00:14
80.92.96.19
,
пустое
)
Ну а я уваидев большое количество камментов расслабился :)
-
Oldring
(17.09.2008 14:22:23
91.76.18.148
,
пустое
)
Особенно для русскоговорящих :)
-
Oldring
(17.09.2008 13:25:1
91.76.18.148
,
пустое
)
Есть у меня такая беда, лень набирать длинные имена функций и переменных :)
-
Леонид Иванович
(17.09.2008 13:55:52
87.252.227.56
,
пустое
)
Это инициализация, только раз при включении.
-
БомжСРаботы
(17.09.2008 12:43:12
,84.147.146.216
,
пустое
)
Читать программы я вроде бы умею :) Это - основная функуция обработки энкодера.
-
Oldring
(17.09.2008 12:47:4
91.76.18.148
,
пустое
)
Вроде все четко(+)
-
Quasy
(17.09.2008 12:58:5
192.168.0.207,80.243.9.34
, 574 байт)
Именно так.
-
Леонид Иванович
(17.09.2008 13:57:50
87.252.227.56
,
пустое
)
Кто нибудь если не в лом, попробуйте код. (+)
-
Quasy
(17.09.2008 14:16:16
192.168.0.207,80.243.9.34
, 3433 байт)
Проверил. Периодически пропускаются шаги.
-
Леонид Иванович
(17.09.2008 15:36:47
87.252.227.56
,
пустое
)
Угу. Благдарю...
-
Quasy
(17.09.2008 15:45:26
192.168.0.207,80.243.9.34
,
пустое
)
Более детально разобрался с Вашим вариантом.
-
Леонид Иванович
(17.09.2008 17:54:12
87.252.227.56
, 338 байт)
Другими словами, слишком жесткое условие - требовать правильной последовательности из 4-х состояний.
-
Леонид Иванович
(17.09.2008 18:19:10
87.252.227.56
,
пустое
)
К тому же очевидно что после этой последовательности ни одно условие не выполнится никогда.
-
Oldring
(17.09.2008 12:37:30
91.76.18.148
,
пустое
)
Отправка ответа
Имя*:
Пароль:
E-mail:
Тема*:
Сообщение:
Ссылка на URL:
URL изображения:
если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
при вычитании трёх из шести получится:
Перейти к списку ответов
|
Конференция
|
Раздел "Электроника"
|
Главная страница
|
Карта сайта
Web
telesys.ru