Как сделать считывание перемещение потенциометра, если это вообще возможно
- Войдите на сайт для отправки комментариев
Сб, 16/07/2016 - 10:54
Здравствуйте. Подскажите если это вообще возможно, как сделать считывание перемещение потенциометра. Нужно что бы при повороте потенциометра в сторону увеличения значения, переменная назовем ее X была равна например 1. А при повороте потенциометра в сторону уменьшения значения переменная назовем ее Y была равна например 2.
Как я понимаю нужно создать условие, но какое и как не знаю. Задаю вопрос потому что все варианты какие были у меня в голове перепробыл решение не нашел. Если есть у кого какие варианты подскажите хотя бы направление поиска решения данной задачи.
analogRead()
создаешь переменную х записываешь туда и когда появляется новое значение сравниваешь со старым, если < то в одну сторону крутим, если > в другую.
Наверное выразил мысль не правильно либо не точно. Попробую объяснить задачу подробней.
Как значение считать с потенциометра и преобразовать в нужный диапазон мне известно
int inVoltage = map(analogRead(AIN_PIN), 0, 1023, 0, 180);
Задача: при повороте потенциометра в сторону увеличения значение переменной X должно быть равно 1, но в любой момент при повороте назад Y должен быть равен 2. Если опять начинаем поворачивать в сторону увеличения то X опять будет равен 1 и так постоянно. Не обязательно чтобы там было две переменных X Y можно и одну например X. Тоесть при повороте по часовой X равен 1, а против часовой X равен 0.
Тоесть нужно что бы программа отслеживала в какую сторону на данный момент происходит движение потенциометра (по часовой стрелки или против).
Если я правильно понял постановку задачи, то решение уже описал уважаемый James, я лишь разовью его мысль:
1. создаём две переменные для предыдущего и текущего значений analogRead, ну и переменную Х конечно же..
2. читаем текущее значение = analogRead()
3. проверяем, если текущее больше предыдущего, то Х = ... , если текущее меньше предыдущего, то Х = ... , если текущее равно предыдущему, то Х = ... .
4. сохраняемся, предыдущее = текущее
Всем большое спасибо. Отдельная благодарность за готовый код уважаемого qwone.
Ну как всегда - самая большая благодарность не автору, а переводчику.
Мне не жалко:)